java -ea -Xmx8000000000 -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc ../../../trunk/examples/toolchains/AutomizerC.xml -s ../../../trunk/examples/settings/default/automizer/svcomp-Reach-32bit-Automizer_Default-Const.epf -i ../../../trunk/examples/svcomp/reducercommutativity/avg20_true-unreach-call.i -------------------------------------------------------------------------------- This is Ultimate 0.1.23-370d6ab [2018-11-14 18:49:44,768 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-11-14 18:49:44,774 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-11-14 18:49:44,788 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-11-14 18:49:44,789 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-11-14 18:49:44,790 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-11-14 18:49:44,791 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-11-14 18:49:44,793 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-11-14 18:49:44,795 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-11-14 18:49:44,795 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-11-14 18:49:44,796 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-11-14 18:49:44,797 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-11-14 18:49:44,798 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-11-14 18:49:44,799 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-11-14 18:49:44,801 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2018-11-14 18:49:44,802 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-11-14 18:49:44,804 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-11-14 18:49:44,809 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-11-14 18:49:44,813 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-11-14 18:49:44,817 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-11-14 18:49:44,818 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-11-14 18:49:44,820 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-11-14 18:49:44,828 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-11-14 18:49:44,828 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-11-14 18:49:44,828 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2018-11-14 18:49:44,829 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-11-14 18:49:44,830 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-11-14 18:49:44,831 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2018-11-14 18:49:44,832 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-11-14 18:49:44,833 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-11-14 18:49:44,833 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-11-14 18:49:44,834 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-11-14 18:49:44,834 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2018-11-14 18:49:44,834 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2018-11-14 18:49:44,835 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-11-14 18:49:44,836 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-11-14 18:49:44,836 INFO L98 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/default/automizer/svcomp-Reach-32bit-Automizer_Default-Const.epf [2018-11-14 18:49:44,859 INFO L110 SettingsManager]: Loading preferences was successful [2018-11-14 18:49:44,859 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-11-14 18:49:44,860 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2018-11-14 18:49:44,860 INFO L133 SettingsManager]: * to procedures, called more than once=true [2018-11-14 18:49:44,861 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2018-11-14 18:49:44,861 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2018-11-14 18:49:44,861 INFO L133 SettingsManager]: * Use SBE=true [2018-11-14 18:49:44,862 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-11-14 18:49:44,862 INFO L133 SettingsManager]: * sizeof long=4 [2018-11-14 18:49:44,862 INFO L133 SettingsManager]: * Overapproximate operations on floating types=true [2018-11-14 18:49:44,862 INFO L133 SettingsManager]: * sizeof POINTER=4 [2018-11-14 18:49:44,862 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-11-14 18:49:44,863 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2018-11-14 18:49:44,863 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2018-11-14 18:49:44,863 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2018-11-14 18:49:44,863 INFO L133 SettingsManager]: * sizeof long double=12 [2018-11-14 18:49:44,863 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2018-11-14 18:49:44,864 INFO L133 SettingsManager]: * Use constant arrays=true [2018-11-14 18:49:44,864 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2018-11-14 18:49:44,864 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-11-14 18:49:44,864 INFO L133 SettingsManager]: * Size of a code block=SequenceOfStatements [2018-11-14 18:49:44,864 INFO L133 SettingsManager]: * To the following directory=./dump/ [2018-11-14 18:49:44,865 INFO L133 SettingsManager]: * SMT solver=External_DefaultMode [2018-11-14 18:49:44,865 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2018-11-14 18:49:44,865 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-11-14 18:49:44,865 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2018-11-14 18:49:44,865 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2018-11-14 18:49:44,866 INFO L133 SettingsManager]: * Trace refinement strategy=CAMEL [2018-11-14 18:49:44,866 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2018-11-14 18:49:44,866 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2018-11-14 18:49:44,866 INFO L133 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2018-11-14 18:49:44,920 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-11-14 18:49:44,939 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2018-11-14 18:49:44,942 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2018-11-14 18:49:44,943 INFO L271 PluginConnector]: Initializing CDTParser... [2018-11-14 18:49:44,944 INFO L276 PluginConnector]: CDTParser initialized [2018-11-14 18:49:44,944 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/reducercommutativity/avg20_true-unreach-call.i [2018-11-14 18:49:44,998 INFO L218 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/33fd36465/f03ff2fdd68e4d6dae0bbe7e9941654f/FLAGc8a6242cb [2018-11-14 18:49:45,475 INFO L298 CDTParser]: Found 1 translation units. [2018-11-14 18:49:45,476 INFO L158 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/reducercommutativity/avg20_true-unreach-call.i [2018-11-14 18:49:45,482 INFO L346 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/33fd36465/f03ff2fdd68e4d6dae0bbe7e9941654f/FLAGc8a6242cb [2018-11-14 18:49:45,497 INFO L354 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/33fd36465/f03ff2fdd68e4d6dae0bbe7e9941654f [2018-11-14 18:49:45,506 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-11-14 18:49:45,508 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2018-11-14 18:49:45,509 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-11-14 18:49:45,509 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-11-14 18:49:45,513 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-11-14 18:49:45,515 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.11 06:49:45" (1/1) ... [2018-11-14 18:49:45,518 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@4111f80c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 06:49:45, skipping insertion in model container [2018-11-14 18:49:45,518 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.11 06:49:45" (1/1) ... [2018-11-14 18:49:45,529 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2018-11-14 18:49:45,554 INFO L176 MainTranslator]: Built tables and reachable declarations [2018-11-14 18:49:45,786 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-14 18:49:45,801 INFO L191 MainTranslator]: Completed pre-run [2018-11-14 18:49:45,833 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-14 18:49:45,855 INFO L195 MainTranslator]: Completed translation [2018-11-14 18:49:45,856 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 06:49:45 WrapperNode [2018-11-14 18:49:45,856 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-11-14 18:49:45,857 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-11-14 18:49:45,857 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-11-14 18:49:45,857 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-11-14 18:49:45,872 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 06:49:45" (1/1) ... [2018-11-14 18:49:45,872 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 06:49:45" (1/1) ... [2018-11-14 18:49:45,881 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 06:49:45" (1/1) ... [2018-11-14 18:49:45,881 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 06:49:45" (1/1) ... [2018-11-14 18:49:45,895 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 06:49:45" (1/1) ... [2018-11-14 18:49:45,902 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 06:49:45" (1/1) ... [2018-11-14 18:49:45,903 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 06:49:45" (1/1) ... [2018-11-14 18:49:45,906 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-11-14 18:49:45,907 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-11-14 18:49:45,907 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-11-14 18:49:45,907 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-11-14 18:49:45,908 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 06:49:45" (1/1) ... No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2018-11-14 18:49:46,039 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2018-11-14 18:49:46,039 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-11-14 18:49:46,039 INFO L138 BoogieDeclarations]: Found implementation of procedure avg [2018-11-14 18:49:46,039 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2018-11-14 18:49:46,039 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_error [2018-11-14 18:49:46,039 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2018-11-14 18:49:46,040 INFO L130 BoogieDeclarations]: Found specification of procedure avg [2018-11-14 18:49:46,040 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2018-11-14 18:49:46,040 INFO L130 BoogieDeclarations]: Found specification of procedure main [2018-11-14 18:49:46,040 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.alloc [2018-11-14 18:49:46,040 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2018-11-14 18:49:46,040 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2018-11-14 18:49:46,041 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2018-11-14 18:49:46,041 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-11-14 18:49:46,041 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int [2018-11-14 18:49:46,805 INFO L278 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-11-14 18:49:46,806 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 14.11 06:49:46 BoogieIcfgContainer [2018-11-14 18:49:46,807 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-11-14 18:49:46,808 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2018-11-14 18:49:46,809 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2018-11-14 18:49:46,812 INFO L276 PluginConnector]: TraceAbstraction initialized [2018-11-14 18:49:46,813 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 14.11 06:49:45" (1/3) ... [2018-11-14 18:49:46,814 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@81deec6 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 14.11 06:49:46, skipping insertion in model container [2018-11-14 18:49:46,815 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 06:49:45" (2/3) ... [2018-11-14 18:49:46,815 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@81deec6 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 14.11 06:49:46, skipping insertion in model container [2018-11-14 18:49:46,815 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 14.11 06:49:46" (3/3) ... [2018-11-14 18:49:46,818 INFO L112 eAbstractionObserver]: Analyzing ICFG avg20_true-unreach-call.i [2018-11-14 18:49:46,828 INFO L136 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2018-11-14 18:49:46,837 INFO L148 ceAbstractionStarter]: Appying trace abstraction to program that has 1 error locations. [2018-11-14 18:49:46,857 INFO L257 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2018-11-14 18:49:46,906 INFO L133 ementStrategyFactory]: Using default assertion order modulation [2018-11-14 18:49:46,907 INFO L382 AbstractCegarLoop]: Interprodecural is true [2018-11-14 18:49:46,907 INFO L383 AbstractCegarLoop]: Hoare is true [2018-11-14 18:49:46,907 INFO L384 AbstractCegarLoop]: Compute interpolants for FPandBP [2018-11-14 18:49:46,908 INFO L385 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2018-11-14 18:49:46,908 INFO L386 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2018-11-14 18:49:46,908 INFO L387 AbstractCegarLoop]: Difference is false [2018-11-14 18:49:46,909 INFO L388 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2018-11-14 18:49:46,909 INFO L393 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2018-11-14 18:49:46,934 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states. [2018-11-14 18:49:46,943 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 33 [2018-11-14 18:49:46,944 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:49:46,945 INFO L375 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:49:46,948 INFO L423 AbstractCegarLoop]: === Iteration 1 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:49:46,958 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:49:46,958 INFO L82 PathProgramCache]: Analyzing trace with hash -1401494287, now seen corresponding path program 1 times [2018-11-14 18:49:46,961 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:49:46,961 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:49:47,005 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:49:47,005 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 18:49:47,005 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:49:47,042 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:49:47,127 INFO L256 TraceCheckUtils]: 0: Hoare triple {37#true} call ULTIMATE.init(); {37#true} is VALID [2018-11-14 18:49:47,132 INFO L273 TraceCheckUtils]: 1: Hoare triple {37#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {37#true} is VALID [2018-11-14 18:49:47,132 INFO L273 TraceCheckUtils]: 2: Hoare triple {37#true} assume true; {37#true} is VALID [2018-11-14 18:49:47,133 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {37#true} {37#true} #69#return; {37#true} is VALID [2018-11-14 18:49:47,133 INFO L256 TraceCheckUtils]: 4: Hoare triple {37#true} call #t~ret12 := main(); {37#true} is VALID [2018-11-14 18:49:47,134 INFO L273 TraceCheckUtils]: 5: Hoare triple {37#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {37#true} is VALID [2018-11-14 18:49:47,147 INFO L273 TraceCheckUtils]: 6: Hoare triple {37#true} assume !true; {38#false} is VALID [2018-11-14 18:49:47,147 INFO L256 TraceCheckUtils]: 7: Hoare triple {38#false} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {37#true} is VALID [2018-11-14 18:49:47,148 INFO L273 TraceCheckUtils]: 8: Hoare triple {37#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {37#true} is VALID [2018-11-14 18:49:47,148 INFO L273 TraceCheckUtils]: 9: Hoare triple {37#true} assume !true; {37#true} is VALID [2018-11-14 18:49:47,149 INFO L273 TraceCheckUtils]: 10: Hoare triple {37#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {37#true} is VALID [2018-11-14 18:49:47,149 INFO L273 TraceCheckUtils]: 11: Hoare triple {37#true} assume true; {37#true} is VALID [2018-11-14 18:49:47,150 INFO L268 TraceCheckUtils]: 12: Hoare quadruple {37#true} {38#false} #73#return; {38#false} is VALID [2018-11-14 18:49:47,150 INFO L273 TraceCheckUtils]: 13: Hoare triple {38#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {38#false} is VALID [2018-11-14 18:49:47,150 INFO L256 TraceCheckUtils]: 14: Hoare triple {38#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {37#true} is VALID [2018-11-14 18:49:47,151 INFO L273 TraceCheckUtils]: 15: Hoare triple {37#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {37#true} is VALID [2018-11-14 18:49:47,151 INFO L273 TraceCheckUtils]: 16: Hoare triple {37#true} assume !true; {37#true} is VALID [2018-11-14 18:49:47,151 INFO L273 TraceCheckUtils]: 17: Hoare triple {37#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {37#true} is VALID [2018-11-14 18:49:47,152 INFO L273 TraceCheckUtils]: 18: Hoare triple {37#true} assume true; {37#true} is VALID [2018-11-14 18:49:47,152 INFO L268 TraceCheckUtils]: 19: Hoare quadruple {37#true} {38#false} #75#return; {38#false} is VALID [2018-11-14 18:49:47,153 INFO L273 TraceCheckUtils]: 20: Hoare triple {38#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {38#false} is VALID [2018-11-14 18:49:47,153 INFO L273 TraceCheckUtils]: 21: Hoare triple {38#false} assume !true; {38#false} is VALID [2018-11-14 18:49:47,154 INFO L273 TraceCheckUtils]: 22: Hoare triple {38#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {38#false} is VALID [2018-11-14 18:49:47,154 INFO L256 TraceCheckUtils]: 23: Hoare triple {38#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {37#true} is VALID [2018-11-14 18:49:47,154 INFO L273 TraceCheckUtils]: 24: Hoare triple {37#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {37#true} is VALID [2018-11-14 18:49:47,155 INFO L273 TraceCheckUtils]: 25: Hoare triple {37#true} assume !true; {37#true} is VALID [2018-11-14 18:49:47,155 INFO L273 TraceCheckUtils]: 26: Hoare triple {37#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {37#true} is VALID [2018-11-14 18:49:47,155 INFO L273 TraceCheckUtils]: 27: Hoare triple {37#true} assume true; {37#true} is VALID [2018-11-14 18:49:47,156 INFO L268 TraceCheckUtils]: 28: Hoare quadruple {37#true} {38#false} #77#return; {38#false} is VALID [2018-11-14 18:49:47,156 INFO L273 TraceCheckUtils]: 29: Hoare triple {38#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {38#false} is VALID [2018-11-14 18:49:47,156 INFO L273 TraceCheckUtils]: 30: Hoare triple {38#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {38#false} is VALID [2018-11-14 18:49:47,157 INFO L273 TraceCheckUtils]: 31: Hoare triple {38#false} assume !false; {38#false} is VALID [2018-11-14 18:49:47,163 INFO L134 CoverageAnalysis]: Checked inductivity of 15 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2018-11-14 18:49:47,167 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-14 18:49:47,167 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2018-11-14 18:49:47,173 INFO L78 Accepts]: Start accepts. Automaton has 2 states. Word has length 32 [2018-11-14 18:49:47,176 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:49:47,180 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states. [2018-11-14 18:49:47,307 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 24 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:49:47,307 INFO L459 AbstractCegarLoop]: Interpolant automaton has 2 states [2018-11-14 18:49:47,315 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2018-11-14 18:49:47,316 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2018-11-14 18:49:47,318 INFO L87 Difference]: Start difference. First operand 34 states. Second operand 2 states. [2018-11-14 18:49:47,466 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:49:47,466 INFO L93 Difference]: Finished difference Result 59 states and 76 transitions. [2018-11-14 18:49:47,469 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2018-11-14 18:49:47,469 INFO L78 Accepts]: Start accepts. Automaton has 2 states. Word has length 32 [2018-11-14 18:49:47,469 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:49:47,471 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 2 states. [2018-11-14 18:49:47,486 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 76 transitions. [2018-11-14 18:49:47,486 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 2 states. [2018-11-14 18:49:47,499 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 76 transitions. [2018-11-14 18:49:47,500 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states and 76 transitions. [2018-11-14 18:49:47,747 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 76 edges. 76 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:49:47,760 INFO L225 Difference]: With dead ends: 59 [2018-11-14 18:49:47,760 INFO L226 Difference]: Without dead ends: 29 [2018-11-14 18:49:47,764 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 2 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2018-11-14 18:49:47,783 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 29 states. [2018-11-14 18:49:47,937 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 29 to 29. [2018-11-14 18:49:47,937 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:49:47,938 INFO L82 GeneralOperation]: Start isEquivalent. First operand 29 states. Second operand 29 states. [2018-11-14 18:49:47,938 INFO L74 IsIncluded]: Start isIncluded. First operand 29 states. Second operand 29 states. [2018-11-14 18:49:47,939 INFO L87 Difference]: Start difference. First operand 29 states. Second operand 29 states. [2018-11-14 18:49:47,952 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:49:47,953 INFO L93 Difference]: Finished difference Result 29 states and 33 transitions. [2018-11-14 18:49:47,953 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 33 transitions. [2018-11-14 18:49:47,954 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:49:47,954 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:49:47,954 INFO L74 IsIncluded]: Start isIncluded. First operand 29 states. Second operand 29 states. [2018-11-14 18:49:47,955 INFO L87 Difference]: Start difference. First operand 29 states. Second operand 29 states. [2018-11-14 18:49:47,966 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:49:47,966 INFO L93 Difference]: Finished difference Result 29 states and 33 transitions. [2018-11-14 18:49:47,966 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 33 transitions. [2018-11-14 18:49:47,969 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:49:47,969 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:49:47,969 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:49:47,970 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:49:47,970 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 29 states. [2018-11-14 18:49:47,975 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 33 transitions. [2018-11-14 18:49:47,978 INFO L78 Accepts]: Start accepts. Automaton has 29 states and 33 transitions. Word has length 32 [2018-11-14 18:49:47,978 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:49:47,978 INFO L480 AbstractCegarLoop]: Abstraction has 29 states and 33 transitions. [2018-11-14 18:49:47,978 INFO L481 AbstractCegarLoop]: Interpolant automaton has 2 states. [2018-11-14 18:49:47,979 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 33 transitions. [2018-11-14 18:49:47,980 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2018-11-14 18:49:47,980 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:49:47,983 INFO L375 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:49:47,983 INFO L423 AbstractCegarLoop]: === Iteration 2 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:49:47,984 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:49:47,984 INFO L82 PathProgramCache]: Analyzing trace with hash -741637549, now seen corresponding path program 1 times [2018-11-14 18:49:47,984 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:49:47,984 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:49:47,985 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:49:47,987 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 18:49:47,987 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:49:48,026 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:49:48,178 INFO L256 TraceCheckUtils]: 0: Hoare triple {215#true} call ULTIMATE.init(); {215#true} is VALID [2018-11-14 18:49:48,179 INFO L273 TraceCheckUtils]: 1: Hoare triple {215#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {215#true} is VALID [2018-11-14 18:49:48,179 INFO L273 TraceCheckUtils]: 2: Hoare triple {215#true} assume true; {215#true} is VALID [2018-11-14 18:49:48,179 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {215#true} {215#true} #69#return; {215#true} is VALID [2018-11-14 18:49:48,179 INFO L256 TraceCheckUtils]: 4: Hoare triple {215#true} call #t~ret12 := main(); {215#true} is VALID [2018-11-14 18:49:48,181 INFO L273 TraceCheckUtils]: 5: Hoare triple {215#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {217#(= main_~i~1 0)} is VALID [2018-11-14 18:49:48,181 INFO L273 TraceCheckUtils]: 6: Hoare triple {217#(= main_~i~1 0)} assume true; {217#(= main_~i~1 0)} is VALID [2018-11-14 18:49:48,183 INFO L273 TraceCheckUtils]: 7: Hoare triple {217#(= main_~i~1 0)} assume !(~i~1 < 20); {216#false} is VALID [2018-11-14 18:49:48,183 INFO L256 TraceCheckUtils]: 8: Hoare triple {216#false} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {215#true} is VALID [2018-11-14 18:49:48,183 INFO L273 TraceCheckUtils]: 9: Hoare triple {215#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {215#true} is VALID [2018-11-14 18:49:48,184 INFO L273 TraceCheckUtils]: 10: Hoare triple {215#true} assume true; {215#true} is VALID [2018-11-14 18:49:48,184 INFO L273 TraceCheckUtils]: 11: Hoare triple {215#true} assume !(~i~0 < 20); {215#true} is VALID [2018-11-14 18:49:48,184 INFO L273 TraceCheckUtils]: 12: Hoare triple {215#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {215#true} is VALID [2018-11-14 18:49:48,185 INFO L273 TraceCheckUtils]: 13: Hoare triple {215#true} assume true; {215#true} is VALID [2018-11-14 18:49:48,185 INFO L268 TraceCheckUtils]: 14: Hoare quadruple {215#true} {216#false} #73#return; {216#false} is VALID [2018-11-14 18:49:48,185 INFO L273 TraceCheckUtils]: 15: Hoare triple {216#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {216#false} is VALID [2018-11-14 18:49:48,186 INFO L256 TraceCheckUtils]: 16: Hoare triple {216#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {215#true} is VALID [2018-11-14 18:49:48,186 INFO L273 TraceCheckUtils]: 17: Hoare triple {215#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {215#true} is VALID [2018-11-14 18:49:48,186 INFO L273 TraceCheckUtils]: 18: Hoare triple {215#true} assume true; {215#true} is VALID [2018-11-14 18:49:48,186 INFO L273 TraceCheckUtils]: 19: Hoare triple {215#true} assume !(~i~0 < 20); {215#true} is VALID [2018-11-14 18:49:48,187 INFO L273 TraceCheckUtils]: 20: Hoare triple {215#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {215#true} is VALID [2018-11-14 18:49:48,187 INFO L273 TraceCheckUtils]: 21: Hoare triple {215#true} assume true; {215#true} is VALID [2018-11-14 18:49:48,188 INFO L268 TraceCheckUtils]: 22: Hoare quadruple {215#true} {216#false} #75#return; {216#false} is VALID [2018-11-14 18:49:48,188 INFO L273 TraceCheckUtils]: 23: Hoare triple {216#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {216#false} is VALID [2018-11-14 18:49:48,188 INFO L273 TraceCheckUtils]: 24: Hoare triple {216#false} assume true; {216#false} is VALID [2018-11-14 18:49:48,189 INFO L273 TraceCheckUtils]: 25: Hoare triple {216#false} assume !(~i~2 < 19); {216#false} is VALID [2018-11-14 18:49:48,189 INFO L273 TraceCheckUtils]: 26: Hoare triple {216#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {216#false} is VALID [2018-11-14 18:49:48,189 INFO L256 TraceCheckUtils]: 27: Hoare triple {216#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {215#true} is VALID [2018-11-14 18:49:48,190 INFO L273 TraceCheckUtils]: 28: Hoare triple {215#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {215#true} is VALID [2018-11-14 18:49:48,190 INFO L273 TraceCheckUtils]: 29: Hoare triple {215#true} assume true; {215#true} is VALID [2018-11-14 18:49:48,190 INFO L273 TraceCheckUtils]: 30: Hoare triple {215#true} assume !(~i~0 < 20); {215#true} is VALID [2018-11-14 18:49:48,191 INFO L273 TraceCheckUtils]: 31: Hoare triple {215#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {215#true} is VALID [2018-11-14 18:49:48,191 INFO L273 TraceCheckUtils]: 32: Hoare triple {215#true} assume true; {215#true} is VALID [2018-11-14 18:49:48,191 INFO L268 TraceCheckUtils]: 33: Hoare quadruple {215#true} {216#false} #77#return; {216#false} is VALID [2018-11-14 18:49:48,192 INFO L273 TraceCheckUtils]: 34: Hoare triple {216#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {216#false} is VALID [2018-11-14 18:49:48,192 INFO L273 TraceCheckUtils]: 35: Hoare triple {216#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {216#false} is VALID [2018-11-14 18:49:48,192 INFO L273 TraceCheckUtils]: 36: Hoare triple {216#false} assume !false; {216#false} is VALID [2018-11-14 18:49:48,195 INFO L134 CoverageAnalysis]: Checked inductivity of 18 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 18 trivial. 0 not checked. [2018-11-14 18:49:48,196 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-14 18:49:48,196 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2018-11-14 18:49:48,198 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 37 [2018-11-14 18:49:48,199 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:49:48,199 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2018-11-14 18:49:48,443 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 27 edges. 27 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:49:48,443 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2018-11-14 18:49:48,444 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2018-11-14 18:49:48,444 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2018-11-14 18:49:48,445 INFO L87 Difference]: Start difference. First operand 29 states and 33 transitions. Second operand 3 states. [2018-11-14 18:49:48,898 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:49:48,898 INFO L93 Difference]: Finished difference Result 52 states and 60 transitions. [2018-11-14 18:49:48,898 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2018-11-14 18:49:48,898 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 37 [2018-11-14 18:49:48,899 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:49:48,899 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2018-11-14 18:49:48,903 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 60 transitions. [2018-11-14 18:49:48,903 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2018-11-14 18:49:48,906 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 60 transitions. [2018-11-14 18:49:48,907 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 60 transitions. [2018-11-14 18:49:49,055 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:49:49,057 INFO L225 Difference]: With dead ends: 52 [2018-11-14 18:49:49,057 INFO L226 Difference]: Without dead ends: 32 [2018-11-14 18:49:49,058 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 3 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2018-11-14 18:49:49,058 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32 states. [2018-11-14 18:49:49,079 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32 to 31. [2018-11-14 18:49:49,079 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:49:49,079 INFO L82 GeneralOperation]: Start isEquivalent. First operand 32 states. Second operand 31 states. [2018-11-14 18:49:49,080 INFO L74 IsIncluded]: Start isIncluded. First operand 32 states. Second operand 31 states. [2018-11-14 18:49:49,080 INFO L87 Difference]: Start difference. First operand 32 states. Second operand 31 states. [2018-11-14 18:49:49,083 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:49:49,084 INFO L93 Difference]: Finished difference Result 32 states and 36 transitions. [2018-11-14 18:49:49,084 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 36 transitions. [2018-11-14 18:49:49,085 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:49:49,085 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:49:49,085 INFO L74 IsIncluded]: Start isIncluded. First operand 31 states. Second operand 32 states. [2018-11-14 18:49:49,085 INFO L87 Difference]: Start difference. First operand 31 states. Second operand 32 states. [2018-11-14 18:49:49,089 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:49:49,089 INFO L93 Difference]: Finished difference Result 32 states and 36 transitions. [2018-11-14 18:49:49,089 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 36 transitions. [2018-11-14 18:49:49,090 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:49:49,090 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:49:49,090 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:49:49,090 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:49:49,091 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 31 states. [2018-11-14 18:49:49,093 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 35 transitions. [2018-11-14 18:49:49,093 INFO L78 Accepts]: Start accepts. Automaton has 31 states and 35 transitions. Word has length 37 [2018-11-14 18:49:49,094 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:49:49,094 INFO L480 AbstractCegarLoop]: Abstraction has 31 states and 35 transitions. [2018-11-14 18:49:49,094 INFO L481 AbstractCegarLoop]: Interpolant automaton has 3 states. [2018-11-14 18:49:49,094 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 35 transitions. [2018-11-14 18:49:49,096 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2018-11-14 18:49:49,096 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:49:49,096 INFO L375 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:49:49,096 INFO L423 AbstractCegarLoop]: === Iteration 3 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:49:49,097 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:49:49,097 INFO L82 PathProgramCache]: Analyzing trace with hash 989317657, now seen corresponding path program 1 times [2018-11-14 18:49:49,097 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:49:49,097 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:49:49,098 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:49:49,098 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 18:49:49,099 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:49:49,118 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:49:49,191 INFO L256 TraceCheckUtils]: 0: Hoare triple {397#true} call ULTIMATE.init(); {397#true} is VALID [2018-11-14 18:49:49,191 INFO L273 TraceCheckUtils]: 1: Hoare triple {397#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {397#true} is VALID [2018-11-14 18:49:49,191 INFO L273 TraceCheckUtils]: 2: Hoare triple {397#true} assume true; {397#true} is VALID [2018-11-14 18:49:49,192 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {397#true} {397#true} #69#return; {397#true} is VALID [2018-11-14 18:49:49,192 INFO L256 TraceCheckUtils]: 4: Hoare triple {397#true} call #t~ret12 := main(); {397#true} is VALID [2018-11-14 18:49:49,192 INFO L273 TraceCheckUtils]: 5: Hoare triple {397#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {397#true} is VALID [2018-11-14 18:49:49,192 INFO L273 TraceCheckUtils]: 6: Hoare triple {397#true} assume true; {397#true} is VALID [2018-11-14 18:49:49,193 INFO L273 TraceCheckUtils]: 7: Hoare triple {397#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {397#true} is VALID [2018-11-14 18:49:49,193 INFO L273 TraceCheckUtils]: 8: Hoare triple {397#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {397#true} is VALID [2018-11-14 18:49:49,193 INFO L273 TraceCheckUtils]: 9: Hoare triple {397#true} assume true; {397#true} is VALID [2018-11-14 18:49:49,194 INFO L273 TraceCheckUtils]: 10: Hoare triple {397#true} assume !(~i~1 < 20); {397#true} is VALID [2018-11-14 18:49:49,194 INFO L256 TraceCheckUtils]: 11: Hoare triple {397#true} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {397#true} is VALID [2018-11-14 18:49:49,195 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#(= avg_~i~0 0)} is VALID [2018-11-14 18:49:49,199 INFO L273 TraceCheckUtils]: 13: Hoare triple {399#(= avg_~i~0 0)} assume true; {399#(= avg_~i~0 0)} is VALID [2018-11-14 18:49:49,199 INFO L273 TraceCheckUtils]: 14: Hoare triple {399#(= avg_~i~0 0)} assume !(~i~0 < 20); {398#false} is VALID [2018-11-14 18:49:49,200 INFO L273 TraceCheckUtils]: 15: Hoare triple {398#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {398#false} is VALID [2018-11-14 18:49:49,200 INFO L273 TraceCheckUtils]: 16: Hoare triple {398#false} assume true; {398#false} is VALID [2018-11-14 18:49:49,200 INFO L268 TraceCheckUtils]: 17: Hoare quadruple {398#false} {397#true} #73#return; {398#false} is VALID [2018-11-14 18:49:49,201 INFO L273 TraceCheckUtils]: 18: Hoare triple {398#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {398#false} is VALID [2018-11-14 18:49:49,201 INFO L256 TraceCheckUtils]: 19: Hoare triple {398#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {397#true} is VALID [2018-11-14 18:49:49,201 INFO L273 TraceCheckUtils]: 20: Hoare triple {397#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {397#true} is VALID [2018-11-14 18:49:49,201 INFO L273 TraceCheckUtils]: 21: Hoare triple {397#true} assume true; {397#true} is VALID [2018-11-14 18:49:49,202 INFO L273 TraceCheckUtils]: 22: Hoare triple {397#true} assume !(~i~0 < 20); {397#true} is VALID [2018-11-14 18:49:49,202 INFO L273 TraceCheckUtils]: 23: Hoare triple {397#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {397#true} is VALID [2018-11-14 18:49:49,203 INFO L273 TraceCheckUtils]: 24: Hoare triple {397#true} assume true; {397#true} is VALID [2018-11-14 18:49:49,203 INFO L268 TraceCheckUtils]: 25: Hoare quadruple {397#true} {398#false} #75#return; {398#false} is VALID [2018-11-14 18:49:49,203 INFO L273 TraceCheckUtils]: 26: Hoare triple {398#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {398#false} is VALID [2018-11-14 18:49:49,203 INFO L273 TraceCheckUtils]: 27: Hoare triple {398#false} assume true; {398#false} is VALID [2018-11-14 18:49:49,208 INFO L273 TraceCheckUtils]: 28: Hoare triple {398#false} assume !(~i~2 < 19); {398#false} is VALID [2018-11-14 18:49:49,208 INFO L273 TraceCheckUtils]: 29: Hoare triple {398#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {398#false} is VALID [2018-11-14 18:49:49,209 INFO L256 TraceCheckUtils]: 30: Hoare triple {398#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {397#true} is VALID [2018-11-14 18:49:49,209 INFO L273 TraceCheckUtils]: 31: Hoare triple {397#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {397#true} is VALID [2018-11-14 18:49:49,209 INFO L273 TraceCheckUtils]: 32: Hoare triple {397#true} assume true; {397#true} is VALID [2018-11-14 18:49:49,210 INFO L273 TraceCheckUtils]: 33: Hoare triple {397#true} assume !(~i~0 < 20); {397#true} is VALID [2018-11-14 18:49:49,210 INFO L273 TraceCheckUtils]: 34: Hoare triple {397#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {397#true} is VALID [2018-11-14 18:49:49,210 INFO L273 TraceCheckUtils]: 35: Hoare triple {397#true} assume true; {397#true} is VALID [2018-11-14 18:49:49,210 INFO L268 TraceCheckUtils]: 36: Hoare quadruple {397#true} {398#false} #77#return; {398#false} is VALID [2018-11-14 18:49:49,212 INFO L273 TraceCheckUtils]: 37: Hoare triple {398#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {398#false} is VALID [2018-11-14 18:49:49,212 INFO L273 TraceCheckUtils]: 38: Hoare triple {398#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {398#false} is VALID [2018-11-14 18:49:49,212 INFO L273 TraceCheckUtils]: 39: Hoare triple {398#false} assume !false; {398#false} is VALID [2018-11-14 18:49:49,215 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 0 proven. 10 refuted. 0 times theorem prover too weak. 10 trivial. 0 not checked. [2018-11-14 18:49:49,216 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:49:49,216 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 2 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 2 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:49:49,228 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 18:49:49,272 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:49:49,306 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:49:49,312 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:49:49,463 INFO L256 TraceCheckUtils]: 0: Hoare triple {397#true} call ULTIMATE.init(); {397#true} is VALID [2018-11-14 18:49:49,464 INFO L273 TraceCheckUtils]: 1: Hoare triple {397#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {397#true} is VALID [2018-11-14 18:49:49,464 INFO L273 TraceCheckUtils]: 2: Hoare triple {397#true} assume true; {397#true} is VALID [2018-11-14 18:49:49,464 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {397#true} {397#true} #69#return; {397#true} is VALID [2018-11-14 18:49:49,465 INFO L256 TraceCheckUtils]: 4: Hoare triple {397#true} call #t~ret12 := main(); {397#true} is VALID [2018-11-14 18:49:49,465 INFO L273 TraceCheckUtils]: 5: Hoare triple {397#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {397#true} is VALID [2018-11-14 18:49:49,465 INFO L273 TraceCheckUtils]: 6: Hoare triple {397#true} assume true; {397#true} is VALID [2018-11-14 18:49:49,465 INFO L273 TraceCheckUtils]: 7: Hoare triple {397#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {397#true} is VALID [2018-11-14 18:49:49,466 INFO L273 TraceCheckUtils]: 8: Hoare triple {397#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {397#true} is VALID [2018-11-14 18:49:49,466 INFO L273 TraceCheckUtils]: 9: Hoare triple {397#true} assume true; {397#true} is VALID [2018-11-14 18:49:49,466 INFO L273 TraceCheckUtils]: 10: Hoare triple {397#true} assume !(~i~1 < 20); {397#true} is VALID [2018-11-14 18:49:49,467 INFO L256 TraceCheckUtils]: 11: Hoare triple {397#true} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {397#true} is VALID [2018-11-14 18:49:49,482 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#(<= avg_~i~0 0)} is VALID [2018-11-14 18:49:49,484 INFO L273 TraceCheckUtils]: 13: Hoare triple {439#(<= avg_~i~0 0)} assume true; {439#(<= avg_~i~0 0)} is VALID [2018-11-14 18:49:49,484 INFO L273 TraceCheckUtils]: 14: Hoare triple {439#(<= avg_~i~0 0)} assume !(~i~0 < 20); {398#false} is VALID [2018-11-14 18:49:49,485 INFO L273 TraceCheckUtils]: 15: Hoare triple {398#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {398#false} is VALID [2018-11-14 18:49:49,485 INFO L273 TraceCheckUtils]: 16: Hoare triple {398#false} assume true; {398#false} is VALID [2018-11-14 18:49:49,485 INFO L268 TraceCheckUtils]: 17: Hoare quadruple {398#false} {397#true} #73#return; {398#false} is VALID [2018-11-14 18:49:49,485 INFO L273 TraceCheckUtils]: 18: Hoare triple {398#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {398#false} is VALID [2018-11-14 18:49:49,486 INFO L256 TraceCheckUtils]: 19: Hoare triple {398#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {398#false} is VALID [2018-11-14 18:49:49,486 INFO L273 TraceCheckUtils]: 20: Hoare triple {398#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {398#false} is VALID [2018-11-14 18:49:49,486 INFO L273 TraceCheckUtils]: 21: Hoare triple {398#false} assume true; {398#false} is VALID [2018-11-14 18:49:49,486 INFO L273 TraceCheckUtils]: 22: Hoare triple {398#false} assume !(~i~0 < 20); {398#false} is VALID [2018-11-14 18:49:49,489 INFO L273 TraceCheckUtils]: 23: Hoare triple {398#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {398#false} is VALID [2018-11-14 18:49:49,489 INFO L273 TraceCheckUtils]: 24: Hoare triple {398#false} assume true; {398#false} is VALID [2018-11-14 18:49:49,489 INFO L268 TraceCheckUtils]: 25: Hoare quadruple {398#false} {398#false} #75#return; {398#false} is VALID [2018-11-14 18:49:49,490 INFO L273 TraceCheckUtils]: 26: Hoare triple {398#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {398#false} is VALID [2018-11-14 18:49:49,490 INFO L273 TraceCheckUtils]: 27: Hoare triple {398#false} assume true; {398#false} is VALID [2018-11-14 18:49:49,490 INFO L273 TraceCheckUtils]: 28: Hoare triple {398#false} assume !(~i~2 < 19); {398#false} is VALID [2018-11-14 18:49:49,490 INFO L273 TraceCheckUtils]: 29: Hoare triple {398#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {398#false} is VALID [2018-11-14 18:49:49,491 INFO L256 TraceCheckUtils]: 30: Hoare triple {398#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {398#false} is VALID [2018-11-14 18:49:49,491 INFO L273 TraceCheckUtils]: 31: Hoare triple {398#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {398#false} is VALID [2018-11-14 18:49:49,491 INFO L273 TraceCheckUtils]: 32: Hoare triple {398#false} assume true; {398#false} is VALID [2018-11-14 18:49:49,492 INFO L273 TraceCheckUtils]: 33: Hoare triple {398#false} assume !(~i~0 < 20); {398#false} is VALID [2018-11-14 18:49:49,492 INFO L273 TraceCheckUtils]: 34: Hoare triple {398#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {398#false} is VALID [2018-11-14 18:49:49,492 INFO L273 TraceCheckUtils]: 35: Hoare triple {398#false} assume true; {398#false} is VALID [2018-11-14 18:49:49,492 INFO L268 TraceCheckUtils]: 36: Hoare quadruple {398#false} {398#false} #77#return; {398#false} is VALID [2018-11-14 18:49:49,493 INFO L273 TraceCheckUtils]: 37: Hoare triple {398#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {398#false} is VALID [2018-11-14 18:49:49,493 INFO L273 TraceCheckUtils]: 38: Hoare triple {398#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {398#false} is VALID [2018-11-14 18:49:49,493 INFO L273 TraceCheckUtils]: 39: Hoare triple {398#false} assume !false; {398#false} is VALID [2018-11-14 18:49:49,496 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 14 trivial. 0 not checked. [2018-11-14 18:49:49,521 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 1 imperfect interpolant sequences. [2018-11-14 18:49:49,521 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [3] imperfect sequences [3] total 4 [2018-11-14 18:49:49,522 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 40 [2018-11-14 18:49:49,526 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:49:49,526 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2018-11-14 18:49:49,702 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 44 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:49:49,703 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2018-11-14 18:49:49,703 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2018-11-14 18:49:49,703 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2018-11-14 18:49:49,703 INFO L87 Difference]: Start difference. First operand 31 states and 35 transitions. Second operand 4 states. [2018-11-14 18:49:49,973 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:49:49,974 INFO L93 Difference]: Finished difference Result 53 states and 63 transitions. [2018-11-14 18:49:49,974 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2018-11-14 18:49:49,974 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 40 [2018-11-14 18:49:49,974 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:49:49,975 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2018-11-14 18:49:49,978 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 61 transitions. [2018-11-14 18:49:49,978 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2018-11-14 18:49:49,981 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 61 transitions. [2018-11-14 18:49:49,982 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 61 transitions. [2018-11-14 18:49:50,114 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 61 edges. 61 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:49:50,117 INFO L225 Difference]: With dead ends: 53 [2018-11-14 18:49:50,117 INFO L226 Difference]: Without dead ends: 34 [2018-11-14 18:49:50,118 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 42 GetRequests, 40 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2018-11-14 18:49:50,118 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2018-11-14 18:49:50,149 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 33. [2018-11-14 18:49:50,150 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:49:50,150 INFO L82 GeneralOperation]: Start isEquivalent. First operand 34 states. Second operand 33 states. [2018-11-14 18:49:50,150 INFO L74 IsIncluded]: Start isIncluded. First operand 34 states. Second operand 33 states. [2018-11-14 18:49:50,150 INFO L87 Difference]: Start difference. First operand 34 states. Second operand 33 states. [2018-11-14 18:49:50,154 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:49:50,154 INFO L93 Difference]: Finished difference Result 34 states and 38 transitions. [2018-11-14 18:49:50,155 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 38 transitions. [2018-11-14 18:49:50,156 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:49:50,157 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:49:50,157 INFO L74 IsIncluded]: Start isIncluded. First operand 33 states. Second operand 34 states. [2018-11-14 18:49:50,157 INFO L87 Difference]: Start difference. First operand 33 states. Second operand 34 states. [2018-11-14 18:49:50,160 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:49:50,161 INFO L93 Difference]: Finished difference Result 34 states and 38 transitions. [2018-11-14 18:49:50,161 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 38 transitions. [2018-11-14 18:49:50,162 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:49:50,162 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:49:50,162 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:49:50,162 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:49:50,162 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 33 states. [2018-11-14 18:49:50,165 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 37 transitions. [2018-11-14 18:49:50,165 INFO L78 Accepts]: Start accepts. Automaton has 33 states and 37 transitions. Word has length 40 [2018-11-14 18:49:50,166 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:49:50,166 INFO L480 AbstractCegarLoop]: Abstraction has 33 states and 37 transitions. [2018-11-14 18:49:50,166 INFO L481 AbstractCegarLoop]: Interpolant automaton has 4 states. [2018-11-14 18:49:50,166 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 37 transitions. [2018-11-14 18:49:50,167 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 50 [2018-11-14 18:49:50,168 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:49:50,168 INFO L375 BasicCegarLoop]: trace histogram [6, 3, 3, 3, 3, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:49:50,168 INFO L423 AbstractCegarLoop]: === Iteration 4 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:49:50,169 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:49:50,169 INFO L82 PathProgramCache]: Analyzing trace with hash 841579359, now seen corresponding path program 1 times [2018-11-14 18:49:50,169 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:49:50,169 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:49:50,170 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:49:50,170 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 18:49:50,171 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:49:50,204 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:49:50,274 INFO L256 TraceCheckUtils]: 0: Hoare triple {705#true} call ULTIMATE.init(); {705#true} is VALID [2018-11-14 18:49:50,274 INFO L273 TraceCheckUtils]: 1: Hoare triple {705#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {705#true} is VALID [2018-11-14 18:49:50,275 INFO L273 TraceCheckUtils]: 2: Hoare triple {705#true} assume true; {705#true} is VALID [2018-11-14 18:49:50,275 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {705#true} {705#true} #69#return; {705#true} is VALID [2018-11-14 18:49:50,276 INFO L256 TraceCheckUtils]: 4: Hoare triple {705#true} call #t~ret12 := main(); {705#true} is VALID [2018-11-14 18:49:50,276 INFO L273 TraceCheckUtils]: 5: Hoare triple {705#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {705#true} is VALID [2018-11-14 18:49:50,277 INFO L273 TraceCheckUtils]: 6: Hoare triple {705#true} assume true; {705#true} is VALID [2018-11-14 18:49:50,277 INFO L273 TraceCheckUtils]: 7: Hoare triple {705#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {705#true} is VALID [2018-11-14 18:49:50,277 INFO L273 TraceCheckUtils]: 8: Hoare triple {705#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {705#true} is VALID [2018-11-14 18:49:50,278 INFO L273 TraceCheckUtils]: 9: Hoare triple {705#true} assume true; {705#true} is VALID [2018-11-14 18:49:50,278 INFO L273 TraceCheckUtils]: 10: Hoare triple {705#true} assume !(~i~1 < 20); {705#true} is VALID [2018-11-14 18:49:50,278 INFO L256 TraceCheckUtils]: 11: Hoare triple {705#true} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {705#true} is VALID [2018-11-14 18:49:50,278 INFO L273 TraceCheckUtils]: 12: Hoare triple {705#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {705#true} is VALID [2018-11-14 18:49:50,279 INFO L273 TraceCheckUtils]: 13: Hoare triple {705#true} assume true; {705#true} is VALID [2018-11-14 18:49:50,279 INFO L273 TraceCheckUtils]: 14: Hoare triple {705#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {705#true} is VALID [2018-11-14 18:49:50,279 INFO L273 TraceCheckUtils]: 15: Hoare triple {705#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {705#true} is VALID [2018-11-14 18:49:50,279 INFO L273 TraceCheckUtils]: 16: Hoare triple {705#true} assume true; {705#true} is VALID [2018-11-14 18:49:50,280 INFO L273 TraceCheckUtils]: 17: Hoare triple {705#true} assume !(~i~0 < 20); {705#true} is VALID [2018-11-14 18:49:50,280 INFO L273 TraceCheckUtils]: 18: Hoare triple {705#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {705#true} is VALID [2018-11-14 18:49:50,280 INFO L273 TraceCheckUtils]: 19: Hoare triple {705#true} assume true; {705#true} is VALID [2018-11-14 18:49:50,280 INFO L268 TraceCheckUtils]: 20: Hoare quadruple {705#true} {705#true} #73#return; {705#true} is VALID [2018-11-14 18:49:50,281 INFO L273 TraceCheckUtils]: 21: Hoare triple {705#true} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {705#true} is VALID [2018-11-14 18:49:50,281 INFO L256 TraceCheckUtils]: 22: Hoare triple {705#true} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {705#true} is VALID [2018-11-14 18:49:50,281 INFO L273 TraceCheckUtils]: 23: Hoare triple {705#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {705#true} is VALID [2018-11-14 18:49:50,281 INFO L273 TraceCheckUtils]: 24: Hoare triple {705#true} assume true; {705#true} is VALID [2018-11-14 18:49:50,282 INFO L273 TraceCheckUtils]: 25: Hoare triple {705#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {705#true} is VALID [2018-11-14 18:49:50,282 INFO L273 TraceCheckUtils]: 26: Hoare triple {705#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {705#true} is VALID [2018-11-14 18:49:50,282 INFO L273 TraceCheckUtils]: 27: Hoare triple {705#true} assume true; {705#true} is VALID [2018-11-14 18:49:50,282 INFO L273 TraceCheckUtils]: 28: Hoare triple {705#true} assume !(~i~0 < 20); {705#true} is VALID [2018-11-14 18:49:50,282 INFO L273 TraceCheckUtils]: 29: Hoare triple {705#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {705#true} is VALID [2018-11-14 18:49:50,283 INFO L273 TraceCheckUtils]: 30: Hoare triple {705#true} assume true; {705#true} is VALID [2018-11-14 18:49:50,283 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {705#true} {705#true} #75#return; {705#true} is VALID [2018-11-14 18:49:50,284 INFO L273 TraceCheckUtils]: 32: Hoare triple {705#true} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {707#(= main_~i~2 0)} is VALID [2018-11-14 18:49:50,297 INFO L273 TraceCheckUtils]: 33: Hoare triple {707#(= main_~i~2 0)} assume true; {707#(= main_~i~2 0)} is VALID [2018-11-14 18:49:50,310 INFO L273 TraceCheckUtils]: 34: Hoare triple {707#(= main_~i~2 0)} assume !(~i~2 < 19); {706#false} is VALID [2018-11-14 18:49:50,310 INFO L273 TraceCheckUtils]: 35: Hoare triple {706#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {706#false} is VALID [2018-11-14 18:49:50,310 INFO L256 TraceCheckUtils]: 36: Hoare triple {706#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {705#true} is VALID [2018-11-14 18:49:50,311 INFO L273 TraceCheckUtils]: 37: Hoare triple {705#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {705#true} is VALID [2018-11-14 18:49:50,311 INFO L273 TraceCheckUtils]: 38: Hoare triple {705#true} assume true; {705#true} is VALID [2018-11-14 18:49:50,311 INFO L273 TraceCheckUtils]: 39: Hoare triple {705#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {705#true} is VALID [2018-11-14 18:49:50,312 INFO L273 TraceCheckUtils]: 40: Hoare triple {705#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {705#true} is VALID [2018-11-14 18:49:50,312 INFO L273 TraceCheckUtils]: 41: Hoare triple {705#true} assume true; {705#true} is VALID [2018-11-14 18:49:50,312 INFO L273 TraceCheckUtils]: 42: Hoare triple {705#true} assume !(~i~0 < 20); {705#true} is VALID [2018-11-14 18:49:50,312 INFO L273 TraceCheckUtils]: 43: Hoare triple {705#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {705#true} is VALID [2018-11-14 18:49:50,312 INFO L273 TraceCheckUtils]: 44: Hoare triple {705#true} assume true; {705#true} is VALID [2018-11-14 18:49:50,313 INFO L268 TraceCheckUtils]: 45: Hoare quadruple {705#true} {706#false} #77#return; {706#false} is VALID [2018-11-14 18:49:50,313 INFO L273 TraceCheckUtils]: 46: Hoare triple {706#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {706#false} is VALID [2018-11-14 18:49:50,313 INFO L273 TraceCheckUtils]: 47: Hoare triple {706#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {706#false} is VALID [2018-11-14 18:49:50,314 INFO L273 TraceCheckUtils]: 48: Hoare triple {706#false} assume !false; {706#false} is VALID [2018-11-14 18:49:50,317 INFO L134 CoverageAnalysis]: Checked inductivity of 47 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 47 trivial. 0 not checked. [2018-11-14 18:49:50,317 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-14 18:49:50,317 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2018-11-14 18:49:50,318 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 49 [2018-11-14 18:49:50,318 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:49:50,319 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2018-11-14 18:49:50,396 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 31 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:49:50,396 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2018-11-14 18:49:50,396 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2018-11-14 18:49:50,397 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2018-11-14 18:49:50,397 INFO L87 Difference]: Start difference. First operand 33 states and 37 transitions. Second operand 3 states. [2018-11-14 18:49:50,485 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:49:50,486 INFO L93 Difference]: Finished difference Result 51 states and 56 transitions. [2018-11-14 18:49:50,486 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2018-11-14 18:49:50,486 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 49 [2018-11-14 18:49:50,487 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:49:50,487 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2018-11-14 18:49:50,489 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 50 transitions. [2018-11-14 18:49:50,489 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2018-11-14 18:49:50,491 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 50 transitions. [2018-11-14 18:49:50,491 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 50 transitions. [2018-11-14 18:49:50,608 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 50 edges. 50 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:49:50,610 INFO L225 Difference]: With dead ends: 51 [2018-11-14 18:49:50,611 INFO L226 Difference]: Without dead ends: 36 [2018-11-14 18:49:50,611 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 3 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2018-11-14 18:49:50,611 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 36 states. [2018-11-14 18:49:50,627 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 36 to 35. [2018-11-14 18:49:50,628 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:49:50,628 INFO L82 GeneralOperation]: Start isEquivalent. First operand 36 states. Second operand 35 states. [2018-11-14 18:49:50,628 INFO L74 IsIncluded]: Start isIncluded. First operand 36 states. Second operand 35 states. [2018-11-14 18:49:50,628 INFO L87 Difference]: Start difference. First operand 36 states. Second operand 35 states. [2018-11-14 18:49:50,631 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:49:50,631 INFO L93 Difference]: Finished difference Result 36 states and 40 transitions. [2018-11-14 18:49:50,632 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 40 transitions. [2018-11-14 18:49:50,632 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:49:50,633 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:49:50,633 INFO L74 IsIncluded]: Start isIncluded. First operand 35 states. Second operand 36 states. [2018-11-14 18:49:50,633 INFO L87 Difference]: Start difference. First operand 35 states. Second operand 36 states. [2018-11-14 18:49:50,635 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:49:50,636 INFO L93 Difference]: Finished difference Result 36 states and 40 transitions. [2018-11-14 18:49:50,636 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 40 transitions. [2018-11-14 18:49:50,636 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:49:50,637 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:49:50,637 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:49:50,637 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:49:50,637 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 35 states. [2018-11-14 18:49:50,639 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 39 transitions. [2018-11-14 18:49:50,640 INFO L78 Accepts]: Start accepts. Automaton has 35 states and 39 transitions. Word has length 49 [2018-11-14 18:49:50,640 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:49:50,640 INFO L480 AbstractCegarLoop]: Abstraction has 35 states and 39 transitions. [2018-11-14 18:49:50,640 INFO L481 AbstractCegarLoop]: Interpolant automaton has 3 states. [2018-11-14 18:49:50,640 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 39 transitions. [2018-11-14 18:49:50,642 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 53 [2018-11-14 18:49:50,642 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:49:50,642 INFO L375 BasicCegarLoop]: trace histogram [6, 3, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:49:50,642 INFO L423 AbstractCegarLoop]: === Iteration 5 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:49:50,643 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:49:50,643 INFO L82 PathProgramCache]: Analyzing trace with hash 611709709, now seen corresponding path program 1 times [2018-11-14 18:49:50,643 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:49:50,643 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:49:50,644 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:49:50,644 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 18:49:50,644 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:49:50,678 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:49:50,778 INFO L256 TraceCheckUtils]: 0: Hoare triple {900#true} call ULTIMATE.init(); {900#true} is VALID [2018-11-14 18:49:50,778 INFO L273 TraceCheckUtils]: 1: Hoare triple {900#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {900#true} is VALID [2018-11-14 18:49:50,779 INFO L273 TraceCheckUtils]: 2: Hoare triple {900#true} assume true; {900#true} is VALID [2018-11-14 18:49:50,779 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {900#true} {900#true} #69#return; {900#true} is VALID [2018-11-14 18:49:50,779 INFO L256 TraceCheckUtils]: 4: Hoare triple {900#true} call #t~ret12 := main(); {900#true} is VALID [2018-11-14 18:49:50,787 INFO L273 TraceCheckUtils]: 5: Hoare triple {900#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {902#(= main_~i~1 0)} is VALID [2018-11-14 18:49:50,789 INFO L273 TraceCheckUtils]: 6: Hoare triple {902#(= main_~i~1 0)} assume true; {902#(= main_~i~1 0)} is VALID [2018-11-14 18:49:50,789 INFO L273 TraceCheckUtils]: 7: Hoare triple {902#(= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {902#(= main_~i~1 0)} is VALID [2018-11-14 18:49:50,791 INFO L273 TraceCheckUtils]: 8: Hoare triple {902#(= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {903#(<= main_~i~1 1)} is VALID [2018-11-14 18:49:50,791 INFO L273 TraceCheckUtils]: 9: Hoare triple {903#(<= main_~i~1 1)} assume true; {903#(<= main_~i~1 1)} is VALID [2018-11-14 18:49:50,793 INFO L273 TraceCheckUtils]: 10: Hoare triple {903#(<= main_~i~1 1)} assume !(~i~1 < 20); {901#false} is VALID [2018-11-14 18:49:50,793 INFO L256 TraceCheckUtils]: 11: Hoare triple {901#false} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {900#true} is VALID [2018-11-14 18:49:50,793 INFO L273 TraceCheckUtils]: 12: Hoare triple {900#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {900#true} is VALID [2018-11-14 18:49:50,793 INFO L273 TraceCheckUtils]: 13: Hoare triple {900#true} assume true; {900#true} is VALID [2018-11-14 18:49:50,794 INFO L273 TraceCheckUtils]: 14: Hoare triple {900#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {900#true} is VALID [2018-11-14 18:49:50,794 INFO L273 TraceCheckUtils]: 15: Hoare triple {900#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {900#true} is VALID [2018-11-14 18:49:50,794 INFO L273 TraceCheckUtils]: 16: Hoare triple {900#true} assume true; {900#true} is VALID [2018-11-14 18:49:50,794 INFO L273 TraceCheckUtils]: 17: Hoare triple {900#true} assume !(~i~0 < 20); {900#true} is VALID [2018-11-14 18:49:50,794 INFO L273 TraceCheckUtils]: 18: Hoare triple {900#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {900#true} is VALID [2018-11-14 18:49:50,795 INFO L273 TraceCheckUtils]: 19: Hoare triple {900#true} assume true; {900#true} is VALID [2018-11-14 18:49:50,795 INFO L268 TraceCheckUtils]: 20: Hoare quadruple {900#true} {901#false} #73#return; {901#false} is VALID [2018-11-14 18:49:50,795 INFO L273 TraceCheckUtils]: 21: Hoare triple {901#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {901#false} is VALID [2018-11-14 18:49:50,796 INFO L256 TraceCheckUtils]: 22: Hoare triple {901#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {900#true} is VALID [2018-11-14 18:49:50,796 INFO L273 TraceCheckUtils]: 23: Hoare triple {900#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {900#true} is VALID [2018-11-14 18:49:50,796 INFO L273 TraceCheckUtils]: 24: Hoare triple {900#true} assume true; {900#true} is VALID [2018-11-14 18:49:50,796 INFO L273 TraceCheckUtils]: 25: Hoare triple {900#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {900#true} is VALID [2018-11-14 18:49:50,797 INFO L273 TraceCheckUtils]: 26: Hoare triple {900#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {900#true} is VALID [2018-11-14 18:49:50,797 INFO L273 TraceCheckUtils]: 27: Hoare triple {900#true} assume true; {900#true} is VALID [2018-11-14 18:49:50,797 INFO L273 TraceCheckUtils]: 28: Hoare triple {900#true} assume !(~i~0 < 20); {900#true} is VALID [2018-11-14 18:49:50,797 INFO L273 TraceCheckUtils]: 29: Hoare triple {900#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {900#true} is VALID [2018-11-14 18:49:50,798 INFO L273 TraceCheckUtils]: 30: Hoare triple {900#true} assume true; {900#true} is VALID [2018-11-14 18:49:50,798 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {900#true} {901#false} #75#return; {901#false} is VALID [2018-11-14 18:49:50,798 INFO L273 TraceCheckUtils]: 32: Hoare triple {901#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {901#false} is VALID [2018-11-14 18:49:50,798 INFO L273 TraceCheckUtils]: 33: Hoare triple {901#false} assume true; {901#false} is VALID [2018-11-14 18:49:50,799 INFO L273 TraceCheckUtils]: 34: Hoare triple {901#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {901#false} is VALID [2018-11-14 18:49:50,799 INFO L273 TraceCheckUtils]: 35: Hoare triple {901#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {901#false} is VALID [2018-11-14 18:49:50,799 INFO L273 TraceCheckUtils]: 36: Hoare triple {901#false} assume true; {901#false} is VALID [2018-11-14 18:49:50,799 INFO L273 TraceCheckUtils]: 37: Hoare triple {901#false} assume !(~i~2 < 19); {901#false} is VALID [2018-11-14 18:49:50,800 INFO L273 TraceCheckUtils]: 38: Hoare triple {901#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {901#false} is VALID [2018-11-14 18:49:50,800 INFO L256 TraceCheckUtils]: 39: Hoare triple {901#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {900#true} is VALID [2018-11-14 18:49:50,800 INFO L273 TraceCheckUtils]: 40: Hoare triple {900#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {900#true} is VALID [2018-11-14 18:49:50,800 INFO L273 TraceCheckUtils]: 41: Hoare triple {900#true} assume true; {900#true} is VALID [2018-11-14 18:49:50,801 INFO L273 TraceCheckUtils]: 42: Hoare triple {900#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {900#true} is VALID [2018-11-14 18:49:50,801 INFO L273 TraceCheckUtils]: 43: Hoare triple {900#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {900#true} is VALID [2018-11-14 18:49:50,801 INFO L273 TraceCheckUtils]: 44: Hoare triple {900#true} assume true; {900#true} is VALID [2018-11-14 18:49:50,801 INFO L273 TraceCheckUtils]: 45: Hoare triple {900#true} assume !(~i~0 < 20); {900#true} is VALID [2018-11-14 18:49:50,801 INFO L273 TraceCheckUtils]: 46: Hoare triple {900#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {900#true} is VALID [2018-11-14 18:49:50,802 INFO L273 TraceCheckUtils]: 47: Hoare triple {900#true} assume true; {900#true} is VALID [2018-11-14 18:49:50,802 INFO L268 TraceCheckUtils]: 48: Hoare quadruple {900#true} {901#false} #77#return; {901#false} is VALID [2018-11-14 18:49:50,802 INFO L273 TraceCheckUtils]: 49: Hoare triple {901#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {901#false} is VALID [2018-11-14 18:49:50,802 INFO L273 TraceCheckUtils]: 50: Hoare triple {901#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {901#false} is VALID [2018-11-14 18:49:50,802 INFO L273 TraceCheckUtils]: 51: Hoare triple {901#false} assume !false; {901#false} is VALID [2018-11-14 18:49:50,806 INFO L134 CoverageAnalysis]: Checked inductivity of 49 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 47 trivial. 0 not checked. [2018-11-14 18:49:50,806 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:49:50,806 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 3 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 3 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:49:50,816 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 18:49:50,859 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:49:50,890 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:49:50,893 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:49:51,146 INFO L256 TraceCheckUtils]: 0: Hoare triple {900#true} call ULTIMATE.init(); {900#true} is VALID [2018-11-14 18:49:51,147 INFO L273 TraceCheckUtils]: 1: Hoare triple {900#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {900#true} is VALID [2018-11-14 18:49:51,147 INFO L273 TraceCheckUtils]: 2: Hoare triple {900#true} assume true; {900#true} is VALID [2018-11-14 18:49:51,147 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {900#true} {900#true} #69#return; {900#true} is VALID [2018-11-14 18:49:51,147 INFO L256 TraceCheckUtils]: 4: Hoare triple {900#true} call #t~ret12 := main(); {900#true} is VALID [2018-11-14 18:49:51,149 INFO L273 TraceCheckUtils]: 5: Hoare triple {900#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {922#(<= main_~i~1 0)} is VALID [2018-11-14 18:49:51,150 INFO L273 TraceCheckUtils]: 6: Hoare triple {922#(<= main_~i~1 0)} assume true; {922#(<= main_~i~1 0)} is VALID [2018-11-14 18:49:51,151 INFO L273 TraceCheckUtils]: 7: Hoare triple {922#(<= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {922#(<= main_~i~1 0)} is VALID [2018-11-14 18:49:51,151 INFO L273 TraceCheckUtils]: 8: Hoare triple {922#(<= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {903#(<= main_~i~1 1)} is VALID [2018-11-14 18:49:51,152 INFO L273 TraceCheckUtils]: 9: Hoare triple {903#(<= main_~i~1 1)} assume true; {903#(<= main_~i~1 1)} is VALID [2018-11-14 18:49:51,153 INFO L273 TraceCheckUtils]: 10: Hoare triple {903#(<= main_~i~1 1)} assume !(~i~1 < 20); {901#false} is VALID [2018-11-14 18:49:51,153 INFO L256 TraceCheckUtils]: 11: Hoare triple {901#false} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {901#false} is VALID [2018-11-14 18:49:51,154 INFO L273 TraceCheckUtils]: 12: Hoare triple {901#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {901#false} is VALID [2018-11-14 18:49:51,154 INFO L273 TraceCheckUtils]: 13: Hoare triple {901#false} assume true; {901#false} is VALID [2018-11-14 18:49:51,154 INFO L273 TraceCheckUtils]: 14: Hoare triple {901#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {901#false} is VALID [2018-11-14 18:49:51,155 INFO L273 TraceCheckUtils]: 15: Hoare triple {901#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {901#false} is VALID [2018-11-14 18:49:51,155 INFO L273 TraceCheckUtils]: 16: Hoare triple {901#false} assume true; {901#false} is VALID [2018-11-14 18:49:51,155 INFO L273 TraceCheckUtils]: 17: Hoare triple {901#false} assume !(~i~0 < 20); {901#false} is VALID [2018-11-14 18:49:51,156 INFO L273 TraceCheckUtils]: 18: Hoare triple {901#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {901#false} is VALID [2018-11-14 18:49:51,159 INFO L273 TraceCheckUtils]: 19: Hoare triple {901#false} assume true; {901#false} is VALID [2018-11-14 18:49:51,159 INFO L268 TraceCheckUtils]: 20: Hoare quadruple {901#false} {901#false} #73#return; {901#false} is VALID [2018-11-14 18:49:51,159 INFO L273 TraceCheckUtils]: 21: Hoare triple {901#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {901#false} is VALID [2018-11-14 18:49:51,160 INFO L256 TraceCheckUtils]: 22: Hoare triple {901#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {901#false} is VALID [2018-11-14 18:49:51,160 INFO L273 TraceCheckUtils]: 23: Hoare triple {901#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {901#false} is VALID [2018-11-14 18:49:51,160 INFO L273 TraceCheckUtils]: 24: Hoare triple {901#false} assume true; {901#false} is VALID [2018-11-14 18:49:51,160 INFO L273 TraceCheckUtils]: 25: Hoare triple {901#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {901#false} is VALID [2018-11-14 18:49:51,160 INFO L273 TraceCheckUtils]: 26: Hoare triple {901#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {901#false} is VALID [2018-11-14 18:49:51,161 INFO L273 TraceCheckUtils]: 27: Hoare triple {901#false} assume true; {901#false} is VALID [2018-11-14 18:49:51,162 INFO L273 TraceCheckUtils]: 28: Hoare triple {901#false} assume !(~i~0 < 20); {901#false} is VALID [2018-11-14 18:49:51,162 INFO L273 TraceCheckUtils]: 29: Hoare triple {901#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {901#false} is VALID [2018-11-14 18:49:51,162 INFO L273 TraceCheckUtils]: 30: Hoare triple {901#false} assume true; {901#false} is VALID [2018-11-14 18:49:51,163 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {901#false} {901#false} #75#return; {901#false} is VALID [2018-11-14 18:49:51,163 INFO L273 TraceCheckUtils]: 32: Hoare triple {901#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {901#false} is VALID [2018-11-14 18:49:51,163 INFO L273 TraceCheckUtils]: 33: Hoare triple {901#false} assume true; {901#false} is VALID [2018-11-14 18:49:51,163 INFO L273 TraceCheckUtils]: 34: Hoare triple {901#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {901#false} is VALID [2018-11-14 18:49:51,164 INFO L273 TraceCheckUtils]: 35: Hoare triple {901#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {901#false} is VALID [2018-11-14 18:49:51,164 INFO L273 TraceCheckUtils]: 36: Hoare triple {901#false} assume true; {901#false} is VALID [2018-11-14 18:49:51,165 INFO L273 TraceCheckUtils]: 37: Hoare triple {901#false} assume !(~i~2 < 19); {901#false} is VALID [2018-11-14 18:49:51,165 INFO L273 TraceCheckUtils]: 38: Hoare triple {901#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {901#false} is VALID [2018-11-14 18:49:51,165 INFO L256 TraceCheckUtils]: 39: Hoare triple {901#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {901#false} is VALID [2018-11-14 18:49:51,165 INFO L273 TraceCheckUtils]: 40: Hoare triple {901#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {901#false} is VALID [2018-11-14 18:49:51,166 INFO L273 TraceCheckUtils]: 41: Hoare triple {901#false} assume true; {901#false} is VALID [2018-11-14 18:49:51,166 INFO L273 TraceCheckUtils]: 42: Hoare triple {901#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {901#false} is VALID [2018-11-14 18:49:51,166 INFO L273 TraceCheckUtils]: 43: Hoare triple {901#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {901#false} is VALID [2018-11-14 18:49:51,166 INFO L273 TraceCheckUtils]: 44: Hoare triple {901#false} assume true; {901#false} is VALID [2018-11-14 18:49:51,167 INFO L273 TraceCheckUtils]: 45: Hoare triple {901#false} assume !(~i~0 < 20); {901#false} is VALID [2018-11-14 18:49:51,167 INFO L273 TraceCheckUtils]: 46: Hoare triple {901#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {901#false} is VALID [2018-11-14 18:49:51,167 INFO L273 TraceCheckUtils]: 47: Hoare triple {901#false} assume true; {901#false} is VALID [2018-11-14 18:49:51,167 INFO L268 TraceCheckUtils]: 48: Hoare quadruple {901#false} {901#false} #77#return; {901#false} is VALID [2018-11-14 18:49:51,168 INFO L273 TraceCheckUtils]: 49: Hoare triple {901#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {901#false} is VALID [2018-11-14 18:49:51,168 INFO L273 TraceCheckUtils]: 50: Hoare triple {901#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {901#false} is VALID [2018-11-14 18:49:51,168 INFO L273 TraceCheckUtils]: 51: Hoare triple {901#false} assume !false; {901#false} is VALID [2018-11-14 18:49:51,172 INFO L134 CoverageAnalysis]: Checked inductivity of 49 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 47 trivial. 0 not checked. [2018-11-14 18:49:51,202 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:49:51,202 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 4] total 5 [2018-11-14 18:49:51,203 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 52 [2018-11-14 18:49:51,204 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:49:51,204 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states. [2018-11-14 18:49:51,281 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 51 edges. 51 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:49:51,282 INFO L459 AbstractCegarLoop]: Interpolant automaton has 5 states [2018-11-14 18:49:51,282 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2018-11-14 18:49:51,282 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=10, Unknown=0, NotChecked=0, Total=20 [2018-11-14 18:49:51,283 INFO L87 Difference]: Start difference. First operand 35 states and 39 transitions. Second operand 5 states. [2018-11-14 18:49:51,683 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:49:51,684 INFO L93 Difference]: Finished difference Result 63 states and 71 transitions. [2018-11-14 18:49:51,684 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2018-11-14 18:49:51,684 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 52 [2018-11-14 18:49:51,684 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:49:51,684 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2018-11-14 18:49:51,687 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 63 transitions. [2018-11-14 18:49:51,687 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2018-11-14 18:49:51,690 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 63 transitions. [2018-11-14 18:49:51,690 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 63 transitions. [2018-11-14 18:49:51,841 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 63 edges. 63 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:49:51,843 INFO L225 Difference]: With dead ends: 63 [2018-11-14 18:49:51,844 INFO L226 Difference]: Without dead ends: 39 [2018-11-14 18:49:51,845 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 55 GetRequests, 52 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=10, Invalid=10, Unknown=0, NotChecked=0, Total=20 [2018-11-14 18:49:51,846 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 39 states. [2018-11-14 18:49:51,863 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 39 to 38. [2018-11-14 18:49:51,864 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:49:51,864 INFO L82 GeneralOperation]: Start isEquivalent. First operand 39 states. Second operand 38 states. [2018-11-14 18:49:51,864 INFO L74 IsIncluded]: Start isIncluded. First operand 39 states. Second operand 38 states. [2018-11-14 18:49:51,864 INFO L87 Difference]: Start difference. First operand 39 states. Second operand 38 states. [2018-11-14 18:49:51,868 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:49:51,868 INFO L93 Difference]: Finished difference Result 39 states and 43 transitions. [2018-11-14 18:49:51,869 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 43 transitions. [2018-11-14 18:49:51,869 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:49:51,869 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:49:51,870 INFO L74 IsIncluded]: Start isIncluded. First operand 38 states. Second operand 39 states. [2018-11-14 18:49:51,870 INFO L87 Difference]: Start difference. First operand 38 states. Second operand 39 states. [2018-11-14 18:49:51,872 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:49:51,873 INFO L93 Difference]: Finished difference Result 39 states and 43 transitions. [2018-11-14 18:49:51,873 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 43 transitions. [2018-11-14 18:49:51,873 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:49:51,873 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:49:51,874 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:49:51,874 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:49:51,874 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 38 states. [2018-11-14 18:49:51,876 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 38 states to 38 states and 42 transitions. [2018-11-14 18:49:51,876 INFO L78 Accepts]: Start accepts. Automaton has 38 states and 42 transitions. Word has length 52 [2018-11-14 18:49:51,877 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:49:51,877 INFO L480 AbstractCegarLoop]: Abstraction has 38 states and 42 transitions. [2018-11-14 18:49:51,877 INFO L481 AbstractCegarLoop]: Interpolant automaton has 5 states. [2018-11-14 18:49:51,877 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 42 transitions. [2018-11-14 18:49:51,878 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2018-11-14 18:49:51,878 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:49:51,878 INFO L375 BasicCegarLoop]: trace histogram [6, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:49:51,879 INFO L423 AbstractCegarLoop]: === Iteration 6 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:49:51,879 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:49:51,879 INFO L82 PathProgramCache]: Analyzing trace with hash -349935993, now seen corresponding path program 2 times [2018-11-14 18:49:51,879 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:49:51,879 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:49:51,880 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:49:51,880 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 18:49:51,881 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:49:51,906 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:49:52,087 INFO L256 TraceCheckUtils]: 0: Hoare triple {1277#true} call ULTIMATE.init(); {1277#true} is VALID [2018-11-14 18:49:52,087 INFO L273 TraceCheckUtils]: 1: Hoare triple {1277#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {1277#true} is VALID [2018-11-14 18:49:52,088 INFO L273 TraceCheckUtils]: 2: Hoare triple {1277#true} assume true; {1277#true} is VALID [2018-11-14 18:49:52,088 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1277#true} {1277#true} #69#return; {1277#true} is VALID [2018-11-14 18:49:52,088 INFO L256 TraceCheckUtils]: 4: Hoare triple {1277#true} call #t~ret12 := main(); {1277#true} is VALID [2018-11-14 18:49:52,089 INFO L273 TraceCheckUtils]: 5: Hoare triple {1277#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {1279#(= main_~i~1 0)} is VALID [2018-11-14 18:49:52,090 INFO L273 TraceCheckUtils]: 6: Hoare triple {1279#(= main_~i~1 0)} assume true; {1279#(= main_~i~1 0)} is VALID [2018-11-14 18:49:52,091 INFO L273 TraceCheckUtils]: 7: Hoare triple {1279#(= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {1279#(= main_~i~1 0)} is VALID [2018-11-14 18:49:52,091 INFO L273 TraceCheckUtils]: 8: Hoare triple {1279#(= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {1280#(<= main_~i~1 1)} is VALID [2018-11-14 18:49:52,092 INFO L273 TraceCheckUtils]: 9: Hoare triple {1280#(<= main_~i~1 1)} assume true; {1280#(<= main_~i~1 1)} is VALID [2018-11-14 18:49:52,092 INFO L273 TraceCheckUtils]: 10: Hoare triple {1280#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {1280#(<= main_~i~1 1)} is VALID [2018-11-14 18:49:52,093 INFO L273 TraceCheckUtils]: 11: Hoare triple {1280#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {1281#(<= main_~i~1 2)} is VALID [2018-11-14 18:49:52,093 INFO L273 TraceCheckUtils]: 12: Hoare triple {1281#(<= main_~i~1 2)} assume true; {1281#(<= main_~i~1 2)} is VALID [2018-11-14 18:49:52,094 INFO L273 TraceCheckUtils]: 13: Hoare triple {1281#(<= main_~i~1 2)} assume !(~i~1 < 20); {1278#false} is VALID [2018-11-14 18:49:52,094 INFO L256 TraceCheckUtils]: 14: Hoare triple {1278#false} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {1277#true} is VALID [2018-11-14 18:49:52,094 INFO L273 TraceCheckUtils]: 15: Hoare triple {1277#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {1277#true} is VALID [2018-11-14 18:49:52,095 INFO L273 TraceCheckUtils]: 16: Hoare triple {1277#true} assume true; {1277#true} is VALID [2018-11-14 18:49:52,095 INFO L273 TraceCheckUtils]: 17: Hoare triple {1277#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {1277#true} is VALID [2018-11-14 18:49:52,095 INFO L273 TraceCheckUtils]: 18: Hoare triple {1277#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {1277#true} is VALID [2018-11-14 18:49:52,096 INFO L273 TraceCheckUtils]: 19: Hoare triple {1277#true} assume true; {1277#true} is VALID [2018-11-14 18:49:52,096 INFO L273 TraceCheckUtils]: 20: Hoare triple {1277#true} assume !(~i~0 < 20); {1277#true} is VALID [2018-11-14 18:49:52,096 INFO L273 TraceCheckUtils]: 21: Hoare triple {1277#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {1277#true} is VALID [2018-11-14 18:49:52,097 INFO L273 TraceCheckUtils]: 22: Hoare triple {1277#true} assume true; {1277#true} is VALID [2018-11-14 18:49:52,097 INFO L268 TraceCheckUtils]: 23: Hoare quadruple {1277#true} {1278#false} #73#return; {1278#false} is VALID [2018-11-14 18:49:52,097 INFO L273 TraceCheckUtils]: 24: Hoare triple {1278#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {1278#false} is VALID [2018-11-14 18:49:52,097 INFO L256 TraceCheckUtils]: 25: Hoare triple {1278#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {1277#true} is VALID [2018-11-14 18:49:52,098 INFO L273 TraceCheckUtils]: 26: Hoare triple {1277#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {1277#true} is VALID [2018-11-14 18:49:52,098 INFO L273 TraceCheckUtils]: 27: Hoare triple {1277#true} assume true; {1277#true} is VALID [2018-11-14 18:49:52,098 INFO L273 TraceCheckUtils]: 28: Hoare triple {1277#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {1277#true} is VALID [2018-11-14 18:49:52,098 INFO L273 TraceCheckUtils]: 29: Hoare triple {1277#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {1277#true} is VALID [2018-11-14 18:49:52,098 INFO L273 TraceCheckUtils]: 30: Hoare triple {1277#true} assume true; {1277#true} is VALID [2018-11-14 18:49:52,099 INFO L273 TraceCheckUtils]: 31: Hoare triple {1277#true} assume !(~i~0 < 20); {1277#true} is VALID [2018-11-14 18:49:52,099 INFO L273 TraceCheckUtils]: 32: Hoare triple {1277#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {1277#true} is VALID [2018-11-14 18:49:52,099 INFO L273 TraceCheckUtils]: 33: Hoare triple {1277#true} assume true; {1277#true} is VALID [2018-11-14 18:49:52,099 INFO L268 TraceCheckUtils]: 34: Hoare quadruple {1277#true} {1278#false} #75#return; {1278#false} is VALID [2018-11-14 18:49:52,099 INFO L273 TraceCheckUtils]: 35: Hoare triple {1278#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {1278#false} is VALID [2018-11-14 18:49:52,100 INFO L273 TraceCheckUtils]: 36: Hoare triple {1278#false} assume true; {1278#false} is VALID [2018-11-14 18:49:52,100 INFO L273 TraceCheckUtils]: 37: Hoare triple {1278#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {1278#false} is VALID [2018-11-14 18:49:52,100 INFO L273 TraceCheckUtils]: 38: Hoare triple {1278#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {1278#false} is VALID [2018-11-14 18:49:52,100 INFO L273 TraceCheckUtils]: 39: Hoare triple {1278#false} assume true; {1278#false} is VALID [2018-11-14 18:49:52,100 INFO L273 TraceCheckUtils]: 40: Hoare triple {1278#false} assume !(~i~2 < 19); {1278#false} is VALID [2018-11-14 18:49:52,100 INFO L273 TraceCheckUtils]: 41: Hoare triple {1278#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {1278#false} is VALID [2018-11-14 18:49:52,101 INFO L256 TraceCheckUtils]: 42: Hoare triple {1278#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {1277#true} is VALID [2018-11-14 18:49:52,101 INFO L273 TraceCheckUtils]: 43: Hoare triple {1277#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {1277#true} is VALID [2018-11-14 18:49:52,101 INFO L273 TraceCheckUtils]: 44: Hoare triple {1277#true} assume true; {1277#true} is VALID [2018-11-14 18:49:52,101 INFO L273 TraceCheckUtils]: 45: Hoare triple {1277#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {1277#true} is VALID [2018-11-14 18:49:52,101 INFO L273 TraceCheckUtils]: 46: Hoare triple {1277#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {1277#true} is VALID [2018-11-14 18:49:52,102 INFO L273 TraceCheckUtils]: 47: Hoare triple {1277#true} assume true; {1277#true} is VALID [2018-11-14 18:49:52,102 INFO L273 TraceCheckUtils]: 48: Hoare triple {1277#true} assume !(~i~0 < 20); {1277#true} is VALID [2018-11-14 18:49:52,102 INFO L273 TraceCheckUtils]: 49: Hoare triple {1277#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {1277#true} is VALID [2018-11-14 18:49:52,102 INFO L273 TraceCheckUtils]: 50: Hoare triple {1277#true} assume true; {1277#true} is VALID [2018-11-14 18:49:52,102 INFO L268 TraceCheckUtils]: 51: Hoare quadruple {1277#true} {1278#false} #77#return; {1278#false} is VALID [2018-11-14 18:49:52,103 INFO L273 TraceCheckUtils]: 52: Hoare triple {1278#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {1278#false} is VALID [2018-11-14 18:49:52,103 INFO L273 TraceCheckUtils]: 53: Hoare triple {1278#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {1278#false} is VALID [2018-11-14 18:49:52,103 INFO L273 TraceCheckUtils]: 54: Hoare triple {1278#false} assume !false; {1278#false} is VALID [2018-11-14 18:49:52,106 INFO L134 CoverageAnalysis]: Checked inductivity of 54 backedges. 0 proven. 7 refuted. 0 times theorem prover too weak. 47 trivial. 0 not checked. [2018-11-14 18:49:52,106 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:49:52,106 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 4 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 4 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:49:52,115 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-14 18:49:52,152 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-14 18:49:52,153 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 18:49:52,169 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:49:52,172 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:49:52,326 INFO L256 TraceCheckUtils]: 0: Hoare triple {1277#true} call ULTIMATE.init(); {1277#true} is VALID [2018-11-14 18:49:52,327 INFO L273 TraceCheckUtils]: 1: Hoare triple {1277#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {1277#true} is VALID [2018-11-14 18:49:52,327 INFO L273 TraceCheckUtils]: 2: Hoare triple {1277#true} assume true; {1277#true} is VALID [2018-11-14 18:49:52,328 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1277#true} {1277#true} #69#return; {1277#true} is VALID [2018-11-14 18:49:52,328 INFO L256 TraceCheckUtils]: 4: Hoare triple {1277#true} call #t~ret12 := main(); {1277#true} is VALID [2018-11-14 18:49:52,336 INFO L273 TraceCheckUtils]: 5: Hoare triple {1277#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {1300#(<= main_~i~1 0)} is VALID [2018-11-14 18:49:52,337 INFO L273 TraceCheckUtils]: 6: Hoare triple {1300#(<= main_~i~1 0)} assume true; {1300#(<= main_~i~1 0)} is VALID [2018-11-14 18:49:52,341 INFO L273 TraceCheckUtils]: 7: Hoare triple {1300#(<= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {1300#(<= main_~i~1 0)} is VALID [2018-11-14 18:49:52,342 INFO L273 TraceCheckUtils]: 8: Hoare triple {1300#(<= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {1280#(<= main_~i~1 1)} is VALID [2018-11-14 18:49:52,342 INFO L273 TraceCheckUtils]: 9: Hoare triple {1280#(<= main_~i~1 1)} assume true; {1280#(<= main_~i~1 1)} is VALID [2018-11-14 18:49:52,342 INFO L273 TraceCheckUtils]: 10: Hoare triple {1280#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {1280#(<= main_~i~1 1)} is VALID [2018-11-14 18:49:52,343 INFO L273 TraceCheckUtils]: 11: Hoare triple {1280#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {1281#(<= main_~i~1 2)} is VALID [2018-11-14 18:49:52,344 INFO L273 TraceCheckUtils]: 12: Hoare triple {1281#(<= main_~i~1 2)} assume true; {1281#(<= main_~i~1 2)} is VALID [2018-11-14 18:49:52,344 INFO L273 TraceCheckUtils]: 13: Hoare triple {1281#(<= main_~i~1 2)} assume !(~i~1 < 20); {1278#false} is VALID [2018-11-14 18:49:52,345 INFO L256 TraceCheckUtils]: 14: Hoare triple {1278#false} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {1278#false} is VALID [2018-11-14 18:49:52,345 INFO L273 TraceCheckUtils]: 15: Hoare triple {1278#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {1278#false} is VALID [2018-11-14 18:49:52,345 INFO L273 TraceCheckUtils]: 16: Hoare triple {1278#false} assume true; {1278#false} is VALID [2018-11-14 18:49:52,346 INFO L273 TraceCheckUtils]: 17: Hoare triple {1278#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {1278#false} is VALID [2018-11-14 18:49:52,346 INFO L273 TraceCheckUtils]: 18: Hoare triple {1278#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {1278#false} is VALID [2018-11-14 18:49:52,346 INFO L273 TraceCheckUtils]: 19: Hoare triple {1278#false} assume true; {1278#false} is VALID [2018-11-14 18:49:52,347 INFO L273 TraceCheckUtils]: 20: Hoare triple {1278#false} assume !(~i~0 < 20); {1278#false} is VALID [2018-11-14 18:49:52,347 INFO L273 TraceCheckUtils]: 21: Hoare triple {1278#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {1278#false} is VALID [2018-11-14 18:49:52,347 INFO L273 TraceCheckUtils]: 22: Hoare triple {1278#false} assume true; {1278#false} is VALID [2018-11-14 18:49:52,348 INFO L268 TraceCheckUtils]: 23: Hoare quadruple {1278#false} {1278#false} #73#return; {1278#false} is VALID [2018-11-14 18:49:52,348 INFO L273 TraceCheckUtils]: 24: Hoare triple {1278#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {1278#false} is VALID [2018-11-14 18:49:52,349 INFO L256 TraceCheckUtils]: 25: Hoare triple {1278#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {1278#false} is VALID [2018-11-14 18:49:52,349 INFO L273 TraceCheckUtils]: 26: Hoare triple {1278#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {1278#false} is VALID [2018-11-14 18:49:52,349 INFO L273 TraceCheckUtils]: 27: Hoare triple {1278#false} assume true; {1278#false} is VALID [2018-11-14 18:49:52,349 INFO L273 TraceCheckUtils]: 28: Hoare triple {1278#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {1278#false} is VALID [2018-11-14 18:49:52,350 INFO L273 TraceCheckUtils]: 29: Hoare triple {1278#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {1278#false} is VALID [2018-11-14 18:49:52,350 INFO L273 TraceCheckUtils]: 30: Hoare triple {1278#false} assume true; {1278#false} is VALID [2018-11-14 18:49:52,350 INFO L273 TraceCheckUtils]: 31: Hoare triple {1278#false} assume !(~i~0 < 20); {1278#false} is VALID [2018-11-14 18:49:52,350 INFO L273 TraceCheckUtils]: 32: Hoare triple {1278#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {1278#false} is VALID [2018-11-14 18:49:52,351 INFO L273 TraceCheckUtils]: 33: Hoare triple {1278#false} assume true; {1278#false} is VALID [2018-11-14 18:49:52,351 INFO L268 TraceCheckUtils]: 34: Hoare quadruple {1278#false} {1278#false} #75#return; {1278#false} is VALID [2018-11-14 18:49:52,351 INFO L273 TraceCheckUtils]: 35: Hoare triple {1278#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {1278#false} is VALID [2018-11-14 18:49:52,351 INFO L273 TraceCheckUtils]: 36: Hoare triple {1278#false} assume true; {1278#false} is VALID [2018-11-14 18:49:52,352 INFO L273 TraceCheckUtils]: 37: Hoare triple {1278#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {1278#false} is VALID [2018-11-14 18:49:52,352 INFO L273 TraceCheckUtils]: 38: Hoare triple {1278#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {1278#false} is VALID [2018-11-14 18:49:52,352 INFO L273 TraceCheckUtils]: 39: Hoare triple {1278#false} assume true; {1278#false} is VALID [2018-11-14 18:49:52,352 INFO L273 TraceCheckUtils]: 40: Hoare triple {1278#false} assume !(~i~2 < 19); {1278#false} is VALID [2018-11-14 18:49:52,353 INFO L273 TraceCheckUtils]: 41: Hoare triple {1278#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {1278#false} is VALID [2018-11-14 18:49:52,353 INFO L256 TraceCheckUtils]: 42: Hoare triple {1278#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {1278#false} is VALID [2018-11-14 18:49:52,353 INFO L273 TraceCheckUtils]: 43: Hoare triple {1278#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {1278#false} is VALID [2018-11-14 18:49:52,353 INFO L273 TraceCheckUtils]: 44: Hoare triple {1278#false} assume true; {1278#false} is VALID [2018-11-14 18:49:52,354 INFO L273 TraceCheckUtils]: 45: Hoare triple {1278#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {1278#false} is VALID [2018-11-14 18:49:52,354 INFO L273 TraceCheckUtils]: 46: Hoare triple {1278#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {1278#false} is VALID [2018-11-14 18:49:52,354 INFO L273 TraceCheckUtils]: 47: Hoare triple {1278#false} assume true; {1278#false} is VALID [2018-11-14 18:49:52,354 INFO L273 TraceCheckUtils]: 48: Hoare triple {1278#false} assume !(~i~0 < 20); {1278#false} is VALID [2018-11-14 18:49:52,355 INFO L273 TraceCheckUtils]: 49: Hoare triple {1278#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {1278#false} is VALID [2018-11-14 18:49:52,355 INFO L273 TraceCheckUtils]: 50: Hoare triple {1278#false} assume true; {1278#false} is VALID [2018-11-14 18:49:52,355 INFO L268 TraceCheckUtils]: 51: Hoare quadruple {1278#false} {1278#false} #77#return; {1278#false} is VALID [2018-11-14 18:49:52,355 INFO L273 TraceCheckUtils]: 52: Hoare triple {1278#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {1278#false} is VALID [2018-11-14 18:49:52,356 INFO L273 TraceCheckUtils]: 53: Hoare triple {1278#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {1278#false} is VALID [2018-11-14 18:49:52,356 INFO L273 TraceCheckUtils]: 54: Hoare triple {1278#false} assume !false; {1278#false} is VALID [2018-11-14 18:49:52,359 INFO L134 CoverageAnalysis]: Checked inductivity of 54 backedges. 0 proven. 7 refuted. 0 times theorem prover too weak. 47 trivial. 0 not checked. [2018-11-14 18:49:52,381 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:49:52,381 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 6 [2018-11-14 18:49:52,381 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 55 [2018-11-14 18:49:52,382 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:49:52,382 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2018-11-14 18:49:52,442 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 54 edges. 54 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:49:52,443 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2018-11-14 18:49:52,443 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2018-11-14 18:49:52,443 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=15, Unknown=0, NotChecked=0, Total=30 [2018-11-14 18:49:52,443 INFO L87 Difference]: Start difference. First operand 38 states and 42 transitions. Second operand 6 states. [2018-11-14 18:49:52,656 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:49:52,657 INFO L93 Difference]: Finished difference Result 66 states and 74 transitions. [2018-11-14 18:49:52,657 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2018-11-14 18:49:52,657 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 55 [2018-11-14 18:49:52,657 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:49:52,657 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-14 18:49:52,660 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 66 transitions. [2018-11-14 18:49:52,660 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-14 18:49:52,662 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 66 transitions. [2018-11-14 18:49:52,662 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 66 transitions. [2018-11-14 18:49:52,807 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 66 edges. 66 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:49:52,809 INFO L225 Difference]: With dead ends: 66 [2018-11-14 18:49:52,809 INFO L226 Difference]: Without dead ends: 42 [2018-11-14 18:49:52,810 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 18:49:52,810 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 42 states. [2018-11-14 18:49:52,833 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 42 to 41. [2018-11-14 18:49:52,833 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:49:52,833 INFO L82 GeneralOperation]: Start isEquivalent. First operand 42 states. Second operand 41 states. [2018-11-14 18:49:52,834 INFO L74 IsIncluded]: Start isIncluded. First operand 42 states. Second operand 41 states. [2018-11-14 18:49:52,834 INFO L87 Difference]: Start difference. First operand 42 states. Second operand 41 states. [2018-11-14 18:49:52,837 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:49:52,837 INFO L93 Difference]: Finished difference Result 42 states and 46 transitions. [2018-11-14 18:49:52,837 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 46 transitions. [2018-11-14 18:49:52,838 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:49:52,838 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:49:52,838 INFO L74 IsIncluded]: Start isIncluded. First operand 41 states. Second operand 42 states. [2018-11-14 18:49:52,838 INFO L87 Difference]: Start difference. First operand 41 states. Second operand 42 states. [2018-11-14 18:49:52,840 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:49:52,841 INFO L93 Difference]: Finished difference Result 42 states and 46 transitions. [2018-11-14 18:49:52,841 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 46 transitions. [2018-11-14 18:49:52,841 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:49:52,842 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:49:52,842 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:49:52,842 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:49:52,842 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 41 states. [2018-11-14 18:49:52,844 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 41 states to 41 states and 45 transitions. [2018-11-14 18:49:52,844 INFO L78 Accepts]: Start accepts. Automaton has 41 states and 45 transitions. Word has length 55 [2018-11-14 18:49:52,845 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:49:52,845 INFO L480 AbstractCegarLoop]: Abstraction has 41 states and 45 transitions. [2018-11-14 18:49:52,845 INFO L481 AbstractCegarLoop]: Interpolant automaton has 6 states. [2018-11-14 18:49:52,845 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 45 transitions. [2018-11-14 18:49:52,846 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2018-11-14 18:49:52,846 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:49:52,846 INFO L375 BasicCegarLoop]: trace histogram [6, 4, 3, 3, 3, 3, 3, 3, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:49:52,846 INFO L423 AbstractCegarLoop]: === Iteration 7 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:49:52,847 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:49:52,847 INFO L82 PathProgramCache]: Analyzing trace with hash -1305179955, now seen corresponding path program 3 times [2018-11-14 18:49:52,847 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:49:52,847 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:49:52,848 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:49:52,848 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 18:49:52,848 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:49:52,871 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:49:52,990 INFO L256 TraceCheckUtils]: 0: Hoare triple {1678#true} call ULTIMATE.init(); {1678#true} is VALID [2018-11-14 18:49:52,990 INFO L273 TraceCheckUtils]: 1: Hoare triple {1678#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {1678#true} is VALID [2018-11-14 18:49:52,990 INFO L273 TraceCheckUtils]: 2: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 18:49:52,991 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1678#true} {1678#true} #69#return; {1678#true} is VALID [2018-11-14 18:49:52,991 INFO L256 TraceCheckUtils]: 4: Hoare triple {1678#true} call #t~ret12 := main(); {1678#true} is VALID [2018-11-14 18:49:52,992 INFO L273 TraceCheckUtils]: 5: Hoare triple {1678#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {1680#(= main_~i~1 0)} is VALID [2018-11-14 18:49:52,992 INFO L273 TraceCheckUtils]: 6: Hoare triple {1680#(= main_~i~1 0)} assume true; {1680#(= main_~i~1 0)} is VALID [2018-11-14 18:49:52,993 INFO L273 TraceCheckUtils]: 7: Hoare triple {1680#(= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {1680#(= main_~i~1 0)} is VALID [2018-11-14 18:49:52,995 INFO L273 TraceCheckUtils]: 8: Hoare triple {1680#(= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {1681#(<= main_~i~1 1)} is VALID [2018-11-14 18:49:52,996 INFO L273 TraceCheckUtils]: 9: Hoare triple {1681#(<= main_~i~1 1)} assume true; {1681#(<= main_~i~1 1)} is VALID [2018-11-14 18:49:52,997 INFO L273 TraceCheckUtils]: 10: Hoare triple {1681#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {1681#(<= main_~i~1 1)} is VALID [2018-11-14 18:49:52,997 INFO L273 TraceCheckUtils]: 11: Hoare triple {1681#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {1682#(<= main_~i~1 2)} is VALID [2018-11-14 18:49:52,999 INFO L273 TraceCheckUtils]: 12: Hoare triple {1682#(<= main_~i~1 2)} assume true; {1682#(<= main_~i~1 2)} is VALID [2018-11-14 18:49:52,999 INFO L273 TraceCheckUtils]: 13: Hoare triple {1682#(<= main_~i~1 2)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {1682#(<= main_~i~1 2)} is VALID [2018-11-14 18:49:53,001 INFO L273 TraceCheckUtils]: 14: Hoare triple {1682#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {1683#(<= main_~i~1 3)} is VALID [2018-11-14 18:49:53,001 INFO L273 TraceCheckUtils]: 15: Hoare triple {1683#(<= main_~i~1 3)} assume true; {1683#(<= main_~i~1 3)} is VALID [2018-11-14 18:49:53,003 INFO L273 TraceCheckUtils]: 16: Hoare triple {1683#(<= main_~i~1 3)} assume !(~i~1 < 20); {1679#false} is VALID [2018-11-14 18:49:53,003 INFO L256 TraceCheckUtils]: 17: Hoare triple {1679#false} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {1678#true} is VALID [2018-11-14 18:49:53,003 INFO L273 TraceCheckUtils]: 18: Hoare triple {1678#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {1678#true} is VALID [2018-11-14 18:49:53,003 INFO L273 TraceCheckUtils]: 19: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 18:49:53,003 INFO L273 TraceCheckUtils]: 20: Hoare triple {1678#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {1678#true} is VALID [2018-11-14 18:49:53,004 INFO L273 TraceCheckUtils]: 21: Hoare triple {1678#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {1678#true} is VALID [2018-11-14 18:49:53,004 INFO L273 TraceCheckUtils]: 22: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 18:49:53,004 INFO L273 TraceCheckUtils]: 23: Hoare triple {1678#true} assume !(~i~0 < 20); {1678#true} is VALID [2018-11-14 18:49:53,004 INFO L273 TraceCheckUtils]: 24: Hoare triple {1678#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {1678#true} is VALID [2018-11-14 18:49:53,004 INFO L273 TraceCheckUtils]: 25: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 18:49:53,005 INFO L268 TraceCheckUtils]: 26: Hoare quadruple {1678#true} {1679#false} #73#return; {1679#false} is VALID [2018-11-14 18:49:53,005 INFO L273 TraceCheckUtils]: 27: Hoare triple {1679#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {1679#false} is VALID [2018-11-14 18:49:53,005 INFO L256 TraceCheckUtils]: 28: Hoare triple {1679#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {1678#true} is VALID [2018-11-14 18:49:53,005 INFO L273 TraceCheckUtils]: 29: Hoare triple {1678#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {1678#true} is VALID [2018-11-14 18:49:53,005 INFO L273 TraceCheckUtils]: 30: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 18:49:53,005 INFO L273 TraceCheckUtils]: 31: Hoare triple {1678#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {1678#true} is VALID [2018-11-14 18:49:53,006 INFO L273 TraceCheckUtils]: 32: Hoare triple {1678#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {1678#true} is VALID [2018-11-14 18:49:53,006 INFO L273 TraceCheckUtils]: 33: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 18:49:53,006 INFO L273 TraceCheckUtils]: 34: Hoare triple {1678#true} assume !(~i~0 < 20); {1678#true} is VALID [2018-11-14 18:49:53,006 INFO L273 TraceCheckUtils]: 35: Hoare triple {1678#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {1678#true} is VALID [2018-11-14 18:49:53,006 INFO L273 TraceCheckUtils]: 36: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 18:49:53,006 INFO L268 TraceCheckUtils]: 37: Hoare quadruple {1678#true} {1679#false} #75#return; {1679#false} is VALID [2018-11-14 18:49:53,007 INFO L273 TraceCheckUtils]: 38: Hoare triple {1679#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {1679#false} is VALID [2018-11-14 18:49:53,007 INFO L273 TraceCheckUtils]: 39: Hoare triple {1679#false} assume true; {1679#false} is VALID [2018-11-14 18:49:53,007 INFO L273 TraceCheckUtils]: 40: Hoare triple {1679#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {1679#false} is VALID [2018-11-14 18:49:53,007 INFO L273 TraceCheckUtils]: 41: Hoare triple {1679#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {1679#false} is VALID [2018-11-14 18:49:53,007 INFO L273 TraceCheckUtils]: 42: Hoare triple {1679#false} assume true; {1679#false} is VALID [2018-11-14 18:49:53,007 INFO L273 TraceCheckUtils]: 43: Hoare triple {1679#false} assume !(~i~2 < 19); {1679#false} is VALID [2018-11-14 18:49:53,008 INFO L273 TraceCheckUtils]: 44: Hoare triple {1679#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {1679#false} is VALID [2018-11-14 18:49:53,008 INFO L256 TraceCheckUtils]: 45: Hoare triple {1679#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {1678#true} is VALID [2018-11-14 18:49:53,008 INFO L273 TraceCheckUtils]: 46: Hoare triple {1678#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {1678#true} is VALID [2018-11-14 18:49:53,008 INFO L273 TraceCheckUtils]: 47: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 18:49:53,008 INFO L273 TraceCheckUtils]: 48: Hoare triple {1678#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {1678#true} is VALID [2018-11-14 18:49:53,008 INFO L273 TraceCheckUtils]: 49: Hoare triple {1678#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {1678#true} is VALID [2018-11-14 18:49:53,009 INFO L273 TraceCheckUtils]: 50: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 18:49:53,009 INFO L273 TraceCheckUtils]: 51: Hoare triple {1678#true} assume !(~i~0 < 20); {1678#true} is VALID [2018-11-14 18:49:53,009 INFO L273 TraceCheckUtils]: 52: Hoare triple {1678#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {1678#true} is VALID [2018-11-14 18:49:53,009 INFO L273 TraceCheckUtils]: 53: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 18:49:53,009 INFO L268 TraceCheckUtils]: 54: Hoare quadruple {1678#true} {1679#false} #77#return; {1679#false} is VALID [2018-11-14 18:49:53,009 INFO L273 TraceCheckUtils]: 55: Hoare triple {1679#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {1679#false} is VALID [2018-11-14 18:49:53,010 INFO L273 TraceCheckUtils]: 56: Hoare triple {1679#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {1679#false} is VALID [2018-11-14 18:49:53,010 INFO L273 TraceCheckUtils]: 57: Hoare triple {1679#false} assume !false; {1679#false} is VALID [2018-11-14 18:49:53,013 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 0 proven. 15 refuted. 0 times theorem prover too weak. 47 trivial. 0 not checked. [2018-11-14 18:49:53,013 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:49:53,013 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 5 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 5 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:49:53,023 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-14 18:49:53,068 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 2 check-sat command(s) [2018-11-14 18:49:53,069 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 18:49:53,101 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:49:53,103 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:49:53,818 INFO L256 TraceCheckUtils]: 0: Hoare triple {1678#true} call ULTIMATE.init(); {1678#true} is VALID [2018-11-14 18:49:53,818 INFO L273 TraceCheckUtils]: 1: Hoare triple {1678#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {1678#true} is VALID [2018-11-14 18:49:53,818 INFO L273 TraceCheckUtils]: 2: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 18:49:53,819 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1678#true} {1678#true} #69#return; {1678#true} is VALID [2018-11-14 18:49:53,819 INFO L256 TraceCheckUtils]: 4: Hoare triple {1678#true} call #t~ret12 := main(); {1678#true} is VALID [2018-11-14 18:49:53,819 INFO L273 TraceCheckUtils]: 5: Hoare triple {1678#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {1678#true} is VALID [2018-11-14 18:49:53,819 INFO L273 TraceCheckUtils]: 6: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 18:49:53,819 INFO L273 TraceCheckUtils]: 7: Hoare triple {1678#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {1678#true} is VALID [2018-11-14 18:49:53,820 INFO L273 TraceCheckUtils]: 8: Hoare triple {1678#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {1678#true} is VALID [2018-11-14 18:49:53,820 INFO L273 TraceCheckUtils]: 9: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 18:49:53,820 INFO L273 TraceCheckUtils]: 10: Hoare triple {1678#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {1678#true} is VALID [2018-11-14 18:49:53,821 INFO L273 TraceCheckUtils]: 11: Hoare triple {1678#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {1678#true} is VALID [2018-11-14 18:49:53,821 INFO L273 TraceCheckUtils]: 12: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 18:49:53,821 INFO L273 TraceCheckUtils]: 13: Hoare triple {1678#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {1678#true} is VALID [2018-11-14 18:49:53,821 INFO L273 TraceCheckUtils]: 14: Hoare triple {1678#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {1678#true} is VALID [2018-11-14 18:49:53,822 INFO L273 TraceCheckUtils]: 15: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 18:49:53,822 INFO L273 TraceCheckUtils]: 16: Hoare triple {1678#true} assume !(~i~1 < 20); {1678#true} is VALID [2018-11-14 18:49:53,822 INFO L256 TraceCheckUtils]: 17: Hoare triple {1678#true} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {1678#true} is VALID [2018-11-14 18:49:53,822 INFO L273 TraceCheckUtils]: 18: Hoare triple {1678#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {1678#true} is VALID [2018-11-14 18:49:53,822 INFO L273 TraceCheckUtils]: 19: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 18:49:53,822 INFO L273 TraceCheckUtils]: 20: Hoare triple {1678#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {1678#true} is VALID [2018-11-14 18:49:53,822 INFO L273 TraceCheckUtils]: 21: Hoare triple {1678#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {1678#true} is VALID [2018-11-14 18:49:53,823 INFO L273 TraceCheckUtils]: 22: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 18:49:53,823 INFO L273 TraceCheckUtils]: 23: Hoare triple {1678#true} assume !(~i~0 < 20); {1678#true} is VALID [2018-11-14 18:49:53,823 INFO L273 TraceCheckUtils]: 24: Hoare triple {1678#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {1678#true} is VALID [2018-11-14 18:49:53,823 INFO L273 TraceCheckUtils]: 25: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 18:49:53,823 INFO L268 TraceCheckUtils]: 26: Hoare quadruple {1678#true} {1678#true} #73#return; {1678#true} is VALID [2018-11-14 18:49:53,823 INFO L273 TraceCheckUtils]: 27: Hoare triple {1678#true} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {1678#true} is VALID [2018-11-14 18:49:53,823 INFO L256 TraceCheckUtils]: 28: Hoare triple {1678#true} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {1678#true} is VALID [2018-11-14 18:49:53,824 INFO L273 TraceCheckUtils]: 29: Hoare triple {1678#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {1678#true} is VALID [2018-11-14 18:49:53,824 INFO L273 TraceCheckUtils]: 30: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 18:49:53,824 INFO L273 TraceCheckUtils]: 31: Hoare triple {1678#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {1678#true} is VALID [2018-11-14 18:49:53,824 INFO L273 TraceCheckUtils]: 32: Hoare triple {1678#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {1678#true} is VALID [2018-11-14 18:49:53,824 INFO L273 TraceCheckUtils]: 33: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 18:49:53,824 INFO L273 TraceCheckUtils]: 34: Hoare triple {1678#true} assume !(~i~0 < 20); {1678#true} is VALID [2018-11-14 18:49:53,824 INFO L273 TraceCheckUtils]: 35: Hoare triple {1678#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {1678#true} is VALID [2018-11-14 18:49:53,824 INFO L273 TraceCheckUtils]: 36: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 18:49:53,825 INFO L268 TraceCheckUtils]: 37: Hoare quadruple {1678#true} {1678#true} #75#return; {1678#true} is VALID [2018-11-14 18:49:53,825 INFO L273 TraceCheckUtils]: 38: Hoare triple {1678#true} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {1678#true} is VALID [2018-11-14 18:49:53,825 INFO L273 TraceCheckUtils]: 39: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 18:49:53,825 INFO L273 TraceCheckUtils]: 40: Hoare triple {1678#true} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {1678#true} is VALID [2018-11-14 18:49:53,825 INFO L273 TraceCheckUtils]: 41: Hoare triple {1678#true} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {1678#true} is VALID [2018-11-14 18:49:53,825 INFO L273 TraceCheckUtils]: 42: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 18:49:53,826 INFO L273 TraceCheckUtils]: 43: Hoare triple {1678#true} assume !(~i~2 < 19); {1678#true} is VALID [2018-11-14 18:49:53,826 INFO L273 TraceCheckUtils]: 44: Hoare triple {1678#true} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {1678#true} is VALID [2018-11-14 18:49:53,826 INFO L256 TraceCheckUtils]: 45: Hoare triple {1678#true} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {1678#true} is VALID [2018-11-14 18:49:53,839 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#(<= avg_~i~0 0)} is VALID [2018-11-14 18:49:53,841 INFO L273 TraceCheckUtils]: 47: Hoare triple {1825#(<= avg_~i~0 0)} assume true; {1825#(<= avg_~i~0 0)} is VALID [2018-11-14 18:49:53,843 INFO L273 TraceCheckUtils]: 48: Hoare triple {1825#(<= avg_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {1825#(<= avg_~i~0 0)} is VALID [2018-11-14 18:49:53,844 INFO L273 TraceCheckUtils]: 49: Hoare triple {1825#(<= avg_~i~0 0)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {1835#(<= avg_~i~0 1)} is VALID [2018-11-14 18:49:53,845 INFO L273 TraceCheckUtils]: 50: Hoare triple {1835#(<= avg_~i~0 1)} assume true; {1835#(<= avg_~i~0 1)} is VALID [2018-11-14 18:49:53,845 INFO L273 TraceCheckUtils]: 51: Hoare triple {1835#(<= avg_~i~0 1)} assume !(~i~0 < 20); {1679#false} is VALID [2018-11-14 18:49:53,846 INFO L273 TraceCheckUtils]: 52: Hoare triple {1679#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {1679#false} is VALID [2018-11-14 18:49:53,846 INFO L273 TraceCheckUtils]: 53: Hoare triple {1679#false} assume true; {1679#false} is VALID [2018-11-14 18:49:53,846 INFO L268 TraceCheckUtils]: 54: Hoare quadruple {1679#false} {1678#true} #77#return; {1679#false} is VALID [2018-11-14 18:49:53,846 INFO L273 TraceCheckUtils]: 55: Hoare triple {1679#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {1679#false} is VALID [2018-11-14 18:49:53,846 INFO L273 TraceCheckUtils]: 56: Hoare triple {1679#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {1679#false} is VALID [2018-11-14 18:49:53,847 INFO L273 TraceCheckUtils]: 57: Hoare triple {1679#false} assume !false; {1679#false} is VALID [2018-11-14 18:49:53,848 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 24 proven. 2 refuted. 0 times theorem prover too weak. 36 trivial. 0 not checked. [2018-11-14 18:49:53,878 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:49:53,878 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 4] total 8 [2018-11-14 18:49:53,880 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 58 [2018-11-14 18:49:53,881 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:49:53,882 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states. [2018-11-14 18:49:54,026 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 66 edges. 66 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:49:54,026 INFO L459 AbstractCegarLoop]: Interpolant automaton has 8 states [2018-11-14 18:49:54,026 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2018-11-14 18:49:54,027 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2018-11-14 18:49:54,027 INFO L87 Difference]: Start difference. First operand 41 states and 45 transitions. Second operand 8 states. [2018-11-14 18:49:54,425 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:49:54,425 INFO L93 Difference]: Finished difference Result 73 states and 85 transitions. [2018-11-14 18:49:54,425 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2018-11-14 18:49:54,426 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 58 [2018-11-14 18:49:54,426 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:49:54,426 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2018-11-14 18:49:54,428 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 79 transitions. [2018-11-14 18:49:54,428 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2018-11-14 18:49:54,431 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 79 transitions. [2018-11-14 18:49:54,431 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 79 transitions. [2018-11-14 18:49:54,545 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 79 edges. 79 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:49:54,547 INFO L225 Difference]: With dead ends: 73 [2018-11-14 18:49:54,548 INFO L226 Difference]: Without dead ends: 49 [2018-11-14 18:49:54,549 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 63 GetRequests, 57 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 6 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2018-11-14 18:49:54,549 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 49 states. [2018-11-14 18:49:54,574 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 49 to 47. [2018-11-14 18:49:54,574 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:49:54,574 INFO L82 GeneralOperation]: Start isEquivalent. First operand 49 states. Second operand 47 states. [2018-11-14 18:49:54,575 INFO L74 IsIncluded]: Start isIncluded. First operand 49 states. Second operand 47 states. [2018-11-14 18:49:54,575 INFO L87 Difference]: Start difference. First operand 49 states. Second operand 47 states. [2018-11-14 18:49:54,577 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:49:54,578 INFO L93 Difference]: Finished difference Result 49 states and 53 transitions. [2018-11-14 18:49:54,578 INFO L276 IsEmpty]: Start isEmpty. Operand 49 states and 53 transitions. [2018-11-14 18:49:54,578 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:49:54,578 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:49:54,579 INFO L74 IsIncluded]: Start isIncluded. First operand 47 states. Second operand 49 states. [2018-11-14 18:49:54,579 INFO L87 Difference]: Start difference. First operand 47 states. Second operand 49 states. [2018-11-14 18:49:54,581 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:49:54,581 INFO L93 Difference]: Finished difference Result 49 states and 53 transitions. [2018-11-14 18:49:54,582 INFO L276 IsEmpty]: Start isEmpty. Operand 49 states and 53 transitions. [2018-11-14 18:49:54,582 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:49:54,582 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:49:54,582 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:49:54,583 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:49:54,583 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 47 states. [2018-11-14 18:49:54,585 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 47 states to 47 states and 51 transitions. [2018-11-14 18:49:54,585 INFO L78 Accepts]: Start accepts. Automaton has 47 states and 51 transitions. Word has length 58 [2018-11-14 18:49:54,585 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:49:54,585 INFO L480 AbstractCegarLoop]: Abstraction has 47 states and 51 transitions. [2018-11-14 18:49:54,585 INFO L481 AbstractCegarLoop]: Interpolant automaton has 8 states. [2018-11-14 18:49:54,586 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 51 transitions. [2018-11-14 18:49:54,586 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 71 [2018-11-14 18:49:54,586 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:49:54,587 INFO L375 BasicCegarLoop]: trace histogram [9, 6, 6, 5, 4, 4, 3, 3, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:49:54,587 INFO L423 AbstractCegarLoop]: === Iteration 8 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:49:54,587 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:49:54,587 INFO L82 PathProgramCache]: Analyzing trace with hash 375282389, now seen corresponding path program 4 times [2018-11-14 18:49:54,588 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:49:54,588 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:49:54,589 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:49:54,589 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 18:49:54,589 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:49:54,613 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:49:55,200 INFO L256 TraceCheckUtils]: 0: Hoare triple {2121#true} call ULTIMATE.init(); {2121#true} is VALID [2018-11-14 18:49:55,200 INFO L273 TraceCheckUtils]: 1: Hoare triple {2121#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {2121#true} is VALID [2018-11-14 18:49:55,201 INFO L273 TraceCheckUtils]: 2: Hoare triple {2121#true} assume true; {2121#true} is VALID [2018-11-14 18:49:55,201 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2121#true} {2121#true} #69#return; {2121#true} is VALID [2018-11-14 18:49:55,202 INFO L256 TraceCheckUtils]: 4: Hoare triple {2121#true} call #t~ret12 := main(); {2121#true} is VALID [2018-11-14 18:49:55,203 INFO L273 TraceCheckUtils]: 5: Hoare triple {2121#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {2123#(= main_~i~1 0)} is VALID [2018-11-14 18:49:55,203 INFO L273 TraceCheckUtils]: 6: Hoare triple {2123#(= main_~i~1 0)} assume true; {2123#(= main_~i~1 0)} is VALID [2018-11-14 18:49:55,204 INFO L273 TraceCheckUtils]: 7: Hoare triple {2123#(= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {2123#(= main_~i~1 0)} is VALID [2018-11-14 18:49:55,205 INFO L273 TraceCheckUtils]: 8: Hoare triple {2123#(= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {2124#(<= main_~i~1 1)} is VALID [2018-11-14 18:49:55,205 INFO L273 TraceCheckUtils]: 9: Hoare triple {2124#(<= main_~i~1 1)} assume true; {2124#(<= main_~i~1 1)} is VALID [2018-11-14 18:49:55,206 INFO L273 TraceCheckUtils]: 10: Hoare triple {2124#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {2124#(<= main_~i~1 1)} is VALID [2018-11-14 18:49:55,207 INFO L273 TraceCheckUtils]: 11: Hoare triple {2124#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {2125#(<= main_~i~1 2)} is VALID [2018-11-14 18:49:55,207 INFO L273 TraceCheckUtils]: 12: Hoare triple {2125#(<= main_~i~1 2)} assume true; {2125#(<= main_~i~1 2)} is VALID [2018-11-14 18:49:55,208 INFO L273 TraceCheckUtils]: 13: Hoare triple {2125#(<= main_~i~1 2)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {2125#(<= main_~i~1 2)} is VALID [2018-11-14 18:49:55,216 INFO L273 TraceCheckUtils]: 14: Hoare triple {2125#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {2126#(<= main_~i~1 3)} is VALID [2018-11-14 18:49:55,216 INFO L273 TraceCheckUtils]: 15: Hoare triple {2126#(<= main_~i~1 3)} assume true; {2126#(<= main_~i~1 3)} is VALID [2018-11-14 18:49:55,217 INFO L273 TraceCheckUtils]: 16: Hoare triple {2126#(<= main_~i~1 3)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {2126#(<= main_~i~1 3)} is VALID [2018-11-14 18:49:55,217 INFO L273 TraceCheckUtils]: 17: Hoare triple {2126#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {2127#(<= main_~i~1 4)} is VALID [2018-11-14 18:49:55,218 INFO L273 TraceCheckUtils]: 18: Hoare triple {2127#(<= main_~i~1 4)} assume true; {2127#(<= main_~i~1 4)} is VALID [2018-11-14 18:49:55,218 INFO L273 TraceCheckUtils]: 19: Hoare triple {2127#(<= main_~i~1 4)} assume !(~i~1 < 20); {2122#false} is VALID [2018-11-14 18:49:55,218 INFO L256 TraceCheckUtils]: 20: Hoare triple {2122#false} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {2121#true} is VALID [2018-11-14 18:49:55,219 INFO L273 TraceCheckUtils]: 21: Hoare triple {2121#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {2121#true} is VALID [2018-11-14 18:49:55,219 INFO L273 TraceCheckUtils]: 22: Hoare triple {2121#true} assume true; {2121#true} is VALID [2018-11-14 18:49:55,219 INFO L273 TraceCheckUtils]: 23: Hoare triple {2121#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {2121#true} is VALID [2018-11-14 18:49:55,219 INFO L273 TraceCheckUtils]: 24: Hoare triple {2121#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {2121#true} is VALID [2018-11-14 18:49:55,219 INFO L273 TraceCheckUtils]: 25: Hoare triple {2121#true} assume true; {2121#true} is VALID [2018-11-14 18:49:55,219 INFO L273 TraceCheckUtils]: 26: Hoare triple {2121#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {2121#true} is VALID [2018-11-14 18:49:55,220 INFO L273 TraceCheckUtils]: 27: Hoare triple {2121#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {2121#true} is VALID [2018-11-14 18:49:55,220 INFO L273 TraceCheckUtils]: 28: Hoare triple {2121#true} assume true; {2121#true} is VALID [2018-11-14 18:49:55,220 INFO L273 TraceCheckUtils]: 29: Hoare triple {2121#true} assume !(~i~0 < 20); {2121#true} is VALID [2018-11-14 18:49:55,220 INFO L273 TraceCheckUtils]: 30: Hoare triple {2121#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {2121#true} is VALID [2018-11-14 18:49:55,220 INFO L273 TraceCheckUtils]: 31: Hoare triple {2121#true} assume true; {2121#true} is VALID [2018-11-14 18:49:55,220 INFO L268 TraceCheckUtils]: 32: Hoare quadruple {2121#true} {2122#false} #73#return; {2122#false} is VALID [2018-11-14 18:49:55,221 INFO L273 TraceCheckUtils]: 33: Hoare triple {2122#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {2122#false} is VALID [2018-11-14 18:49:55,221 INFO L256 TraceCheckUtils]: 34: Hoare triple {2122#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {2121#true} is VALID [2018-11-14 18:49:55,221 INFO L273 TraceCheckUtils]: 35: Hoare triple {2121#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {2121#true} is VALID [2018-11-14 18:49:55,221 INFO L273 TraceCheckUtils]: 36: Hoare triple {2121#true} assume true; {2121#true} is VALID [2018-11-14 18:49:55,221 INFO L273 TraceCheckUtils]: 37: Hoare triple {2121#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {2121#true} is VALID [2018-11-14 18:49:55,221 INFO L273 TraceCheckUtils]: 38: Hoare triple {2121#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {2121#true} is VALID [2018-11-14 18:49:55,222 INFO L273 TraceCheckUtils]: 39: Hoare triple {2121#true} assume true; {2121#true} is VALID [2018-11-14 18:49:55,222 INFO L273 TraceCheckUtils]: 40: Hoare triple {2121#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {2121#true} is VALID [2018-11-14 18:49:55,222 INFO L273 TraceCheckUtils]: 41: Hoare triple {2121#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {2121#true} is VALID [2018-11-14 18:49:55,222 INFO L273 TraceCheckUtils]: 42: Hoare triple {2121#true} assume true; {2121#true} is VALID [2018-11-14 18:49:55,222 INFO L273 TraceCheckUtils]: 43: Hoare triple {2121#true} assume !(~i~0 < 20); {2121#true} is VALID [2018-11-14 18:49:55,223 INFO L273 TraceCheckUtils]: 44: Hoare triple {2121#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {2121#true} is VALID [2018-11-14 18:49:55,223 INFO L273 TraceCheckUtils]: 45: Hoare triple {2121#true} assume true; {2121#true} is VALID [2018-11-14 18:49:55,223 INFO L268 TraceCheckUtils]: 46: Hoare quadruple {2121#true} {2122#false} #75#return; {2122#false} is VALID [2018-11-14 18:49:55,223 INFO L273 TraceCheckUtils]: 47: Hoare triple {2122#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {2122#false} is VALID [2018-11-14 18:49:55,224 INFO L273 TraceCheckUtils]: 48: Hoare triple {2122#false} assume true; {2122#false} is VALID [2018-11-14 18:49:55,224 INFO L273 TraceCheckUtils]: 49: Hoare triple {2122#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {2122#false} is VALID [2018-11-14 18:49:55,224 INFO L273 TraceCheckUtils]: 50: Hoare triple {2122#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {2122#false} is VALID [2018-11-14 18:49:55,224 INFO L273 TraceCheckUtils]: 51: Hoare triple {2122#false} assume true; {2122#false} is VALID [2018-11-14 18:49:55,224 INFO L273 TraceCheckUtils]: 52: Hoare triple {2122#false} assume !(~i~2 < 19); {2122#false} is VALID [2018-11-14 18:49:55,225 INFO L273 TraceCheckUtils]: 53: Hoare triple {2122#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {2122#false} is VALID [2018-11-14 18:49:55,225 INFO L256 TraceCheckUtils]: 54: Hoare triple {2122#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {2121#true} is VALID [2018-11-14 18:49:55,225 INFO L273 TraceCheckUtils]: 55: Hoare triple {2121#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {2121#true} is VALID [2018-11-14 18:49:55,225 INFO L273 TraceCheckUtils]: 56: Hoare triple {2121#true} assume true; {2121#true} is VALID [2018-11-14 18:49:55,225 INFO L273 TraceCheckUtils]: 57: Hoare triple {2121#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {2121#true} is VALID [2018-11-14 18:49:55,225 INFO L273 TraceCheckUtils]: 58: Hoare triple {2121#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {2121#true} is VALID [2018-11-14 18:49:55,225 INFO L273 TraceCheckUtils]: 59: Hoare triple {2121#true} assume true; {2121#true} is VALID [2018-11-14 18:49:55,226 INFO L273 TraceCheckUtils]: 60: Hoare triple {2121#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {2121#true} is VALID [2018-11-14 18:49:55,226 INFO L273 TraceCheckUtils]: 61: Hoare triple {2121#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {2121#true} is VALID [2018-11-14 18:49:55,226 INFO L273 TraceCheckUtils]: 62: Hoare triple {2121#true} assume true; {2121#true} is VALID [2018-11-14 18:49:55,226 INFO L273 TraceCheckUtils]: 63: Hoare triple {2121#true} assume !(~i~0 < 20); {2121#true} is VALID [2018-11-14 18:49:55,226 INFO L273 TraceCheckUtils]: 64: Hoare triple {2121#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {2121#true} is VALID [2018-11-14 18:49:55,226 INFO L273 TraceCheckUtils]: 65: Hoare triple {2121#true} assume true; {2121#true} is VALID [2018-11-14 18:49:55,227 INFO L268 TraceCheckUtils]: 66: Hoare quadruple {2121#true} {2122#false} #77#return; {2122#false} is VALID [2018-11-14 18:49:55,227 INFO L273 TraceCheckUtils]: 67: Hoare triple {2122#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {2122#false} is VALID [2018-11-14 18:49:55,227 INFO L273 TraceCheckUtils]: 68: Hoare triple {2122#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {2122#false} is VALID [2018-11-14 18:49:55,227 INFO L273 TraceCheckUtils]: 69: Hoare triple {2122#false} assume !false; {2122#false} is VALID [2018-11-14 18:49:55,232 INFO L134 CoverageAnalysis]: Checked inductivity of 127 backedges. 0 proven. 26 refuted. 0 times theorem prover too weak. 101 trivial. 0 not checked. [2018-11-14 18:49:55,232 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:49:55,232 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 6 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 6 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:49:55,242 INFO L103 rtionOrderModulation]: Keeping assertion order TERMS_WITH_SMALL_CONSTANTS_FIRST [2018-11-14 18:49:55,280 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2018-11-14 18:49:55,280 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 18:49:55,307 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:49:55,309 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:49:55,664 INFO L256 TraceCheckUtils]: 0: Hoare triple {2121#true} call ULTIMATE.init(); {2121#true} is VALID [2018-11-14 18:49:55,665 INFO L273 TraceCheckUtils]: 1: Hoare triple {2121#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {2121#true} is VALID [2018-11-14 18:49:55,665 INFO L273 TraceCheckUtils]: 2: Hoare triple {2121#true} assume true; {2121#true} is VALID [2018-11-14 18:49:55,665 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2121#true} {2121#true} #69#return; {2121#true} is VALID [2018-11-14 18:49:55,665 INFO L256 TraceCheckUtils]: 4: Hoare triple {2121#true} call #t~ret12 := main(); {2121#true} is VALID [2018-11-14 18:49:55,666 INFO L273 TraceCheckUtils]: 5: Hoare triple {2121#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {2146#(<= main_~i~1 0)} is VALID [2018-11-14 18:49:55,667 INFO L273 TraceCheckUtils]: 6: Hoare triple {2146#(<= main_~i~1 0)} assume true; {2146#(<= main_~i~1 0)} is VALID [2018-11-14 18:49:55,667 INFO L273 TraceCheckUtils]: 7: Hoare triple {2146#(<= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {2146#(<= main_~i~1 0)} is VALID [2018-11-14 18:49:55,668 INFO L273 TraceCheckUtils]: 8: Hoare triple {2146#(<= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {2124#(<= main_~i~1 1)} is VALID [2018-11-14 18:49:55,668 INFO L273 TraceCheckUtils]: 9: Hoare triple {2124#(<= main_~i~1 1)} assume true; {2124#(<= main_~i~1 1)} is VALID [2018-11-14 18:49:55,668 INFO L273 TraceCheckUtils]: 10: Hoare triple {2124#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {2124#(<= main_~i~1 1)} is VALID [2018-11-14 18:49:55,669 INFO L273 TraceCheckUtils]: 11: Hoare triple {2124#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {2125#(<= main_~i~1 2)} is VALID [2018-11-14 18:49:55,669 INFO L273 TraceCheckUtils]: 12: Hoare triple {2125#(<= main_~i~1 2)} assume true; {2125#(<= main_~i~1 2)} is VALID [2018-11-14 18:49:55,670 INFO L273 TraceCheckUtils]: 13: Hoare triple {2125#(<= main_~i~1 2)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {2125#(<= main_~i~1 2)} is VALID [2018-11-14 18:49:55,670 INFO L273 TraceCheckUtils]: 14: Hoare triple {2125#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {2126#(<= main_~i~1 3)} is VALID [2018-11-14 18:49:55,671 INFO L273 TraceCheckUtils]: 15: Hoare triple {2126#(<= main_~i~1 3)} assume true; {2126#(<= main_~i~1 3)} is VALID [2018-11-14 18:49:55,671 INFO L273 TraceCheckUtils]: 16: Hoare triple {2126#(<= main_~i~1 3)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {2126#(<= main_~i~1 3)} is VALID [2018-11-14 18:49:55,672 INFO L273 TraceCheckUtils]: 17: Hoare triple {2126#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {2127#(<= main_~i~1 4)} is VALID [2018-11-14 18:49:55,673 INFO L273 TraceCheckUtils]: 18: Hoare triple {2127#(<= main_~i~1 4)} assume true; {2127#(<= main_~i~1 4)} is VALID [2018-11-14 18:49:55,673 INFO L273 TraceCheckUtils]: 19: Hoare triple {2127#(<= main_~i~1 4)} assume !(~i~1 < 20); {2122#false} is VALID [2018-11-14 18:49:55,674 INFO L256 TraceCheckUtils]: 20: Hoare triple {2122#false} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {2122#false} is VALID [2018-11-14 18:49:55,674 INFO L273 TraceCheckUtils]: 21: Hoare triple {2122#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {2122#false} is VALID [2018-11-14 18:49:55,674 INFO L273 TraceCheckUtils]: 22: Hoare triple {2122#false} assume true; {2122#false} is VALID [2018-11-14 18:49:55,674 INFO L273 TraceCheckUtils]: 23: Hoare triple {2122#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {2122#false} is VALID [2018-11-14 18:49:55,674 INFO L273 TraceCheckUtils]: 24: Hoare triple {2122#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {2122#false} is VALID [2018-11-14 18:49:55,675 INFO L273 TraceCheckUtils]: 25: Hoare triple {2122#false} assume true; {2122#false} is VALID [2018-11-14 18:49:55,675 INFO L273 TraceCheckUtils]: 26: Hoare triple {2122#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {2122#false} is VALID [2018-11-14 18:49:55,675 INFO L273 TraceCheckUtils]: 27: Hoare triple {2122#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {2122#false} is VALID [2018-11-14 18:49:55,675 INFO L273 TraceCheckUtils]: 28: Hoare triple {2122#false} assume true; {2122#false} is VALID [2018-11-14 18:49:55,676 INFO L273 TraceCheckUtils]: 29: Hoare triple {2122#false} assume !(~i~0 < 20); {2122#false} is VALID [2018-11-14 18:49:55,676 INFO L273 TraceCheckUtils]: 30: Hoare triple {2122#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {2122#false} is VALID [2018-11-14 18:49:55,676 INFO L273 TraceCheckUtils]: 31: Hoare triple {2122#false} assume true; {2122#false} is VALID [2018-11-14 18:49:55,676 INFO L268 TraceCheckUtils]: 32: Hoare quadruple {2122#false} {2122#false} #73#return; {2122#false} is VALID [2018-11-14 18:49:55,676 INFO L273 TraceCheckUtils]: 33: Hoare triple {2122#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {2122#false} is VALID [2018-11-14 18:49:55,676 INFO L256 TraceCheckUtils]: 34: Hoare triple {2122#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {2122#false} is VALID [2018-11-14 18:49:55,676 INFO L273 TraceCheckUtils]: 35: Hoare triple {2122#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {2122#false} is VALID [2018-11-14 18:49:55,677 INFO L273 TraceCheckUtils]: 36: Hoare triple {2122#false} assume true; {2122#false} is VALID [2018-11-14 18:49:55,677 INFO L273 TraceCheckUtils]: 37: Hoare triple {2122#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {2122#false} is VALID [2018-11-14 18:49:55,677 INFO L273 TraceCheckUtils]: 38: Hoare triple {2122#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {2122#false} is VALID [2018-11-14 18:49:55,677 INFO L273 TraceCheckUtils]: 39: Hoare triple {2122#false} assume true; {2122#false} is VALID [2018-11-14 18:49:55,677 INFO L273 TraceCheckUtils]: 40: Hoare triple {2122#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {2122#false} is VALID [2018-11-14 18:49:55,677 INFO L273 TraceCheckUtils]: 41: Hoare triple {2122#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {2122#false} is VALID [2018-11-14 18:49:55,677 INFO L273 TraceCheckUtils]: 42: Hoare triple {2122#false} assume true; {2122#false} is VALID [2018-11-14 18:49:55,677 INFO L273 TraceCheckUtils]: 43: Hoare triple {2122#false} assume !(~i~0 < 20); {2122#false} is VALID [2018-11-14 18:49:55,678 INFO L273 TraceCheckUtils]: 44: Hoare triple {2122#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {2122#false} is VALID [2018-11-14 18:49:55,678 INFO L273 TraceCheckUtils]: 45: Hoare triple {2122#false} assume true; {2122#false} is VALID [2018-11-14 18:49:55,678 INFO L268 TraceCheckUtils]: 46: Hoare quadruple {2122#false} {2122#false} #75#return; {2122#false} is VALID [2018-11-14 18:49:55,678 INFO L273 TraceCheckUtils]: 47: Hoare triple {2122#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {2122#false} is VALID [2018-11-14 18:49:55,678 INFO L273 TraceCheckUtils]: 48: Hoare triple {2122#false} assume true; {2122#false} is VALID [2018-11-14 18:49:55,678 INFO L273 TraceCheckUtils]: 49: Hoare triple {2122#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {2122#false} is VALID [2018-11-14 18:49:55,678 INFO L273 TraceCheckUtils]: 50: Hoare triple {2122#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {2122#false} is VALID [2018-11-14 18:49:55,678 INFO L273 TraceCheckUtils]: 51: Hoare triple {2122#false} assume true; {2122#false} is VALID [2018-11-14 18:49:55,679 INFO L273 TraceCheckUtils]: 52: Hoare triple {2122#false} assume !(~i~2 < 19); {2122#false} is VALID [2018-11-14 18:49:55,679 INFO L273 TraceCheckUtils]: 53: Hoare triple {2122#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {2122#false} is VALID [2018-11-14 18:49:55,679 INFO L256 TraceCheckUtils]: 54: Hoare triple {2122#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {2122#false} is VALID [2018-11-14 18:49:55,679 INFO L273 TraceCheckUtils]: 55: Hoare triple {2122#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {2122#false} is VALID [2018-11-14 18:49:55,679 INFO L273 TraceCheckUtils]: 56: Hoare triple {2122#false} assume true; {2122#false} is VALID [2018-11-14 18:49:55,679 INFO L273 TraceCheckUtils]: 57: Hoare triple {2122#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {2122#false} is VALID [2018-11-14 18:49:55,679 INFO L273 TraceCheckUtils]: 58: Hoare triple {2122#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {2122#false} is VALID [2018-11-14 18:49:55,680 INFO L273 TraceCheckUtils]: 59: Hoare triple {2122#false} assume true; {2122#false} is VALID [2018-11-14 18:49:55,680 INFO L273 TraceCheckUtils]: 60: Hoare triple {2122#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {2122#false} is VALID [2018-11-14 18:49:55,680 INFO L273 TraceCheckUtils]: 61: Hoare triple {2122#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {2122#false} is VALID [2018-11-14 18:49:55,680 INFO L273 TraceCheckUtils]: 62: Hoare triple {2122#false} assume true; {2122#false} is VALID [2018-11-14 18:49:55,680 INFO L273 TraceCheckUtils]: 63: Hoare triple {2122#false} assume !(~i~0 < 20); {2122#false} is VALID [2018-11-14 18:49:55,680 INFO L273 TraceCheckUtils]: 64: Hoare triple {2122#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {2122#false} is VALID [2018-11-14 18:49:55,681 INFO L273 TraceCheckUtils]: 65: Hoare triple {2122#false} assume true; {2122#false} is VALID [2018-11-14 18:49:55,681 INFO L268 TraceCheckUtils]: 66: Hoare quadruple {2122#false} {2122#false} #77#return; {2122#false} is VALID [2018-11-14 18:49:55,681 INFO L273 TraceCheckUtils]: 67: Hoare triple {2122#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {2122#false} is VALID [2018-11-14 18:49:55,681 INFO L273 TraceCheckUtils]: 68: Hoare triple {2122#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {2122#false} is VALID [2018-11-14 18:49:55,681 INFO L273 TraceCheckUtils]: 69: Hoare triple {2122#false} assume !false; {2122#false} is VALID [2018-11-14 18:49:55,684 INFO L134 CoverageAnalysis]: Checked inductivity of 127 backedges. 0 proven. 26 refuted. 0 times theorem prover too weak. 101 trivial. 0 not checked. [2018-11-14 18:49:55,710 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:49:55,710 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 8 [2018-11-14 18:49:55,711 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 70 [2018-11-14 18:49:55,711 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:49:55,711 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states. [2018-11-14 18:49:55,853 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:49:55,853 INFO L459 AbstractCegarLoop]: Interpolant automaton has 8 states [2018-11-14 18:49:55,854 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2018-11-14 18:49:55,854 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=28, Invalid=28, Unknown=0, NotChecked=0, Total=56 [2018-11-14 18:49:55,854 INFO L87 Difference]: Start difference. First operand 47 states and 51 transitions. Second operand 8 states. [2018-11-14 18:49:56,164 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:49:56,164 INFO L93 Difference]: Finished difference Result 78 states and 86 transitions. [2018-11-14 18:49:56,164 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2018-11-14 18:49:56,164 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 70 [2018-11-14 18:49:56,164 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:49:56,164 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2018-11-14 18:49:56,167 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 72 transitions. [2018-11-14 18:49:56,167 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2018-11-14 18:49:56,168 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 72 transitions. [2018-11-14 18:49:56,169 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 72 transitions. [2018-11-14 18:49:56,351 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 72 edges. 72 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:49:56,353 INFO L225 Difference]: With dead ends: 78 [2018-11-14 18:49:56,353 INFO L226 Difference]: Without dead ends: 51 [2018-11-14 18:49:56,354 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 76 GetRequests, 70 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 6 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=28, Invalid=28, Unknown=0, NotChecked=0, Total=56 [2018-11-14 18:49:56,354 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 51 states. [2018-11-14 18:49:56,388 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 51 to 50. [2018-11-14 18:49:56,389 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:49:56,389 INFO L82 GeneralOperation]: Start isEquivalent. First operand 51 states. Second operand 50 states. [2018-11-14 18:49:56,389 INFO L74 IsIncluded]: Start isIncluded. First operand 51 states. Second operand 50 states. [2018-11-14 18:49:56,389 INFO L87 Difference]: Start difference. First operand 51 states. Second operand 50 states. [2018-11-14 18:49:56,391 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:49:56,391 INFO L93 Difference]: Finished difference Result 51 states and 55 transitions. [2018-11-14 18:49:56,392 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 55 transitions. [2018-11-14 18:49:56,392 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:49:56,392 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:49:56,392 INFO L74 IsIncluded]: Start isIncluded. First operand 50 states. Second operand 51 states. [2018-11-14 18:49:56,392 INFO L87 Difference]: Start difference. First operand 50 states. Second operand 51 states. [2018-11-14 18:49:56,394 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:49:56,395 INFO L93 Difference]: Finished difference Result 51 states and 55 transitions. [2018-11-14 18:49:56,395 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 55 transitions. [2018-11-14 18:49:56,395 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:49:56,395 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:49:56,395 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:49:56,395 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:49:56,396 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 50 states. [2018-11-14 18:49:56,397 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 54 transitions. [2018-11-14 18:49:56,398 INFO L78 Accepts]: Start accepts. Automaton has 50 states and 54 transitions. Word has length 70 [2018-11-14 18:49:56,398 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:49:56,398 INFO L480 AbstractCegarLoop]: Abstraction has 50 states and 54 transitions. [2018-11-14 18:49:56,398 INFO L481 AbstractCegarLoop]: Interpolant automaton has 8 states. [2018-11-14 18:49:56,398 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 54 transitions. [2018-11-14 18:49:56,399 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 74 [2018-11-14 18:49:56,399 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:49:56,399 INFO L375 BasicCegarLoop]: trace histogram [9, 6, 6, 6, 5, 5, 3, 3, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:49:56,399 INFO L423 AbstractCegarLoop]: === Iteration 9 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:49:56,400 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:49:56,400 INFO L82 PathProgramCache]: Analyzing trace with hash 1521001423, now seen corresponding path program 5 times [2018-11-14 18:49:56,400 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:49:56,400 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:49:56,401 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:49:56,401 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 18:49:56,401 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:49:56,421 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:49:56,727 INFO L256 TraceCheckUtils]: 0: Hoare triple {2615#true} call ULTIMATE.init(); {2615#true} is VALID [2018-11-14 18:49:56,727 INFO L273 TraceCheckUtils]: 1: Hoare triple {2615#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {2615#true} is VALID [2018-11-14 18:49:56,727 INFO L273 TraceCheckUtils]: 2: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 18:49:56,728 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2615#true} {2615#true} #69#return; {2615#true} is VALID [2018-11-14 18:49:56,728 INFO L256 TraceCheckUtils]: 4: Hoare triple {2615#true} call #t~ret12 := main(); {2615#true} is VALID [2018-11-14 18:49:56,728 INFO L273 TraceCheckUtils]: 5: Hoare triple {2615#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {2617#(= main_~i~1 0)} is VALID [2018-11-14 18:49:56,729 INFO L273 TraceCheckUtils]: 6: Hoare triple {2617#(= main_~i~1 0)} assume true; {2617#(= main_~i~1 0)} is VALID [2018-11-14 18:49:56,729 INFO L273 TraceCheckUtils]: 7: Hoare triple {2617#(= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {2617#(= main_~i~1 0)} is VALID [2018-11-14 18:49:56,730 INFO L273 TraceCheckUtils]: 8: Hoare triple {2617#(= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {2618#(<= main_~i~1 1)} is VALID [2018-11-14 18:49:56,731 INFO L273 TraceCheckUtils]: 9: Hoare triple {2618#(<= main_~i~1 1)} assume true; {2618#(<= main_~i~1 1)} is VALID [2018-11-14 18:49:56,731 INFO L273 TraceCheckUtils]: 10: Hoare triple {2618#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {2618#(<= main_~i~1 1)} is VALID [2018-11-14 18:49:56,732 INFO L273 TraceCheckUtils]: 11: Hoare triple {2618#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {2619#(<= main_~i~1 2)} is VALID [2018-11-14 18:49:56,733 INFO L273 TraceCheckUtils]: 12: Hoare triple {2619#(<= main_~i~1 2)} assume true; {2619#(<= main_~i~1 2)} is VALID [2018-11-14 18:49:56,733 INFO L273 TraceCheckUtils]: 13: Hoare triple {2619#(<= main_~i~1 2)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {2619#(<= main_~i~1 2)} is VALID [2018-11-14 18:49:56,734 INFO L273 TraceCheckUtils]: 14: Hoare triple {2619#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {2620#(<= main_~i~1 3)} is VALID [2018-11-14 18:49:56,735 INFO L273 TraceCheckUtils]: 15: Hoare triple {2620#(<= main_~i~1 3)} assume true; {2620#(<= main_~i~1 3)} is VALID [2018-11-14 18:49:56,735 INFO L273 TraceCheckUtils]: 16: Hoare triple {2620#(<= main_~i~1 3)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {2620#(<= main_~i~1 3)} is VALID [2018-11-14 18:49:56,736 INFO L273 TraceCheckUtils]: 17: Hoare triple {2620#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {2621#(<= main_~i~1 4)} is VALID [2018-11-14 18:49:56,737 INFO L273 TraceCheckUtils]: 18: Hoare triple {2621#(<= main_~i~1 4)} assume true; {2621#(<= main_~i~1 4)} is VALID [2018-11-14 18:49:56,737 INFO L273 TraceCheckUtils]: 19: Hoare triple {2621#(<= main_~i~1 4)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {2621#(<= main_~i~1 4)} is VALID [2018-11-14 18:49:56,738 INFO L273 TraceCheckUtils]: 20: Hoare triple {2621#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {2622#(<= main_~i~1 5)} is VALID [2018-11-14 18:49:56,738 INFO L273 TraceCheckUtils]: 21: Hoare triple {2622#(<= main_~i~1 5)} assume true; {2622#(<= main_~i~1 5)} is VALID [2018-11-14 18:49:56,739 INFO L273 TraceCheckUtils]: 22: Hoare triple {2622#(<= main_~i~1 5)} assume !(~i~1 < 20); {2616#false} is VALID [2018-11-14 18:49:56,739 INFO L256 TraceCheckUtils]: 23: Hoare triple {2616#false} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {2615#true} is VALID [2018-11-14 18:49:56,740 INFO L273 TraceCheckUtils]: 24: Hoare triple {2615#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {2615#true} is VALID [2018-11-14 18:49:56,740 INFO L273 TraceCheckUtils]: 25: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 18:49:56,740 INFO L273 TraceCheckUtils]: 26: Hoare triple {2615#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {2615#true} is VALID [2018-11-14 18:49:56,740 INFO L273 TraceCheckUtils]: 27: Hoare triple {2615#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {2615#true} is VALID [2018-11-14 18:49:56,740 INFO L273 TraceCheckUtils]: 28: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 18:49:56,741 INFO L273 TraceCheckUtils]: 29: Hoare triple {2615#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {2615#true} is VALID [2018-11-14 18:49:56,741 INFO L273 TraceCheckUtils]: 30: Hoare triple {2615#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {2615#true} is VALID [2018-11-14 18:49:56,741 INFO L273 TraceCheckUtils]: 31: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 18:49:56,741 INFO L273 TraceCheckUtils]: 32: Hoare triple {2615#true} assume !(~i~0 < 20); {2615#true} is VALID [2018-11-14 18:49:56,742 INFO L273 TraceCheckUtils]: 33: Hoare triple {2615#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {2615#true} is VALID [2018-11-14 18:49:56,742 INFO L273 TraceCheckUtils]: 34: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 18:49:56,742 INFO L268 TraceCheckUtils]: 35: Hoare quadruple {2615#true} {2616#false} #73#return; {2616#false} is VALID [2018-11-14 18:49:56,742 INFO L273 TraceCheckUtils]: 36: Hoare triple {2616#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {2616#false} is VALID [2018-11-14 18:49:56,742 INFO L256 TraceCheckUtils]: 37: Hoare triple {2616#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {2615#true} is VALID [2018-11-14 18:49:56,742 INFO L273 TraceCheckUtils]: 38: Hoare triple {2615#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {2615#true} is VALID [2018-11-14 18:49:56,742 INFO L273 TraceCheckUtils]: 39: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 18:49:56,743 INFO L273 TraceCheckUtils]: 40: Hoare triple {2615#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {2615#true} is VALID [2018-11-14 18:49:56,743 INFO L273 TraceCheckUtils]: 41: Hoare triple {2615#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {2615#true} is VALID [2018-11-14 18:49:56,743 INFO L273 TraceCheckUtils]: 42: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 18:49:56,743 INFO L273 TraceCheckUtils]: 43: Hoare triple {2615#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {2615#true} is VALID [2018-11-14 18:49:56,743 INFO L273 TraceCheckUtils]: 44: Hoare triple {2615#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {2615#true} is VALID [2018-11-14 18:49:56,743 INFO L273 TraceCheckUtils]: 45: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 18:49:56,743 INFO L273 TraceCheckUtils]: 46: Hoare triple {2615#true} assume !(~i~0 < 20); {2615#true} is VALID [2018-11-14 18:49:56,743 INFO L273 TraceCheckUtils]: 47: Hoare triple {2615#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {2615#true} is VALID [2018-11-14 18:49:56,744 INFO L273 TraceCheckUtils]: 48: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 18:49:56,744 INFO L268 TraceCheckUtils]: 49: Hoare quadruple {2615#true} {2616#false} #75#return; {2616#false} is VALID [2018-11-14 18:49:56,744 INFO L273 TraceCheckUtils]: 50: Hoare triple {2616#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {2616#false} is VALID [2018-11-14 18:49:56,744 INFO L273 TraceCheckUtils]: 51: Hoare triple {2616#false} assume true; {2616#false} is VALID [2018-11-14 18:49:56,744 INFO L273 TraceCheckUtils]: 52: Hoare triple {2616#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {2616#false} is VALID [2018-11-14 18:49:56,744 INFO L273 TraceCheckUtils]: 53: Hoare triple {2616#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {2616#false} is VALID [2018-11-14 18:49:56,744 INFO L273 TraceCheckUtils]: 54: Hoare triple {2616#false} assume true; {2616#false} is VALID [2018-11-14 18:49:56,744 INFO L273 TraceCheckUtils]: 55: Hoare triple {2616#false} assume !(~i~2 < 19); {2616#false} is VALID [2018-11-14 18:49:56,745 INFO L273 TraceCheckUtils]: 56: Hoare triple {2616#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {2616#false} is VALID [2018-11-14 18:49:56,745 INFO L256 TraceCheckUtils]: 57: Hoare triple {2616#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {2615#true} is VALID [2018-11-14 18:49:56,745 INFO L273 TraceCheckUtils]: 58: Hoare triple {2615#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {2615#true} is VALID [2018-11-14 18:49:56,745 INFO L273 TraceCheckUtils]: 59: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 18:49:56,745 INFO L273 TraceCheckUtils]: 60: Hoare triple {2615#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {2615#true} is VALID [2018-11-14 18:49:56,745 INFO L273 TraceCheckUtils]: 61: Hoare triple {2615#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {2615#true} is VALID [2018-11-14 18:49:56,745 INFO L273 TraceCheckUtils]: 62: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 18:49:56,745 INFO L273 TraceCheckUtils]: 63: Hoare triple {2615#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {2615#true} is VALID [2018-11-14 18:49:56,746 INFO L273 TraceCheckUtils]: 64: Hoare triple {2615#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {2615#true} is VALID [2018-11-14 18:49:56,746 INFO L273 TraceCheckUtils]: 65: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 18:49:56,746 INFO L273 TraceCheckUtils]: 66: Hoare triple {2615#true} assume !(~i~0 < 20); {2615#true} is VALID [2018-11-14 18:49:56,746 INFO L273 TraceCheckUtils]: 67: Hoare triple {2615#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {2615#true} is VALID [2018-11-14 18:49:56,746 INFO L273 TraceCheckUtils]: 68: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 18:49:56,746 INFO L268 TraceCheckUtils]: 69: Hoare quadruple {2615#true} {2616#false} #77#return; {2616#false} is VALID [2018-11-14 18:49:56,746 INFO L273 TraceCheckUtils]: 70: Hoare triple {2616#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {2616#false} is VALID [2018-11-14 18:49:56,746 INFO L273 TraceCheckUtils]: 71: Hoare triple {2616#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {2616#false} is VALID [2018-11-14 18:49:56,747 INFO L273 TraceCheckUtils]: 72: Hoare triple {2616#false} assume !false; {2616#false} is VALID [2018-11-14 18:49:56,749 INFO L134 CoverageAnalysis]: Checked inductivity of 141 backedges. 0 proven. 40 refuted. 0 times theorem prover too weak. 101 trivial. 0 not checked. [2018-11-14 18:49:56,749 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:49:56,749 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 7 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 7 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:49:56,758 INFO L103 rtionOrderModulation]: Keeping assertion order INSIDE_LOOP_FIRST1 [2018-11-14 18:49:56,798 INFO L249 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 6 check-sat command(s) [2018-11-14 18:49:56,799 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 18:49:56,824 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:49:56,826 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:49:56,940 INFO L256 TraceCheckUtils]: 0: Hoare triple {2615#true} call ULTIMATE.init(); {2615#true} is VALID [2018-11-14 18:49:56,940 INFO L273 TraceCheckUtils]: 1: Hoare triple {2615#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {2615#true} is VALID [2018-11-14 18:49:56,940 INFO L273 TraceCheckUtils]: 2: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 18:49:56,940 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2615#true} {2615#true} #69#return; {2615#true} is VALID [2018-11-14 18:49:56,940 INFO L256 TraceCheckUtils]: 4: Hoare triple {2615#true} call #t~ret12 := main(); {2615#true} is VALID [2018-11-14 18:49:56,941 INFO L273 TraceCheckUtils]: 5: Hoare triple {2615#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {2615#true} is VALID [2018-11-14 18:49:56,941 INFO L273 TraceCheckUtils]: 6: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 18:49:56,941 INFO L273 TraceCheckUtils]: 7: Hoare triple {2615#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {2615#true} is VALID [2018-11-14 18:49:56,941 INFO L273 TraceCheckUtils]: 8: Hoare triple {2615#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {2615#true} is VALID [2018-11-14 18:49:56,941 INFO L273 TraceCheckUtils]: 9: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 18:49:56,941 INFO L273 TraceCheckUtils]: 10: Hoare triple {2615#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {2615#true} is VALID [2018-11-14 18:49:56,941 INFO L273 TraceCheckUtils]: 11: Hoare triple {2615#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {2615#true} is VALID [2018-11-14 18:49:56,941 INFO L273 TraceCheckUtils]: 12: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 18:49:56,942 INFO L273 TraceCheckUtils]: 13: Hoare triple {2615#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {2615#true} is VALID [2018-11-14 18:49:56,942 INFO L273 TraceCheckUtils]: 14: Hoare triple {2615#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {2615#true} is VALID [2018-11-14 18:49:56,942 INFO L273 TraceCheckUtils]: 15: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 18:49:56,942 INFO L273 TraceCheckUtils]: 16: Hoare triple {2615#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {2615#true} is VALID [2018-11-14 18:49:56,942 INFO L273 TraceCheckUtils]: 17: Hoare triple {2615#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {2615#true} is VALID [2018-11-14 18:49:56,942 INFO L273 TraceCheckUtils]: 18: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 18:49:56,942 INFO L273 TraceCheckUtils]: 19: Hoare triple {2615#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {2615#true} is VALID [2018-11-14 18:49:56,942 INFO L273 TraceCheckUtils]: 20: Hoare triple {2615#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {2615#true} is VALID [2018-11-14 18:49:56,943 INFO L273 TraceCheckUtils]: 21: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 18:49:56,943 INFO L273 TraceCheckUtils]: 22: Hoare triple {2615#true} assume !(~i~1 < 20); {2615#true} is VALID [2018-11-14 18:49:56,943 INFO L256 TraceCheckUtils]: 23: Hoare triple {2615#true} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {2615#true} is VALID [2018-11-14 18:49:56,943 INFO L273 TraceCheckUtils]: 24: Hoare triple {2615#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {2698#(<= avg_~i~0 0)} is VALID [2018-11-14 18:49:56,944 INFO L273 TraceCheckUtils]: 25: Hoare triple {2698#(<= avg_~i~0 0)} assume true; {2698#(<= avg_~i~0 0)} is VALID [2018-11-14 18:49:56,944 INFO L273 TraceCheckUtils]: 26: Hoare triple {2698#(<= avg_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {2698#(<= avg_~i~0 0)} is VALID [2018-11-14 18:49:56,945 INFO L273 TraceCheckUtils]: 27: Hoare triple {2698#(<= avg_~i~0 0)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {2708#(<= avg_~i~0 1)} is VALID [2018-11-14 18:49:56,945 INFO L273 TraceCheckUtils]: 28: Hoare triple {2708#(<= avg_~i~0 1)} assume true; {2708#(<= avg_~i~0 1)} is VALID [2018-11-14 18:49:56,945 INFO L273 TraceCheckUtils]: 29: Hoare triple {2708#(<= avg_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {2708#(<= avg_~i~0 1)} is VALID [2018-11-14 18:49:56,946 INFO L273 TraceCheckUtils]: 30: Hoare triple {2708#(<= avg_~i~0 1)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {2718#(<= avg_~i~0 2)} is VALID [2018-11-14 18:49:56,947 INFO L273 TraceCheckUtils]: 31: Hoare triple {2718#(<= avg_~i~0 2)} assume true; {2718#(<= avg_~i~0 2)} is VALID [2018-11-14 18:49:56,947 INFO L273 TraceCheckUtils]: 32: Hoare triple {2718#(<= avg_~i~0 2)} assume !(~i~0 < 20); {2616#false} is VALID [2018-11-14 18:49:56,948 INFO L273 TraceCheckUtils]: 33: Hoare triple {2616#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {2616#false} is VALID [2018-11-14 18:49:56,948 INFO L273 TraceCheckUtils]: 34: Hoare triple {2616#false} assume true; {2616#false} is VALID [2018-11-14 18:49:56,948 INFO L268 TraceCheckUtils]: 35: Hoare quadruple {2616#false} {2615#true} #73#return; {2616#false} is VALID [2018-11-14 18:49:56,948 INFO L273 TraceCheckUtils]: 36: Hoare triple {2616#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {2616#false} is VALID [2018-11-14 18:49:56,949 INFO L256 TraceCheckUtils]: 37: Hoare triple {2616#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {2616#false} is VALID [2018-11-14 18:49:56,949 INFO L273 TraceCheckUtils]: 38: Hoare triple {2616#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {2616#false} is VALID [2018-11-14 18:49:56,949 INFO L273 TraceCheckUtils]: 39: Hoare triple {2616#false} assume true; {2616#false} is VALID [2018-11-14 18:49:56,950 INFO L273 TraceCheckUtils]: 40: Hoare triple {2616#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {2616#false} is VALID [2018-11-14 18:49:56,950 INFO L273 TraceCheckUtils]: 41: Hoare triple {2616#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {2616#false} is VALID [2018-11-14 18:49:56,950 INFO L273 TraceCheckUtils]: 42: Hoare triple {2616#false} assume true; {2616#false} is VALID [2018-11-14 18:49:56,950 INFO L273 TraceCheckUtils]: 43: Hoare triple {2616#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {2616#false} is VALID [2018-11-14 18:49:56,950 INFO L273 TraceCheckUtils]: 44: Hoare triple {2616#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {2616#false} is VALID [2018-11-14 18:49:56,951 INFO L273 TraceCheckUtils]: 45: Hoare triple {2616#false} assume true; {2616#false} is VALID [2018-11-14 18:49:56,951 INFO L273 TraceCheckUtils]: 46: Hoare triple {2616#false} assume !(~i~0 < 20); {2616#false} is VALID [2018-11-14 18:49:56,951 INFO L273 TraceCheckUtils]: 47: Hoare triple {2616#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {2616#false} is VALID [2018-11-14 18:49:56,951 INFO L273 TraceCheckUtils]: 48: Hoare triple {2616#false} assume true; {2616#false} is VALID [2018-11-14 18:49:56,952 INFO L268 TraceCheckUtils]: 49: Hoare quadruple {2616#false} {2616#false} #75#return; {2616#false} is VALID [2018-11-14 18:49:56,952 INFO L273 TraceCheckUtils]: 50: Hoare triple {2616#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {2616#false} is VALID [2018-11-14 18:49:56,952 INFO L273 TraceCheckUtils]: 51: Hoare triple {2616#false} assume true; {2616#false} is VALID [2018-11-14 18:49:56,952 INFO L273 TraceCheckUtils]: 52: Hoare triple {2616#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {2616#false} is VALID [2018-11-14 18:49:56,952 INFO L273 TraceCheckUtils]: 53: Hoare triple {2616#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {2616#false} is VALID [2018-11-14 18:49:56,953 INFO L273 TraceCheckUtils]: 54: Hoare triple {2616#false} assume true; {2616#false} is VALID [2018-11-14 18:49:56,953 INFO L273 TraceCheckUtils]: 55: Hoare triple {2616#false} assume !(~i~2 < 19); {2616#false} is VALID [2018-11-14 18:49:56,953 INFO L273 TraceCheckUtils]: 56: Hoare triple {2616#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {2616#false} is VALID [2018-11-14 18:49:56,953 INFO L256 TraceCheckUtils]: 57: Hoare triple {2616#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {2616#false} is VALID [2018-11-14 18:49:56,954 INFO L273 TraceCheckUtils]: 58: Hoare triple {2616#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {2616#false} is VALID [2018-11-14 18:49:56,954 INFO L273 TraceCheckUtils]: 59: Hoare triple {2616#false} assume true; {2616#false} is VALID [2018-11-14 18:49:56,954 INFO L273 TraceCheckUtils]: 60: Hoare triple {2616#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {2616#false} is VALID [2018-11-14 18:49:56,954 INFO L273 TraceCheckUtils]: 61: Hoare triple {2616#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {2616#false} is VALID [2018-11-14 18:49:56,955 INFO L273 TraceCheckUtils]: 62: Hoare triple {2616#false} assume true; {2616#false} is VALID [2018-11-14 18:49:56,955 INFO L273 TraceCheckUtils]: 63: Hoare triple {2616#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {2616#false} is VALID [2018-11-14 18:49:56,955 INFO L273 TraceCheckUtils]: 64: Hoare triple {2616#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {2616#false} is VALID [2018-11-14 18:49:56,955 INFO L273 TraceCheckUtils]: 65: Hoare triple {2616#false} assume true; {2616#false} is VALID [2018-11-14 18:49:56,955 INFO L273 TraceCheckUtils]: 66: Hoare triple {2616#false} assume !(~i~0 < 20); {2616#false} is VALID [2018-11-14 18:49:56,956 INFO L273 TraceCheckUtils]: 67: Hoare triple {2616#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {2616#false} is VALID [2018-11-14 18:49:56,956 INFO L273 TraceCheckUtils]: 68: Hoare triple {2616#false} assume true; {2616#false} is VALID [2018-11-14 18:49:56,956 INFO L268 TraceCheckUtils]: 69: Hoare quadruple {2616#false} {2616#false} #77#return; {2616#false} is VALID [2018-11-14 18:49:56,956 INFO L273 TraceCheckUtils]: 70: Hoare triple {2616#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {2616#false} is VALID [2018-11-14 18:49:56,957 INFO L273 TraceCheckUtils]: 71: Hoare triple {2616#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {2616#false} is VALID [2018-11-14 18:49:56,957 INFO L273 TraceCheckUtils]: 72: Hoare triple {2616#false} assume !false; {2616#false} is VALID [2018-11-14 18:49:56,961 INFO L134 CoverageAnalysis]: Checked inductivity of 141 backedges. 46 proven. 7 refuted. 0 times theorem prover too weak. 88 trivial. 0 not checked. [2018-11-14 18:49:56,993 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:49:56,993 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 5] total 11 [2018-11-14 18:49:56,994 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 73 [2018-11-14 18:49:56,995 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:49:56,995 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states. [2018-11-14 18:49:57,122 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 73 edges. 73 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:49:57,123 INFO L459 AbstractCegarLoop]: Interpolant automaton has 11 states [2018-11-14 18:49:57,123 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2018-11-14 18:49:57,123 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=37, Invalid=73, Unknown=0, NotChecked=0, Total=110 [2018-11-14 18:49:57,123 INFO L87 Difference]: Start difference. First operand 50 states and 54 transitions. Second operand 11 states. [2018-11-14 18:49:57,861 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:49:57,861 INFO L93 Difference]: Finished difference Result 85 states and 97 transitions. [2018-11-14 18:49:57,862 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2018-11-14 18:49:57,862 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 73 [2018-11-14 18:49:57,862 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:49:57,862 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2018-11-14 18:49:57,864 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 88 transitions. [2018-11-14 18:49:57,864 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2018-11-14 18:49:57,866 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 88 transitions. [2018-11-14 18:49:57,866 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 88 transitions. [2018-11-14 18:49:57,978 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 88 edges. 88 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:49:57,980 INFO L225 Difference]: With dead ends: 85 [2018-11-14 18:49:57,981 INFO L226 Difference]: Without dead ends: 58 [2018-11-14 18:49:57,982 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 80 GetRequests, 71 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 15 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=37, Invalid=73, Unknown=0, NotChecked=0, Total=110 [2018-11-14 18:49:57,982 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 58 states. [2018-11-14 18:49:57,999 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 58 to 56. [2018-11-14 18:49:58,000 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:49:58,000 INFO L82 GeneralOperation]: Start isEquivalent. First operand 58 states. Second operand 56 states. [2018-11-14 18:49:58,000 INFO L74 IsIncluded]: Start isIncluded. First operand 58 states. Second operand 56 states. [2018-11-14 18:49:58,000 INFO L87 Difference]: Start difference. First operand 58 states. Second operand 56 states. [2018-11-14 18:49:58,003 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:49:58,003 INFO L93 Difference]: Finished difference Result 58 states and 62 transitions. [2018-11-14 18:49:58,003 INFO L276 IsEmpty]: Start isEmpty. Operand 58 states and 62 transitions. [2018-11-14 18:49:58,003 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:49:58,004 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:49:58,004 INFO L74 IsIncluded]: Start isIncluded. First operand 56 states. Second operand 58 states. [2018-11-14 18:49:58,004 INFO L87 Difference]: Start difference. First operand 56 states. Second operand 58 states. [2018-11-14 18:49:58,006 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:49:58,006 INFO L93 Difference]: Finished difference Result 58 states and 62 transitions. [2018-11-14 18:49:58,006 INFO L276 IsEmpty]: Start isEmpty. Operand 58 states and 62 transitions. [2018-11-14 18:49:58,007 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:49:58,007 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:49:58,007 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:49:58,007 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:49:58,007 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 56 states. [2018-11-14 18:49:58,009 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 56 states to 56 states and 60 transitions. [2018-11-14 18:49:58,010 INFO L78 Accepts]: Start accepts. Automaton has 56 states and 60 transitions. Word has length 73 [2018-11-14 18:49:58,010 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:49:58,010 INFO L480 AbstractCegarLoop]: Abstraction has 56 states and 60 transitions. [2018-11-14 18:49:58,010 INFO L481 AbstractCegarLoop]: Interpolant automaton has 11 states. [2018-11-14 18:49:58,010 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 60 transitions. [2018-11-14 18:49:58,011 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 86 [2018-11-14 18:49:58,011 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:49:58,011 INFO L375 BasicCegarLoop]: trace histogram [12, 9, 9, 7, 6, 6, 3, 3, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:49:58,012 INFO L423 AbstractCegarLoop]: === Iteration 10 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:49:58,012 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:49:58,012 INFO L82 PathProgramCache]: Analyzing trace with hash -335328825, now seen corresponding path program 6 times [2018-11-14 18:49:58,012 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:49:58,012 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:49:58,013 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:49:58,013 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 18:49:58,013 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:49:58,057 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:49:58,607 INFO L256 TraceCheckUtils]: 0: Hoare triple {3152#true} call ULTIMATE.init(); {3152#true} is VALID [2018-11-14 18:49:58,608 INFO L273 TraceCheckUtils]: 1: Hoare triple {3152#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {3152#true} is VALID [2018-11-14 18:49:58,608 INFO L273 TraceCheckUtils]: 2: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:49:58,608 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {3152#true} {3152#true} #69#return; {3152#true} is VALID [2018-11-14 18:49:58,608 INFO L256 TraceCheckUtils]: 4: Hoare triple {3152#true} call #t~ret12 := main(); {3152#true} is VALID [2018-11-14 18:49:58,611 INFO L273 TraceCheckUtils]: 5: Hoare triple {3152#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {3154#(= main_~i~1 0)} is VALID [2018-11-14 18:49:58,612 INFO L273 TraceCheckUtils]: 6: Hoare triple {3154#(= main_~i~1 0)} assume true; {3154#(= main_~i~1 0)} is VALID [2018-11-14 18:49:58,615 INFO L273 TraceCheckUtils]: 7: Hoare triple {3154#(= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3154#(= main_~i~1 0)} is VALID [2018-11-14 18:49:58,616 INFO L273 TraceCheckUtils]: 8: Hoare triple {3154#(= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3155#(<= main_~i~1 1)} is VALID [2018-11-14 18:49:58,616 INFO L273 TraceCheckUtils]: 9: Hoare triple {3155#(<= main_~i~1 1)} assume true; {3155#(<= main_~i~1 1)} is VALID [2018-11-14 18:49:58,616 INFO L273 TraceCheckUtils]: 10: Hoare triple {3155#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3155#(<= main_~i~1 1)} is VALID [2018-11-14 18:49:58,617 INFO L273 TraceCheckUtils]: 11: Hoare triple {3155#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3156#(<= main_~i~1 2)} is VALID [2018-11-14 18:49:58,617 INFO L273 TraceCheckUtils]: 12: Hoare triple {3156#(<= main_~i~1 2)} assume true; {3156#(<= main_~i~1 2)} is VALID [2018-11-14 18:49:58,618 INFO L273 TraceCheckUtils]: 13: Hoare triple {3156#(<= main_~i~1 2)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3156#(<= main_~i~1 2)} is VALID [2018-11-14 18:49:58,618 INFO L273 TraceCheckUtils]: 14: Hoare triple {3156#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3157#(<= main_~i~1 3)} is VALID [2018-11-14 18:49:58,618 INFO L273 TraceCheckUtils]: 15: Hoare triple {3157#(<= main_~i~1 3)} assume true; {3157#(<= main_~i~1 3)} is VALID [2018-11-14 18:49:58,619 INFO L273 TraceCheckUtils]: 16: Hoare triple {3157#(<= main_~i~1 3)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3157#(<= main_~i~1 3)} is VALID [2018-11-14 18:49:58,620 INFO L273 TraceCheckUtils]: 17: Hoare triple {3157#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3158#(<= main_~i~1 4)} is VALID [2018-11-14 18:49:58,620 INFO L273 TraceCheckUtils]: 18: Hoare triple {3158#(<= main_~i~1 4)} assume true; {3158#(<= main_~i~1 4)} is VALID [2018-11-14 18:49:58,621 INFO L273 TraceCheckUtils]: 19: Hoare triple {3158#(<= main_~i~1 4)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3158#(<= main_~i~1 4)} is VALID [2018-11-14 18:49:58,622 INFO L273 TraceCheckUtils]: 20: Hoare triple {3158#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3159#(<= main_~i~1 5)} is VALID [2018-11-14 18:49:58,622 INFO L273 TraceCheckUtils]: 21: Hoare triple {3159#(<= main_~i~1 5)} assume true; {3159#(<= main_~i~1 5)} is VALID [2018-11-14 18:49:58,623 INFO L273 TraceCheckUtils]: 22: Hoare triple {3159#(<= main_~i~1 5)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3159#(<= main_~i~1 5)} is VALID [2018-11-14 18:49:58,623 INFO L273 TraceCheckUtils]: 23: Hoare triple {3159#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3160#(<= main_~i~1 6)} is VALID [2018-11-14 18:49:58,624 INFO L273 TraceCheckUtils]: 24: Hoare triple {3160#(<= main_~i~1 6)} assume true; {3160#(<= main_~i~1 6)} is VALID [2018-11-14 18:49:58,625 INFO L273 TraceCheckUtils]: 25: Hoare triple {3160#(<= main_~i~1 6)} assume !(~i~1 < 20); {3153#false} is VALID [2018-11-14 18:49:58,625 INFO L256 TraceCheckUtils]: 26: Hoare triple {3153#false} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {3152#true} is VALID [2018-11-14 18:49:58,625 INFO L273 TraceCheckUtils]: 27: Hoare triple {3152#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {3152#true} is VALID [2018-11-14 18:49:58,625 INFO L273 TraceCheckUtils]: 28: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:49:58,626 INFO L273 TraceCheckUtils]: 29: Hoare triple {3152#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {3152#true} is VALID [2018-11-14 18:49:58,626 INFO L273 TraceCheckUtils]: 30: Hoare triple {3152#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3152#true} is VALID [2018-11-14 18:49:58,626 INFO L273 TraceCheckUtils]: 31: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:49:58,627 INFO L273 TraceCheckUtils]: 32: Hoare triple {3152#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {3152#true} is VALID [2018-11-14 18:49:58,627 INFO L273 TraceCheckUtils]: 33: Hoare triple {3152#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3152#true} is VALID [2018-11-14 18:49:58,627 INFO L273 TraceCheckUtils]: 34: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:49:58,627 INFO L273 TraceCheckUtils]: 35: Hoare triple {3152#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {3152#true} is VALID [2018-11-14 18:49:58,628 INFO L273 TraceCheckUtils]: 36: Hoare triple {3152#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3152#true} is VALID [2018-11-14 18:49:58,628 INFO L273 TraceCheckUtils]: 37: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:49:58,628 INFO L273 TraceCheckUtils]: 38: Hoare triple {3152#true} assume !(~i~0 < 20); {3152#true} is VALID [2018-11-14 18:49:58,628 INFO L273 TraceCheckUtils]: 39: Hoare triple {3152#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {3152#true} is VALID [2018-11-14 18:49:58,628 INFO L273 TraceCheckUtils]: 40: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:49:58,628 INFO L268 TraceCheckUtils]: 41: Hoare quadruple {3152#true} {3153#false} #73#return; {3153#false} is VALID [2018-11-14 18:49:58,629 INFO L273 TraceCheckUtils]: 42: Hoare triple {3153#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {3153#false} is VALID [2018-11-14 18:49:58,629 INFO L256 TraceCheckUtils]: 43: Hoare triple {3153#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {3152#true} is VALID [2018-11-14 18:49:58,629 INFO L273 TraceCheckUtils]: 44: Hoare triple {3152#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {3152#true} is VALID [2018-11-14 18:49:58,629 INFO L273 TraceCheckUtils]: 45: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:49:58,629 INFO L273 TraceCheckUtils]: 46: Hoare triple {3152#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {3152#true} is VALID [2018-11-14 18:49:58,629 INFO L273 TraceCheckUtils]: 47: Hoare triple {3152#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3152#true} is VALID [2018-11-14 18:49:58,629 INFO L273 TraceCheckUtils]: 48: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:49:58,630 INFO L273 TraceCheckUtils]: 49: Hoare triple {3152#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {3152#true} is VALID [2018-11-14 18:49:58,630 INFO L273 TraceCheckUtils]: 50: Hoare triple {3152#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3152#true} is VALID [2018-11-14 18:49:58,630 INFO L273 TraceCheckUtils]: 51: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:49:58,630 INFO L273 TraceCheckUtils]: 52: Hoare triple {3152#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {3152#true} is VALID [2018-11-14 18:49:58,630 INFO L273 TraceCheckUtils]: 53: Hoare triple {3152#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3152#true} is VALID [2018-11-14 18:49:58,630 INFO L273 TraceCheckUtils]: 54: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:49:58,630 INFO L273 TraceCheckUtils]: 55: Hoare triple {3152#true} assume !(~i~0 < 20); {3152#true} is VALID [2018-11-14 18:49:58,630 INFO L273 TraceCheckUtils]: 56: Hoare triple {3152#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {3152#true} is VALID [2018-11-14 18:49:58,631 INFO L273 TraceCheckUtils]: 57: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:49:58,631 INFO L268 TraceCheckUtils]: 58: Hoare quadruple {3152#true} {3153#false} #75#return; {3153#false} is VALID [2018-11-14 18:49:58,631 INFO L273 TraceCheckUtils]: 59: Hoare triple {3153#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {3153#false} is VALID [2018-11-14 18:49:58,631 INFO L273 TraceCheckUtils]: 60: Hoare triple {3153#false} assume true; {3153#false} is VALID [2018-11-14 18:49:58,631 INFO L273 TraceCheckUtils]: 61: Hoare triple {3153#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {3153#false} is VALID [2018-11-14 18:49:58,631 INFO L273 TraceCheckUtils]: 62: Hoare triple {3153#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {3153#false} is VALID [2018-11-14 18:49:58,631 INFO L273 TraceCheckUtils]: 63: Hoare triple {3153#false} assume true; {3153#false} is VALID [2018-11-14 18:49:58,631 INFO L273 TraceCheckUtils]: 64: Hoare triple {3153#false} assume !(~i~2 < 19); {3153#false} is VALID [2018-11-14 18:49:58,632 INFO L273 TraceCheckUtils]: 65: Hoare triple {3153#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {3153#false} is VALID [2018-11-14 18:49:58,632 INFO L256 TraceCheckUtils]: 66: Hoare triple {3153#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {3152#true} is VALID [2018-11-14 18:49:58,632 INFO L273 TraceCheckUtils]: 67: Hoare triple {3152#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {3152#true} is VALID [2018-11-14 18:49:58,632 INFO L273 TraceCheckUtils]: 68: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:49:58,632 INFO L273 TraceCheckUtils]: 69: Hoare triple {3152#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {3152#true} is VALID [2018-11-14 18:49:58,632 INFO L273 TraceCheckUtils]: 70: Hoare triple {3152#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3152#true} is VALID [2018-11-14 18:49:58,632 INFO L273 TraceCheckUtils]: 71: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:49:58,632 INFO L273 TraceCheckUtils]: 72: Hoare triple {3152#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {3152#true} is VALID [2018-11-14 18:49:58,633 INFO L273 TraceCheckUtils]: 73: Hoare triple {3152#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3152#true} is VALID [2018-11-14 18:49:58,633 INFO L273 TraceCheckUtils]: 74: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:49:58,633 INFO L273 TraceCheckUtils]: 75: Hoare triple {3152#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {3152#true} is VALID [2018-11-14 18:49:58,633 INFO L273 TraceCheckUtils]: 76: Hoare triple {3152#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3152#true} is VALID [2018-11-14 18:49:58,633 INFO L273 TraceCheckUtils]: 77: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:49:58,633 INFO L273 TraceCheckUtils]: 78: Hoare triple {3152#true} assume !(~i~0 < 20); {3152#true} is VALID [2018-11-14 18:49:58,633 INFO L273 TraceCheckUtils]: 79: Hoare triple {3152#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {3152#true} is VALID [2018-11-14 18:49:58,634 INFO L273 TraceCheckUtils]: 80: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:49:58,634 INFO L268 TraceCheckUtils]: 81: Hoare quadruple {3152#true} {3153#false} #77#return; {3153#false} is VALID [2018-11-14 18:49:58,634 INFO L273 TraceCheckUtils]: 82: Hoare triple {3153#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {3153#false} is VALID [2018-11-14 18:49:58,634 INFO L273 TraceCheckUtils]: 83: Hoare triple {3153#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {3153#false} is VALID [2018-11-14 18:49:58,634 INFO L273 TraceCheckUtils]: 84: Hoare triple {3153#false} assume !false; {3153#false} is VALID [2018-11-14 18:49:58,638 INFO L134 CoverageAnalysis]: Checked inductivity of 239 backedges. 0 proven. 57 refuted. 0 times theorem prover too weak. 182 trivial. 0 not checked. [2018-11-14 18:49:58,639 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:49:58,639 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 8 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 8 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:49:58,647 INFO L103 rtionOrderModulation]: Keeping assertion order MIX_INSIDE_OUTSIDE [2018-11-14 18:49:58,704 INFO L249 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2018-11-14 18:49:58,704 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 18:49:58,722 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:49:58,723 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:49:59,026 INFO L256 TraceCheckUtils]: 0: Hoare triple {3152#true} call ULTIMATE.init(); {3152#true} is VALID [2018-11-14 18:49:59,026 INFO L273 TraceCheckUtils]: 1: Hoare triple {3152#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {3152#true} is VALID [2018-11-14 18:49:59,026 INFO L273 TraceCheckUtils]: 2: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:49:59,027 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {3152#true} {3152#true} #69#return; {3152#true} is VALID [2018-11-14 18:49:59,027 INFO L256 TraceCheckUtils]: 4: Hoare triple {3152#true} call #t~ret12 := main(); {3152#true} is VALID [2018-11-14 18:49:59,027 INFO L273 TraceCheckUtils]: 5: Hoare triple {3152#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {3152#true} is VALID [2018-11-14 18:49:59,027 INFO L273 TraceCheckUtils]: 6: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:49:59,027 INFO L273 TraceCheckUtils]: 7: Hoare triple {3152#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3152#true} is VALID [2018-11-14 18:49:59,028 INFO L273 TraceCheckUtils]: 8: Hoare triple {3152#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3152#true} is VALID [2018-11-14 18:49:59,028 INFO L273 TraceCheckUtils]: 9: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:49:59,028 INFO L273 TraceCheckUtils]: 10: Hoare triple {3152#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3152#true} is VALID [2018-11-14 18:49:59,028 INFO L273 TraceCheckUtils]: 11: Hoare triple {3152#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3152#true} is VALID [2018-11-14 18:49:59,028 INFO L273 TraceCheckUtils]: 12: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:49:59,029 INFO L273 TraceCheckUtils]: 13: Hoare triple {3152#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3152#true} is VALID [2018-11-14 18:49:59,029 INFO L273 TraceCheckUtils]: 14: Hoare triple {3152#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3152#true} is VALID [2018-11-14 18:49:59,029 INFO L273 TraceCheckUtils]: 15: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:49:59,029 INFO L273 TraceCheckUtils]: 16: Hoare triple {3152#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3152#true} is VALID [2018-11-14 18:49:59,029 INFO L273 TraceCheckUtils]: 17: Hoare triple {3152#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3152#true} is VALID [2018-11-14 18:49:59,029 INFO L273 TraceCheckUtils]: 18: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:49:59,030 INFO L273 TraceCheckUtils]: 19: Hoare triple {3152#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3152#true} is VALID [2018-11-14 18:49:59,030 INFO L273 TraceCheckUtils]: 20: Hoare triple {3152#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3152#true} is VALID [2018-11-14 18:49:59,030 INFO L273 TraceCheckUtils]: 21: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:49:59,030 INFO L273 TraceCheckUtils]: 22: Hoare triple {3152#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3152#true} is VALID [2018-11-14 18:49:59,030 INFO L273 TraceCheckUtils]: 23: Hoare triple {3152#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3152#true} is VALID [2018-11-14 18:49:59,030 INFO L273 TraceCheckUtils]: 24: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:49:59,031 INFO L273 TraceCheckUtils]: 25: Hoare triple {3152#true} assume !(~i~1 < 20); {3152#true} is VALID [2018-11-14 18:49:59,031 INFO L256 TraceCheckUtils]: 26: Hoare triple {3152#true} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {3152#true} is VALID [2018-11-14 18:49:59,031 INFO L273 TraceCheckUtils]: 27: Hoare triple {3152#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {3152#true} is VALID [2018-11-14 18:49:59,031 INFO L273 TraceCheckUtils]: 28: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:49:59,031 INFO L273 TraceCheckUtils]: 29: Hoare triple {3152#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {3152#true} is VALID [2018-11-14 18:49:59,031 INFO L273 TraceCheckUtils]: 30: Hoare triple {3152#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3152#true} is VALID [2018-11-14 18:49:59,031 INFO L273 TraceCheckUtils]: 31: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:49:59,031 INFO L273 TraceCheckUtils]: 32: Hoare triple {3152#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {3152#true} is VALID [2018-11-14 18:49:59,032 INFO L273 TraceCheckUtils]: 33: Hoare triple {3152#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3152#true} is VALID [2018-11-14 18:49:59,032 INFO L273 TraceCheckUtils]: 34: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:49:59,032 INFO L273 TraceCheckUtils]: 35: Hoare triple {3152#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {3152#true} is VALID [2018-11-14 18:49:59,032 INFO L273 TraceCheckUtils]: 36: Hoare triple {3152#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3152#true} is VALID [2018-11-14 18:49:59,032 INFO L273 TraceCheckUtils]: 37: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:49:59,032 INFO L273 TraceCheckUtils]: 38: Hoare triple {3152#true} assume !(~i~0 < 20); {3152#true} is VALID [2018-11-14 18:49:59,032 INFO L273 TraceCheckUtils]: 39: Hoare triple {3152#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {3152#true} is VALID [2018-11-14 18:49:59,032 INFO L273 TraceCheckUtils]: 40: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:49:59,033 INFO L268 TraceCheckUtils]: 41: Hoare quadruple {3152#true} {3152#true} #73#return; {3152#true} is VALID [2018-11-14 18:49:59,033 INFO L273 TraceCheckUtils]: 42: Hoare triple {3152#true} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {3152#true} is VALID [2018-11-14 18:49:59,033 INFO L256 TraceCheckUtils]: 43: Hoare triple {3152#true} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {3152#true} is VALID [2018-11-14 18:49:59,033 INFO L273 TraceCheckUtils]: 44: Hoare triple {3152#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {3152#true} is VALID [2018-11-14 18:49:59,033 INFO L273 TraceCheckUtils]: 45: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:49:59,034 INFO L273 TraceCheckUtils]: 46: Hoare triple {3152#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {3152#true} is VALID [2018-11-14 18:49:59,034 INFO L273 TraceCheckUtils]: 47: Hoare triple {3152#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3152#true} is VALID [2018-11-14 18:49:59,034 INFO L273 TraceCheckUtils]: 48: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:49:59,034 INFO L273 TraceCheckUtils]: 49: Hoare triple {3152#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {3152#true} is VALID [2018-11-14 18:49:59,034 INFO L273 TraceCheckUtils]: 50: Hoare triple {3152#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3152#true} is VALID [2018-11-14 18:49:59,034 INFO L273 TraceCheckUtils]: 51: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:49:59,035 INFO L273 TraceCheckUtils]: 52: Hoare triple {3152#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {3152#true} is VALID [2018-11-14 18:49:59,035 INFO L273 TraceCheckUtils]: 53: Hoare triple {3152#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3152#true} is VALID [2018-11-14 18:49:59,035 INFO L273 TraceCheckUtils]: 54: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:49:59,035 INFO L273 TraceCheckUtils]: 55: Hoare triple {3152#true} assume !(~i~0 < 20); {3152#true} is VALID [2018-11-14 18:49:59,035 INFO L273 TraceCheckUtils]: 56: Hoare triple {3152#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {3152#true} is VALID [2018-11-14 18:49:59,035 INFO L273 TraceCheckUtils]: 57: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:49:59,036 INFO L268 TraceCheckUtils]: 58: Hoare quadruple {3152#true} {3152#true} #75#return; {3152#true} is VALID [2018-11-14 18:49:59,054 INFO L273 TraceCheckUtils]: 59: Hoare triple {3152#true} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {3341#(<= main_~i~2 0)} is VALID [2018-11-14 18:49:59,060 INFO L273 TraceCheckUtils]: 60: Hoare triple {3341#(<= main_~i~2 0)} assume true; {3341#(<= main_~i~2 0)} is VALID [2018-11-14 18:49:59,060 INFO L273 TraceCheckUtils]: 61: Hoare triple {3341#(<= main_~i~2 0)} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {3341#(<= main_~i~2 0)} is VALID [2018-11-14 18:49:59,061 INFO L273 TraceCheckUtils]: 62: Hoare triple {3341#(<= main_~i~2 0)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {3351#(<= main_~i~2 1)} is VALID [2018-11-14 18:49:59,061 INFO L273 TraceCheckUtils]: 63: Hoare triple {3351#(<= main_~i~2 1)} assume true; {3351#(<= main_~i~2 1)} is VALID [2018-11-14 18:49:59,061 INFO L273 TraceCheckUtils]: 64: Hoare triple {3351#(<= main_~i~2 1)} assume !(~i~2 < 19); {3153#false} is VALID [2018-11-14 18:49:59,062 INFO L273 TraceCheckUtils]: 65: Hoare triple {3153#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {3153#false} is VALID [2018-11-14 18:49:59,062 INFO L256 TraceCheckUtils]: 66: Hoare triple {3153#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {3153#false} is VALID [2018-11-14 18:49:59,062 INFO L273 TraceCheckUtils]: 67: Hoare triple {3153#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {3153#false} is VALID [2018-11-14 18:49:59,062 INFO L273 TraceCheckUtils]: 68: Hoare triple {3153#false} assume true; {3153#false} is VALID [2018-11-14 18:49:59,062 INFO L273 TraceCheckUtils]: 69: Hoare triple {3153#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {3153#false} is VALID [2018-11-14 18:49:59,062 INFO L273 TraceCheckUtils]: 70: Hoare triple {3153#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3153#false} is VALID [2018-11-14 18:49:59,062 INFO L273 TraceCheckUtils]: 71: Hoare triple {3153#false} assume true; {3153#false} is VALID [2018-11-14 18:49:59,063 INFO L273 TraceCheckUtils]: 72: Hoare triple {3153#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {3153#false} is VALID [2018-11-14 18:49:59,063 INFO L273 TraceCheckUtils]: 73: Hoare triple {3153#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3153#false} is VALID [2018-11-14 18:49:59,063 INFO L273 TraceCheckUtils]: 74: Hoare triple {3153#false} assume true; {3153#false} is VALID [2018-11-14 18:49:59,063 INFO L273 TraceCheckUtils]: 75: Hoare triple {3153#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {3153#false} is VALID [2018-11-14 18:49:59,063 INFO L273 TraceCheckUtils]: 76: Hoare triple {3153#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3153#false} is VALID [2018-11-14 18:49:59,063 INFO L273 TraceCheckUtils]: 77: Hoare triple {3153#false} assume true; {3153#false} is VALID [2018-11-14 18:49:59,063 INFO L273 TraceCheckUtils]: 78: Hoare triple {3153#false} assume !(~i~0 < 20); {3153#false} is VALID [2018-11-14 18:49:59,064 INFO L273 TraceCheckUtils]: 79: Hoare triple {3153#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {3153#false} is VALID [2018-11-14 18:49:59,064 INFO L273 TraceCheckUtils]: 80: Hoare triple {3153#false} assume true; {3153#false} is VALID [2018-11-14 18:49:59,064 INFO L268 TraceCheckUtils]: 81: Hoare quadruple {3153#false} {3153#false} #77#return; {3153#false} is VALID [2018-11-14 18:49:59,064 INFO L273 TraceCheckUtils]: 82: Hoare triple {3153#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {3153#false} is VALID [2018-11-14 18:49:59,064 INFO L273 TraceCheckUtils]: 83: Hoare triple {3153#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {3153#false} is VALID [2018-11-14 18:49:59,064 INFO L273 TraceCheckUtils]: 84: Hoare triple {3153#false} assume !false; {3153#false} is VALID [2018-11-14 18:49:59,068 INFO L134 CoverageAnalysis]: Checked inductivity of 239 backedges. 90 proven. 2 refuted. 0 times theorem prover too weak. 147 trivial. 0 not checked. [2018-11-14 18:49:59,089 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:49:59,090 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 4] total 11 [2018-11-14 18:49:59,090 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 85 [2018-11-14 18:49:59,091 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:49:59,091 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states. [2018-11-14 18:49:59,165 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 74 edges. 74 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:49:59,165 INFO L459 AbstractCegarLoop]: Interpolant automaton has 11 states [2018-11-14 18:49:59,166 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2018-11-14 18:49:59,166 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=41, Invalid=69, Unknown=0, NotChecked=0, Total=110 [2018-11-14 18:49:59,166 INFO L87 Difference]: Start difference. First operand 56 states and 60 transitions. Second operand 11 states. [2018-11-14 18:49:59,491 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:49:59,491 INFO L93 Difference]: Finished difference Result 94 states and 103 transitions. [2018-11-14 18:49:59,491 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2018-11-14 18:49:59,492 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 85 [2018-11-14 18:49:59,492 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:49:59,492 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2018-11-14 18:49:59,494 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 85 transitions. [2018-11-14 18:49:59,494 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2018-11-14 18:49:59,495 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 85 transitions. [2018-11-14 18:49:59,495 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 85 transitions. [2018-11-14 18:49:59,600 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 85 edges. 85 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:49:59,602 INFO L225 Difference]: With dead ends: 94 [2018-11-14 18:49:59,602 INFO L226 Difference]: Without dead ends: 64 [2018-11-14 18:49:59,603 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 93 GetRequests, 84 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 12 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=41, Invalid=69, Unknown=0, NotChecked=0, Total=110 [2018-11-14 18:49:59,603 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 64 states. [2018-11-14 18:49:59,795 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 64 to 62. [2018-11-14 18:49:59,795 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:49:59,795 INFO L82 GeneralOperation]: Start isEquivalent. First operand 64 states. Second operand 62 states. [2018-11-14 18:49:59,795 INFO L74 IsIncluded]: Start isIncluded. First operand 64 states. Second operand 62 states. [2018-11-14 18:49:59,796 INFO L87 Difference]: Start difference. First operand 64 states. Second operand 62 states. [2018-11-14 18:49:59,798 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:49:59,798 INFO L93 Difference]: Finished difference Result 64 states and 68 transitions. [2018-11-14 18:49:59,798 INFO L276 IsEmpty]: Start isEmpty. Operand 64 states and 68 transitions. [2018-11-14 18:49:59,798 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:49:59,798 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:49:59,799 INFO L74 IsIncluded]: Start isIncluded. First operand 62 states. Second operand 64 states. [2018-11-14 18:49:59,799 INFO L87 Difference]: Start difference. First operand 62 states. Second operand 64 states. [2018-11-14 18:49:59,800 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:49:59,800 INFO L93 Difference]: Finished difference Result 64 states and 68 transitions. [2018-11-14 18:49:59,800 INFO L276 IsEmpty]: Start isEmpty. Operand 64 states and 68 transitions. [2018-11-14 18:49:59,801 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:49:59,801 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:49:59,801 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:49:59,801 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:49:59,801 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 62 states. [2018-11-14 18:49:59,803 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 62 states to 62 states and 66 transitions. [2018-11-14 18:49:59,803 INFO L78 Accepts]: Start accepts. Automaton has 62 states and 66 transitions. Word has length 85 [2018-11-14 18:49:59,803 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:49:59,803 INFO L480 AbstractCegarLoop]: Abstraction has 62 states and 66 transitions. [2018-11-14 18:49:59,803 INFO L481 AbstractCegarLoop]: Interpolant automaton has 11 states. [2018-11-14 18:49:59,803 INFO L276 IsEmpty]: Start isEmpty. Operand 62 states and 66 transitions. [2018-11-14 18:49:59,804 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 92 [2018-11-14 18:49:59,804 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:49:59,805 INFO L375 BasicCegarLoop]: trace histogram [12, 9, 9, 8, 7, 7, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:49:59,805 INFO L423 AbstractCegarLoop]: === Iteration 11 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:49:59,805 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:49:59,805 INFO L82 PathProgramCache]: Analyzing trace with hash 318027935, now seen corresponding path program 7 times [2018-11-14 18:49:59,805 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:49:59,806 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:49:59,806 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:49:59,806 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 18:49:59,806 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:49:59,824 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:50:00,048 INFO L256 TraceCheckUtils]: 0: Hoare triple {3757#true} call ULTIMATE.init(); {3757#true} is VALID [2018-11-14 18:50:00,048 INFO L273 TraceCheckUtils]: 1: Hoare triple {3757#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {3757#true} is VALID [2018-11-14 18:50:00,049 INFO L273 TraceCheckUtils]: 2: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 18:50:00,049 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {3757#true} {3757#true} #69#return; {3757#true} is VALID [2018-11-14 18:50:00,049 INFO L256 TraceCheckUtils]: 4: Hoare triple {3757#true} call #t~ret12 := main(); {3757#true} is VALID [2018-11-14 18:50:00,049 INFO L273 TraceCheckUtils]: 5: Hoare triple {3757#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {3759#(= main_~i~1 0)} is VALID [2018-11-14 18:50:00,050 INFO L273 TraceCheckUtils]: 6: Hoare triple {3759#(= main_~i~1 0)} assume true; {3759#(= main_~i~1 0)} is VALID [2018-11-14 18:50:00,050 INFO L273 TraceCheckUtils]: 7: Hoare triple {3759#(= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3759#(= main_~i~1 0)} is VALID [2018-11-14 18:50:00,051 INFO L273 TraceCheckUtils]: 8: Hoare triple {3759#(= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3760#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:00,051 INFO L273 TraceCheckUtils]: 9: Hoare triple {3760#(<= main_~i~1 1)} assume true; {3760#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:00,052 INFO L273 TraceCheckUtils]: 10: Hoare triple {3760#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3760#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:00,052 INFO L273 TraceCheckUtils]: 11: Hoare triple {3760#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3761#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:00,053 INFO L273 TraceCheckUtils]: 12: Hoare triple {3761#(<= main_~i~1 2)} assume true; {3761#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:00,053 INFO L273 TraceCheckUtils]: 13: Hoare triple {3761#(<= main_~i~1 2)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3761#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:00,053 INFO L273 TraceCheckUtils]: 14: Hoare triple {3761#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3762#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:00,054 INFO L273 TraceCheckUtils]: 15: Hoare triple {3762#(<= main_~i~1 3)} assume true; {3762#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:00,054 INFO L273 TraceCheckUtils]: 16: Hoare triple {3762#(<= main_~i~1 3)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3762#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:00,055 INFO L273 TraceCheckUtils]: 17: Hoare triple {3762#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3763#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:00,055 INFO L273 TraceCheckUtils]: 18: Hoare triple {3763#(<= main_~i~1 4)} assume true; {3763#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:00,056 INFO L273 TraceCheckUtils]: 19: Hoare triple {3763#(<= main_~i~1 4)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3763#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:00,056 INFO L273 TraceCheckUtils]: 20: Hoare triple {3763#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3764#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:00,057 INFO L273 TraceCheckUtils]: 21: Hoare triple {3764#(<= main_~i~1 5)} assume true; {3764#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:00,057 INFO L273 TraceCheckUtils]: 22: Hoare triple {3764#(<= main_~i~1 5)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3764#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:00,058 INFO L273 TraceCheckUtils]: 23: Hoare triple {3764#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3765#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:00,058 INFO L273 TraceCheckUtils]: 24: Hoare triple {3765#(<= main_~i~1 6)} assume true; {3765#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:00,059 INFO L273 TraceCheckUtils]: 25: Hoare triple {3765#(<= main_~i~1 6)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3765#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:00,060 INFO L273 TraceCheckUtils]: 26: Hoare triple {3765#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3766#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:00,060 INFO L273 TraceCheckUtils]: 27: Hoare triple {3766#(<= main_~i~1 7)} assume true; {3766#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:00,061 INFO L273 TraceCheckUtils]: 28: Hoare triple {3766#(<= main_~i~1 7)} assume !(~i~1 < 20); {3758#false} is VALID [2018-11-14 18:50:00,061 INFO L256 TraceCheckUtils]: 29: Hoare triple {3758#false} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {3757#true} is VALID [2018-11-14 18:50:00,061 INFO L273 TraceCheckUtils]: 30: Hoare triple {3757#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {3757#true} is VALID [2018-11-14 18:50:00,061 INFO L273 TraceCheckUtils]: 31: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 18:50:00,062 INFO L273 TraceCheckUtils]: 32: Hoare triple {3757#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {3757#true} is VALID [2018-11-14 18:50:00,062 INFO L273 TraceCheckUtils]: 33: Hoare triple {3757#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3757#true} is VALID [2018-11-14 18:50:00,062 INFO L273 TraceCheckUtils]: 34: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 18:50:00,062 INFO L273 TraceCheckUtils]: 35: Hoare triple {3757#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {3757#true} is VALID [2018-11-14 18:50:00,062 INFO L273 TraceCheckUtils]: 36: Hoare triple {3757#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3757#true} is VALID [2018-11-14 18:50:00,063 INFO L273 TraceCheckUtils]: 37: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 18:50:00,063 INFO L273 TraceCheckUtils]: 38: Hoare triple {3757#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {3757#true} is VALID [2018-11-14 18:50:00,063 INFO L273 TraceCheckUtils]: 39: Hoare triple {3757#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3757#true} is VALID [2018-11-14 18:50:00,063 INFO L273 TraceCheckUtils]: 40: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 18:50:00,063 INFO L273 TraceCheckUtils]: 41: Hoare triple {3757#true} assume !(~i~0 < 20); {3757#true} is VALID [2018-11-14 18:50:00,063 INFO L273 TraceCheckUtils]: 42: Hoare triple {3757#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {3757#true} is VALID [2018-11-14 18:50:00,064 INFO L273 TraceCheckUtils]: 43: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 18:50:00,064 INFO L268 TraceCheckUtils]: 44: Hoare quadruple {3757#true} {3758#false} #73#return; {3758#false} is VALID [2018-11-14 18:50:00,064 INFO L273 TraceCheckUtils]: 45: Hoare triple {3758#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {3758#false} is VALID [2018-11-14 18:50:00,064 INFO L256 TraceCheckUtils]: 46: Hoare triple {3758#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {3757#true} is VALID [2018-11-14 18:50:00,064 INFO L273 TraceCheckUtils]: 47: Hoare triple {3757#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {3757#true} is VALID [2018-11-14 18:50:00,064 INFO L273 TraceCheckUtils]: 48: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 18:50:00,064 INFO L273 TraceCheckUtils]: 49: Hoare triple {3757#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {3757#true} is VALID [2018-11-14 18:50:00,064 INFO L273 TraceCheckUtils]: 50: Hoare triple {3757#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3757#true} is VALID [2018-11-14 18:50:00,065 INFO L273 TraceCheckUtils]: 51: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 18:50:00,065 INFO L273 TraceCheckUtils]: 52: Hoare triple {3757#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {3757#true} is VALID [2018-11-14 18:50:00,065 INFO L273 TraceCheckUtils]: 53: Hoare triple {3757#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3757#true} is VALID [2018-11-14 18:50:00,065 INFO L273 TraceCheckUtils]: 54: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 18:50:00,065 INFO L273 TraceCheckUtils]: 55: Hoare triple {3757#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {3757#true} is VALID [2018-11-14 18:50:00,065 INFO L273 TraceCheckUtils]: 56: Hoare triple {3757#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3757#true} is VALID [2018-11-14 18:50:00,065 INFO L273 TraceCheckUtils]: 57: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 18:50:00,065 INFO L273 TraceCheckUtils]: 58: Hoare triple {3757#true} assume !(~i~0 < 20); {3757#true} is VALID [2018-11-14 18:50:00,066 INFO L273 TraceCheckUtils]: 59: Hoare triple {3757#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {3757#true} is VALID [2018-11-14 18:50:00,066 INFO L273 TraceCheckUtils]: 60: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 18:50:00,066 INFO L268 TraceCheckUtils]: 61: Hoare quadruple {3757#true} {3758#false} #75#return; {3758#false} is VALID [2018-11-14 18:50:00,066 INFO L273 TraceCheckUtils]: 62: Hoare triple {3758#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {3758#false} is VALID [2018-11-14 18:50:00,066 INFO L273 TraceCheckUtils]: 63: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 18:50:00,066 INFO L273 TraceCheckUtils]: 64: Hoare triple {3758#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {3758#false} is VALID [2018-11-14 18:50:00,066 INFO L273 TraceCheckUtils]: 65: Hoare triple {3758#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {3758#false} is VALID [2018-11-14 18:50:00,066 INFO L273 TraceCheckUtils]: 66: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 18:50:00,066 INFO L273 TraceCheckUtils]: 67: Hoare triple {3758#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {3758#false} is VALID [2018-11-14 18:50:00,067 INFO L273 TraceCheckUtils]: 68: Hoare triple {3758#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {3758#false} is VALID [2018-11-14 18:50:00,067 INFO L273 TraceCheckUtils]: 69: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 18:50:00,067 INFO L273 TraceCheckUtils]: 70: Hoare triple {3758#false} assume !(~i~2 < 19); {3758#false} is VALID [2018-11-14 18:50:00,067 INFO L273 TraceCheckUtils]: 71: Hoare triple {3758#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {3758#false} is VALID [2018-11-14 18:50:00,067 INFO L256 TraceCheckUtils]: 72: Hoare triple {3758#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {3757#true} is VALID [2018-11-14 18:50:00,067 INFO L273 TraceCheckUtils]: 73: Hoare triple {3757#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {3757#true} is VALID [2018-11-14 18:50:00,067 INFO L273 TraceCheckUtils]: 74: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 18:50:00,067 INFO L273 TraceCheckUtils]: 75: Hoare triple {3757#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {3757#true} is VALID [2018-11-14 18:50:00,068 INFO L273 TraceCheckUtils]: 76: Hoare triple {3757#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3757#true} is VALID [2018-11-14 18:50:00,068 INFO L273 TraceCheckUtils]: 77: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 18:50:00,068 INFO L273 TraceCheckUtils]: 78: Hoare triple {3757#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {3757#true} is VALID [2018-11-14 18:50:00,068 INFO L273 TraceCheckUtils]: 79: Hoare triple {3757#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3757#true} is VALID [2018-11-14 18:50:00,068 INFO L273 TraceCheckUtils]: 80: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 18:50:00,068 INFO L273 TraceCheckUtils]: 81: Hoare triple {3757#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {3757#true} is VALID [2018-11-14 18:50:00,068 INFO L273 TraceCheckUtils]: 82: Hoare triple {3757#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3757#true} is VALID [2018-11-14 18:50:00,068 INFO L273 TraceCheckUtils]: 83: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 18:50:00,068 INFO L273 TraceCheckUtils]: 84: Hoare triple {3757#true} assume !(~i~0 < 20); {3757#true} is VALID [2018-11-14 18:50:00,069 INFO L273 TraceCheckUtils]: 85: Hoare triple {3757#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {3757#true} is VALID [2018-11-14 18:50:00,069 INFO L273 TraceCheckUtils]: 86: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 18:50:00,069 INFO L268 TraceCheckUtils]: 87: Hoare quadruple {3757#true} {3758#false} #77#return; {3758#false} is VALID [2018-11-14 18:50:00,069 INFO L273 TraceCheckUtils]: 88: Hoare triple {3758#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {3758#false} is VALID [2018-11-14 18:50:00,069 INFO L273 TraceCheckUtils]: 89: Hoare triple {3758#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {3758#false} is VALID [2018-11-14 18:50:00,069 INFO L273 TraceCheckUtils]: 90: Hoare triple {3758#false} assume !false; {3758#false} is VALID [2018-11-14 18:50:00,074 INFO L134 CoverageAnalysis]: Checked inductivity of 264 backedges. 0 proven. 77 refuted. 0 times theorem prover too weak. 187 trivial. 0 not checked. [2018-11-14 18:50:00,074 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:50:00,074 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 9 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 9 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:50:00,087 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 18:50:00,121 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:50:00,139 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:50:00,140 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:50:00,262 INFO L256 TraceCheckUtils]: 0: Hoare triple {3757#true} call ULTIMATE.init(); {3757#true} is VALID [2018-11-14 18:50:00,263 INFO L273 TraceCheckUtils]: 1: Hoare triple {3757#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {3757#true} is VALID [2018-11-14 18:50:00,263 INFO L273 TraceCheckUtils]: 2: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 18:50:00,263 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {3757#true} {3757#true} #69#return; {3757#true} is VALID [2018-11-14 18:50:00,264 INFO L256 TraceCheckUtils]: 4: Hoare triple {3757#true} call #t~ret12 := main(); {3757#true} is VALID [2018-11-14 18:50:00,264 INFO L273 TraceCheckUtils]: 5: Hoare triple {3757#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {3785#(<= main_~i~1 0)} is VALID [2018-11-14 18:50:00,265 INFO L273 TraceCheckUtils]: 6: Hoare triple {3785#(<= main_~i~1 0)} assume true; {3785#(<= main_~i~1 0)} is VALID [2018-11-14 18:50:00,265 INFO L273 TraceCheckUtils]: 7: Hoare triple {3785#(<= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3785#(<= main_~i~1 0)} is VALID [2018-11-14 18:50:00,266 INFO L273 TraceCheckUtils]: 8: Hoare triple {3785#(<= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3760#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:00,266 INFO L273 TraceCheckUtils]: 9: Hoare triple {3760#(<= main_~i~1 1)} assume true; {3760#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:00,266 INFO L273 TraceCheckUtils]: 10: Hoare triple {3760#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3760#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:00,267 INFO L273 TraceCheckUtils]: 11: Hoare triple {3760#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3761#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:00,268 INFO L273 TraceCheckUtils]: 12: Hoare triple {3761#(<= main_~i~1 2)} assume true; {3761#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:00,268 INFO L273 TraceCheckUtils]: 13: Hoare triple {3761#(<= main_~i~1 2)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3761#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:00,269 INFO L273 TraceCheckUtils]: 14: Hoare triple {3761#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3762#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:00,270 INFO L273 TraceCheckUtils]: 15: Hoare triple {3762#(<= main_~i~1 3)} assume true; {3762#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:00,270 INFO L273 TraceCheckUtils]: 16: Hoare triple {3762#(<= main_~i~1 3)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3762#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:00,271 INFO L273 TraceCheckUtils]: 17: Hoare triple {3762#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3763#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:00,271 INFO L273 TraceCheckUtils]: 18: Hoare triple {3763#(<= main_~i~1 4)} assume true; {3763#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:00,272 INFO L273 TraceCheckUtils]: 19: Hoare triple {3763#(<= main_~i~1 4)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3763#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:00,273 INFO L273 TraceCheckUtils]: 20: Hoare triple {3763#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3764#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:00,273 INFO L273 TraceCheckUtils]: 21: Hoare triple {3764#(<= main_~i~1 5)} assume true; {3764#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:00,274 INFO L273 TraceCheckUtils]: 22: Hoare triple {3764#(<= main_~i~1 5)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3764#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:00,275 INFO L273 TraceCheckUtils]: 23: Hoare triple {3764#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3765#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:00,275 INFO L273 TraceCheckUtils]: 24: Hoare triple {3765#(<= main_~i~1 6)} assume true; {3765#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:00,276 INFO L273 TraceCheckUtils]: 25: Hoare triple {3765#(<= main_~i~1 6)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3765#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:00,277 INFO L273 TraceCheckUtils]: 26: Hoare triple {3765#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3766#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:00,277 INFO L273 TraceCheckUtils]: 27: Hoare triple {3766#(<= main_~i~1 7)} assume true; {3766#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:00,278 INFO L273 TraceCheckUtils]: 28: Hoare triple {3766#(<= main_~i~1 7)} assume !(~i~1 < 20); {3758#false} is VALID [2018-11-14 18:50:00,278 INFO L256 TraceCheckUtils]: 29: Hoare triple {3758#false} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {3758#false} is VALID [2018-11-14 18:50:00,278 INFO L273 TraceCheckUtils]: 30: Hoare triple {3758#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {3758#false} is VALID [2018-11-14 18:50:00,279 INFO L273 TraceCheckUtils]: 31: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 18:50:00,279 INFO L273 TraceCheckUtils]: 32: Hoare triple {3758#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {3758#false} is VALID [2018-11-14 18:50:00,279 INFO L273 TraceCheckUtils]: 33: Hoare triple {3758#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3758#false} is VALID [2018-11-14 18:50:00,279 INFO L273 TraceCheckUtils]: 34: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 18:50:00,279 INFO L273 TraceCheckUtils]: 35: Hoare triple {3758#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {3758#false} is VALID [2018-11-14 18:50:00,280 INFO L273 TraceCheckUtils]: 36: Hoare triple {3758#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3758#false} is VALID [2018-11-14 18:50:00,280 INFO L273 TraceCheckUtils]: 37: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 18:50:00,280 INFO L273 TraceCheckUtils]: 38: Hoare triple {3758#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {3758#false} is VALID [2018-11-14 18:50:00,280 INFO L273 TraceCheckUtils]: 39: Hoare triple {3758#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3758#false} is VALID [2018-11-14 18:50:00,280 INFO L273 TraceCheckUtils]: 40: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 18:50:00,281 INFO L273 TraceCheckUtils]: 41: Hoare triple {3758#false} assume !(~i~0 < 20); {3758#false} is VALID [2018-11-14 18:50:00,281 INFO L273 TraceCheckUtils]: 42: Hoare triple {3758#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {3758#false} is VALID [2018-11-14 18:50:00,281 INFO L273 TraceCheckUtils]: 43: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 18:50:00,281 INFO L268 TraceCheckUtils]: 44: Hoare quadruple {3758#false} {3758#false} #73#return; {3758#false} is VALID [2018-11-14 18:50:00,282 INFO L273 TraceCheckUtils]: 45: Hoare triple {3758#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {3758#false} is VALID [2018-11-14 18:50:00,282 INFO L256 TraceCheckUtils]: 46: Hoare triple {3758#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {3758#false} is VALID [2018-11-14 18:50:00,282 INFO L273 TraceCheckUtils]: 47: Hoare triple {3758#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {3758#false} is VALID [2018-11-14 18:50:00,282 INFO L273 TraceCheckUtils]: 48: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 18:50:00,282 INFO L273 TraceCheckUtils]: 49: Hoare triple {3758#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {3758#false} is VALID [2018-11-14 18:50:00,282 INFO L273 TraceCheckUtils]: 50: Hoare triple {3758#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3758#false} is VALID [2018-11-14 18:50:00,282 INFO L273 TraceCheckUtils]: 51: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 18:50:00,282 INFO L273 TraceCheckUtils]: 52: Hoare triple {3758#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {3758#false} is VALID [2018-11-14 18:50:00,283 INFO L273 TraceCheckUtils]: 53: Hoare triple {3758#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3758#false} is VALID [2018-11-14 18:50:00,283 INFO L273 TraceCheckUtils]: 54: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 18:50:00,283 INFO L273 TraceCheckUtils]: 55: Hoare triple {3758#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {3758#false} is VALID [2018-11-14 18:50:00,283 INFO L273 TraceCheckUtils]: 56: Hoare triple {3758#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3758#false} is VALID [2018-11-14 18:50:00,283 INFO L273 TraceCheckUtils]: 57: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 18:50:00,283 INFO L273 TraceCheckUtils]: 58: Hoare triple {3758#false} assume !(~i~0 < 20); {3758#false} is VALID [2018-11-14 18:50:00,283 INFO L273 TraceCheckUtils]: 59: Hoare triple {3758#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {3758#false} is VALID [2018-11-14 18:50:00,283 INFO L273 TraceCheckUtils]: 60: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 18:50:00,284 INFO L268 TraceCheckUtils]: 61: Hoare quadruple {3758#false} {3758#false} #75#return; {3758#false} is VALID [2018-11-14 18:50:00,284 INFO L273 TraceCheckUtils]: 62: Hoare triple {3758#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {3758#false} is VALID [2018-11-14 18:50:00,284 INFO L273 TraceCheckUtils]: 63: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 18:50:00,284 INFO L273 TraceCheckUtils]: 64: Hoare triple {3758#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {3758#false} is VALID [2018-11-14 18:50:00,284 INFO L273 TraceCheckUtils]: 65: Hoare triple {3758#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {3758#false} is VALID [2018-11-14 18:50:00,284 INFO L273 TraceCheckUtils]: 66: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 18:50:00,284 INFO L273 TraceCheckUtils]: 67: Hoare triple {3758#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {3758#false} is VALID [2018-11-14 18:50:00,284 INFO L273 TraceCheckUtils]: 68: Hoare triple {3758#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {3758#false} is VALID [2018-11-14 18:50:00,285 INFO L273 TraceCheckUtils]: 69: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 18:50:00,285 INFO L273 TraceCheckUtils]: 70: Hoare triple {3758#false} assume !(~i~2 < 19); {3758#false} is VALID [2018-11-14 18:50:00,285 INFO L273 TraceCheckUtils]: 71: Hoare triple {3758#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {3758#false} is VALID [2018-11-14 18:50:00,285 INFO L256 TraceCheckUtils]: 72: Hoare triple {3758#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {3758#false} is VALID [2018-11-14 18:50:00,285 INFO L273 TraceCheckUtils]: 73: Hoare triple {3758#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {3758#false} is VALID [2018-11-14 18:50:00,285 INFO L273 TraceCheckUtils]: 74: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 18:50:00,285 INFO L273 TraceCheckUtils]: 75: Hoare triple {3758#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {3758#false} is VALID [2018-11-14 18:50:00,285 INFO L273 TraceCheckUtils]: 76: Hoare triple {3758#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3758#false} is VALID [2018-11-14 18:50:00,285 INFO L273 TraceCheckUtils]: 77: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 18:50:00,286 INFO L273 TraceCheckUtils]: 78: Hoare triple {3758#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {3758#false} is VALID [2018-11-14 18:50:00,286 INFO L273 TraceCheckUtils]: 79: Hoare triple {3758#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3758#false} is VALID [2018-11-14 18:50:00,286 INFO L273 TraceCheckUtils]: 80: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 18:50:00,286 INFO L273 TraceCheckUtils]: 81: Hoare triple {3758#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {3758#false} is VALID [2018-11-14 18:50:00,286 INFO L273 TraceCheckUtils]: 82: Hoare triple {3758#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3758#false} is VALID [2018-11-14 18:50:00,286 INFO L273 TraceCheckUtils]: 83: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 18:50:00,286 INFO L273 TraceCheckUtils]: 84: Hoare triple {3758#false} assume !(~i~0 < 20); {3758#false} is VALID [2018-11-14 18:50:00,286 INFO L273 TraceCheckUtils]: 85: Hoare triple {3758#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {3758#false} is VALID [2018-11-14 18:50:00,287 INFO L273 TraceCheckUtils]: 86: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 18:50:00,287 INFO L268 TraceCheckUtils]: 87: Hoare quadruple {3758#false} {3758#false} #77#return; {3758#false} is VALID [2018-11-14 18:50:00,287 INFO L273 TraceCheckUtils]: 88: Hoare triple {3758#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {3758#false} is VALID [2018-11-14 18:50:00,287 INFO L273 TraceCheckUtils]: 89: Hoare triple {3758#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {3758#false} is VALID [2018-11-14 18:50:00,287 INFO L273 TraceCheckUtils]: 90: Hoare triple {3758#false} assume !false; {3758#false} is VALID [2018-11-14 18:50:00,291 INFO L134 CoverageAnalysis]: Checked inductivity of 264 backedges. 0 proven. 77 refuted. 0 times theorem prover too weak. 187 trivial. 0 not checked. [2018-11-14 18:50:00,312 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:50:00,312 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 11 [2018-11-14 18:50:00,313 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 91 [2018-11-14 18:50:00,314 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:50:00,314 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states. [2018-11-14 18:50:00,386 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 69 edges. 69 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:50:00,386 INFO L459 AbstractCegarLoop]: Interpolant automaton has 11 states [2018-11-14 18:50:00,386 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2018-11-14 18:50:00,386 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=55, Invalid=55, Unknown=0, NotChecked=0, Total=110 [2018-11-14 18:50:00,387 INFO L87 Difference]: Start difference. First operand 62 states and 66 transitions. Second operand 11 states. [2018-11-14 18:50:00,719 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:00,719 INFO L93 Difference]: Finished difference Result 99 states and 107 transitions. [2018-11-14 18:50:00,719 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2018-11-14 18:50:00,719 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 91 [2018-11-14 18:50:00,719 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:50:00,719 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2018-11-14 18:50:00,721 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 81 transitions. [2018-11-14 18:50:00,721 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2018-11-14 18:50:00,723 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 81 transitions. [2018-11-14 18:50:00,723 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 81 transitions. [2018-11-14 18:50:00,811 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 81 edges. 81 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:50:00,813 INFO L225 Difference]: With dead ends: 99 [2018-11-14 18:50:00,813 INFO L226 Difference]: Without dead ends: 66 [2018-11-14 18:50:00,813 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 100 GetRequests, 91 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 12 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=55, Invalid=55, Unknown=0, NotChecked=0, Total=110 [2018-11-14 18:50:00,814 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 66 states. [2018-11-14 18:50:00,836 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 66 to 65. [2018-11-14 18:50:00,837 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:50:00,837 INFO L82 GeneralOperation]: Start isEquivalent. First operand 66 states. Second operand 65 states. [2018-11-14 18:50:00,837 INFO L74 IsIncluded]: Start isIncluded. First operand 66 states. Second operand 65 states. [2018-11-14 18:50:00,837 INFO L87 Difference]: Start difference. First operand 66 states. Second operand 65 states. [2018-11-14 18:50:00,839 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:00,839 INFO L93 Difference]: Finished difference Result 66 states and 70 transitions. [2018-11-14 18:50:00,839 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 70 transitions. [2018-11-14 18:50:00,839 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:50:00,839 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:50:00,839 INFO L74 IsIncluded]: Start isIncluded. First operand 65 states. Second operand 66 states. [2018-11-14 18:50:00,839 INFO L87 Difference]: Start difference. First operand 65 states. Second operand 66 states. [2018-11-14 18:50:00,841 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:00,841 INFO L93 Difference]: Finished difference Result 66 states and 70 transitions. [2018-11-14 18:50:00,841 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 70 transitions. [2018-11-14 18:50:00,841 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:50:00,841 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:50:00,841 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:50:00,841 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:50:00,841 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 65 states. [2018-11-14 18:50:00,843 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 65 states to 65 states and 69 transitions. [2018-11-14 18:50:00,843 INFO L78 Accepts]: Start accepts. Automaton has 65 states and 69 transitions. Word has length 91 [2018-11-14 18:50:00,843 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:50:00,843 INFO L480 AbstractCegarLoop]: Abstraction has 65 states and 69 transitions. [2018-11-14 18:50:00,843 INFO L481 AbstractCegarLoop]: Interpolant automaton has 11 states. [2018-11-14 18:50:00,843 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 69 transitions. [2018-11-14 18:50:00,844 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 95 [2018-11-14 18:50:00,844 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:50:00,845 INFO L375 BasicCegarLoop]: trace histogram [12, 9, 9, 9, 8, 8, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:50:00,845 INFO L423 AbstractCegarLoop]: === Iteration 12 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:50:00,845 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:50:00,845 INFO L82 PathProgramCache]: Analyzing trace with hash 1006612453, now seen corresponding path program 8 times [2018-11-14 18:50:00,846 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:50:00,846 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:50:00,846 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:50:00,847 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 18:50:00,847 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:50:00,870 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:50:01,114 INFO L256 TraceCheckUtils]: 0: Hoare triple {4395#true} call ULTIMATE.init(); {4395#true} is VALID [2018-11-14 18:50:01,115 INFO L273 TraceCheckUtils]: 1: Hoare triple {4395#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {4395#true} is VALID [2018-11-14 18:50:01,115 INFO L273 TraceCheckUtils]: 2: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 18:50:01,115 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {4395#true} {4395#true} #69#return; {4395#true} is VALID [2018-11-14 18:50:01,116 INFO L256 TraceCheckUtils]: 4: Hoare triple {4395#true} call #t~ret12 := main(); {4395#true} is VALID [2018-11-14 18:50:01,116 INFO L273 TraceCheckUtils]: 5: Hoare triple {4395#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {4397#(= main_~i~1 0)} is VALID [2018-11-14 18:50:01,117 INFO L273 TraceCheckUtils]: 6: Hoare triple {4397#(= main_~i~1 0)} assume true; {4397#(= main_~i~1 0)} is VALID [2018-11-14 18:50:01,118 INFO L273 TraceCheckUtils]: 7: Hoare triple {4397#(= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {4397#(= main_~i~1 0)} is VALID [2018-11-14 18:50:01,118 INFO L273 TraceCheckUtils]: 8: Hoare triple {4397#(= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {4398#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:01,119 INFO L273 TraceCheckUtils]: 9: Hoare triple {4398#(<= main_~i~1 1)} assume true; {4398#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:01,120 INFO L273 TraceCheckUtils]: 10: Hoare triple {4398#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {4398#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:01,121 INFO L273 TraceCheckUtils]: 11: Hoare triple {4398#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {4399#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:01,121 INFO L273 TraceCheckUtils]: 12: Hoare triple {4399#(<= main_~i~1 2)} assume true; {4399#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:01,122 INFO L273 TraceCheckUtils]: 13: Hoare triple {4399#(<= main_~i~1 2)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {4399#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:01,123 INFO L273 TraceCheckUtils]: 14: Hoare triple {4399#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {4400#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:01,123 INFO L273 TraceCheckUtils]: 15: Hoare triple {4400#(<= main_~i~1 3)} assume true; {4400#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:01,124 INFO L273 TraceCheckUtils]: 16: Hoare triple {4400#(<= main_~i~1 3)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {4400#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:01,125 INFO L273 TraceCheckUtils]: 17: Hoare triple {4400#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {4401#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:01,125 INFO L273 TraceCheckUtils]: 18: Hoare triple {4401#(<= main_~i~1 4)} assume true; {4401#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:01,126 INFO L273 TraceCheckUtils]: 19: Hoare triple {4401#(<= main_~i~1 4)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {4401#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:01,127 INFO L273 TraceCheckUtils]: 20: Hoare triple {4401#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {4402#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:01,128 INFO L273 TraceCheckUtils]: 21: Hoare triple {4402#(<= main_~i~1 5)} assume true; {4402#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:01,128 INFO L273 TraceCheckUtils]: 22: Hoare triple {4402#(<= main_~i~1 5)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {4402#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:01,129 INFO L273 TraceCheckUtils]: 23: Hoare triple {4402#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {4403#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:01,130 INFO L273 TraceCheckUtils]: 24: Hoare triple {4403#(<= main_~i~1 6)} assume true; {4403#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:01,130 INFO L273 TraceCheckUtils]: 25: Hoare triple {4403#(<= main_~i~1 6)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {4403#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:01,131 INFO L273 TraceCheckUtils]: 26: Hoare triple {4403#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {4404#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:01,132 INFO L273 TraceCheckUtils]: 27: Hoare triple {4404#(<= main_~i~1 7)} assume true; {4404#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:01,132 INFO L273 TraceCheckUtils]: 28: Hoare triple {4404#(<= main_~i~1 7)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {4404#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:01,133 INFO L273 TraceCheckUtils]: 29: Hoare triple {4404#(<= main_~i~1 7)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {4405#(<= main_~i~1 8)} is VALID [2018-11-14 18:50:01,134 INFO L273 TraceCheckUtils]: 30: Hoare triple {4405#(<= main_~i~1 8)} assume true; {4405#(<= main_~i~1 8)} is VALID [2018-11-14 18:50:01,135 INFO L273 TraceCheckUtils]: 31: Hoare triple {4405#(<= main_~i~1 8)} assume !(~i~1 < 20); {4396#false} is VALID [2018-11-14 18:50:01,135 INFO L256 TraceCheckUtils]: 32: Hoare triple {4396#false} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {4395#true} is VALID [2018-11-14 18:50:01,135 INFO L273 TraceCheckUtils]: 33: Hoare triple {4395#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {4395#true} is VALID [2018-11-14 18:50:01,135 INFO L273 TraceCheckUtils]: 34: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 18:50:01,136 INFO L273 TraceCheckUtils]: 35: Hoare triple {4395#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {4395#true} is VALID [2018-11-14 18:50:01,136 INFO L273 TraceCheckUtils]: 36: Hoare triple {4395#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {4395#true} is VALID [2018-11-14 18:50:01,136 INFO L273 TraceCheckUtils]: 37: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 18:50:01,136 INFO L273 TraceCheckUtils]: 38: Hoare triple {4395#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {4395#true} is VALID [2018-11-14 18:50:01,137 INFO L273 TraceCheckUtils]: 39: Hoare triple {4395#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {4395#true} is VALID [2018-11-14 18:50:01,137 INFO L273 TraceCheckUtils]: 40: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 18:50:01,137 INFO L273 TraceCheckUtils]: 41: Hoare triple {4395#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {4395#true} is VALID [2018-11-14 18:50:01,137 INFO L273 TraceCheckUtils]: 42: Hoare triple {4395#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {4395#true} is VALID [2018-11-14 18:50:01,137 INFO L273 TraceCheckUtils]: 43: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 18:50:01,137 INFO L273 TraceCheckUtils]: 44: Hoare triple {4395#true} assume !(~i~0 < 20); {4395#true} is VALID [2018-11-14 18:50:01,137 INFO L273 TraceCheckUtils]: 45: Hoare triple {4395#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {4395#true} is VALID [2018-11-14 18:50:01,138 INFO L273 TraceCheckUtils]: 46: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 18:50:01,138 INFO L268 TraceCheckUtils]: 47: Hoare quadruple {4395#true} {4396#false} #73#return; {4396#false} is VALID [2018-11-14 18:50:01,138 INFO L273 TraceCheckUtils]: 48: Hoare triple {4396#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {4396#false} is VALID [2018-11-14 18:50:01,138 INFO L256 TraceCheckUtils]: 49: Hoare triple {4396#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {4395#true} is VALID [2018-11-14 18:50:01,138 INFO L273 TraceCheckUtils]: 50: Hoare triple {4395#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {4395#true} is VALID [2018-11-14 18:50:01,138 INFO L273 TraceCheckUtils]: 51: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 18:50:01,139 INFO L273 TraceCheckUtils]: 52: Hoare triple {4395#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {4395#true} is VALID [2018-11-14 18:50:01,139 INFO L273 TraceCheckUtils]: 53: Hoare triple {4395#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {4395#true} is VALID [2018-11-14 18:50:01,139 INFO L273 TraceCheckUtils]: 54: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 18:50:01,139 INFO L273 TraceCheckUtils]: 55: Hoare triple {4395#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {4395#true} is VALID [2018-11-14 18:50:01,139 INFO L273 TraceCheckUtils]: 56: Hoare triple {4395#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {4395#true} is VALID [2018-11-14 18:50:01,139 INFO L273 TraceCheckUtils]: 57: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 18:50:01,139 INFO L273 TraceCheckUtils]: 58: Hoare triple {4395#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {4395#true} is VALID [2018-11-14 18:50:01,140 INFO L273 TraceCheckUtils]: 59: Hoare triple {4395#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {4395#true} is VALID [2018-11-14 18:50:01,140 INFO L273 TraceCheckUtils]: 60: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 18:50:01,140 INFO L273 TraceCheckUtils]: 61: Hoare triple {4395#true} assume !(~i~0 < 20); {4395#true} is VALID [2018-11-14 18:50:01,140 INFO L273 TraceCheckUtils]: 62: Hoare triple {4395#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {4395#true} is VALID [2018-11-14 18:50:01,140 INFO L273 TraceCheckUtils]: 63: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 18:50:01,140 INFO L268 TraceCheckUtils]: 64: Hoare quadruple {4395#true} {4396#false} #75#return; {4396#false} is VALID [2018-11-14 18:50:01,140 INFO L273 TraceCheckUtils]: 65: Hoare triple {4396#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {4396#false} is VALID [2018-11-14 18:50:01,140 INFO L273 TraceCheckUtils]: 66: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 18:50:01,141 INFO L273 TraceCheckUtils]: 67: Hoare triple {4396#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {4396#false} is VALID [2018-11-14 18:50:01,141 INFO L273 TraceCheckUtils]: 68: Hoare triple {4396#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {4396#false} is VALID [2018-11-14 18:50:01,141 INFO L273 TraceCheckUtils]: 69: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 18:50:01,141 INFO L273 TraceCheckUtils]: 70: Hoare triple {4396#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {4396#false} is VALID [2018-11-14 18:50:01,141 INFO L273 TraceCheckUtils]: 71: Hoare triple {4396#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {4396#false} is VALID [2018-11-14 18:50:01,141 INFO L273 TraceCheckUtils]: 72: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 18:50:01,141 INFO L273 TraceCheckUtils]: 73: Hoare triple {4396#false} assume !(~i~2 < 19); {4396#false} is VALID [2018-11-14 18:50:01,142 INFO L273 TraceCheckUtils]: 74: Hoare triple {4396#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {4396#false} is VALID [2018-11-14 18:50:01,142 INFO L256 TraceCheckUtils]: 75: Hoare triple {4396#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {4395#true} is VALID [2018-11-14 18:50:01,142 INFO L273 TraceCheckUtils]: 76: Hoare triple {4395#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {4395#true} is VALID [2018-11-14 18:50:01,142 INFO L273 TraceCheckUtils]: 77: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 18:50:01,142 INFO L273 TraceCheckUtils]: 78: Hoare triple {4395#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {4395#true} is VALID [2018-11-14 18:50:01,142 INFO L273 TraceCheckUtils]: 79: Hoare triple {4395#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {4395#true} is VALID [2018-11-14 18:50:01,142 INFO L273 TraceCheckUtils]: 80: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 18:50:01,142 INFO L273 TraceCheckUtils]: 81: Hoare triple {4395#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {4395#true} is VALID [2018-11-14 18:50:01,142 INFO L273 TraceCheckUtils]: 82: Hoare triple {4395#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {4395#true} is VALID [2018-11-14 18:50:01,143 INFO L273 TraceCheckUtils]: 83: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 18:50:01,143 INFO L273 TraceCheckUtils]: 84: Hoare triple {4395#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {4395#true} is VALID [2018-11-14 18:50:01,143 INFO L273 TraceCheckUtils]: 85: Hoare triple {4395#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {4395#true} is VALID [2018-11-14 18:50:01,143 INFO L273 TraceCheckUtils]: 86: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 18:50:01,143 INFO L273 TraceCheckUtils]: 87: Hoare triple {4395#true} assume !(~i~0 < 20); {4395#true} is VALID [2018-11-14 18:50:01,143 INFO L273 TraceCheckUtils]: 88: Hoare triple {4395#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {4395#true} is VALID [2018-11-14 18:50:01,143 INFO L273 TraceCheckUtils]: 89: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 18:50:01,143 INFO L268 TraceCheckUtils]: 90: Hoare quadruple {4395#true} {4396#false} #77#return; {4396#false} is VALID [2018-11-14 18:50:01,144 INFO L273 TraceCheckUtils]: 91: Hoare triple {4396#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {4396#false} is VALID [2018-11-14 18:50:01,144 INFO L273 TraceCheckUtils]: 92: Hoare triple {4396#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {4396#false} is VALID [2018-11-14 18:50:01,144 INFO L273 TraceCheckUtils]: 93: Hoare triple {4396#false} assume !false; {4396#false} is VALID [2018-11-14 18:50:01,148 INFO L134 CoverageAnalysis]: Checked inductivity of 287 backedges. 0 proven. 100 refuted. 0 times theorem prover too weak. 187 trivial. 0 not checked. [2018-11-14 18:50:01,148 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:50:01,148 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 10 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 10 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:50:01,157 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-14 18:50:01,202 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-14 18:50:01,202 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 18:50:01,225 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:50:01,226 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:50:01,397 INFO L256 TraceCheckUtils]: 0: Hoare triple {4395#true} call ULTIMATE.init(); {4395#true} is VALID [2018-11-14 18:50:01,397 INFO L273 TraceCheckUtils]: 1: Hoare triple {4395#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {4395#true} is VALID [2018-11-14 18:50:01,397 INFO L273 TraceCheckUtils]: 2: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 18:50:01,398 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {4395#true} {4395#true} #69#return; {4395#true} is VALID [2018-11-14 18:50:01,398 INFO L256 TraceCheckUtils]: 4: Hoare triple {4395#true} call #t~ret12 := main(); {4395#true} is VALID [2018-11-14 18:50:01,399 INFO L273 TraceCheckUtils]: 5: Hoare triple {4395#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {4424#(<= main_~i~1 0)} is VALID [2018-11-14 18:50:01,399 INFO L273 TraceCheckUtils]: 6: Hoare triple {4424#(<= main_~i~1 0)} assume true; {4424#(<= main_~i~1 0)} is VALID [2018-11-14 18:50:01,400 INFO L273 TraceCheckUtils]: 7: Hoare triple {4424#(<= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {4424#(<= main_~i~1 0)} is VALID [2018-11-14 18:50:01,400 INFO L273 TraceCheckUtils]: 8: Hoare triple {4424#(<= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {4398#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:01,401 INFO L273 TraceCheckUtils]: 9: Hoare triple {4398#(<= main_~i~1 1)} assume true; {4398#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:01,401 INFO L273 TraceCheckUtils]: 10: Hoare triple {4398#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {4398#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:01,402 INFO L273 TraceCheckUtils]: 11: Hoare triple {4398#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {4399#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:01,403 INFO L273 TraceCheckUtils]: 12: Hoare triple {4399#(<= main_~i~1 2)} assume true; {4399#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:01,403 INFO L273 TraceCheckUtils]: 13: Hoare triple {4399#(<= main_~i~1 2)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {4399#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:01,404 INFO L273 TraceCheckUtils]: 14: Hoare triple {4399#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {4400#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:01,405 INFO L273 TraceCheckUtils]: 15: Hoare triple {4400#(<= main_~i~1 3)} assume true; {4400#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:01,406 INFO L273 TraceCheckUtils]: 16: Hoare triple {4400#(<= main_~i~1 3)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {4400#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:01,406 INFO L273 TraceCheckUtils]: 17: Hoare triple {4400#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {4401#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:01,407 INFO L273 TraceCheckUtils]: 18: Hoare triple {4401#(<= main_~i~1 4)} assume true; {4401#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:01,408 INFO L273 TraceCheckUtils]: 19: Hoare triple {4401#(<= main_~i~1 4)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {4401#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:01,409 INFO L273 TraceCheckUtils]: 20: Hoare triple {4401#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {4402#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:01,409 INFO L273 TraceCheckUtils]: 21: Hoare triple {4402#(<= main_~i~1 5)} assume true; {4402#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:01,410 INFO L273 TraceCheckUtils]: 22: Hoare triple {4402#(<= main_~i~1 5)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {4402#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:01,411 INFO L273 TraceCheckUtils]: 23: Hoare triple {4402#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {4403#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:01,411 INFO L273 TraceCheckUtils]: 24: Hoare triple {4403#(<= main_~i~1 6)} assume true; {4403#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:01,412 INFO L273 TraceCheckUtils]: 25: Hoare triple {4403#(<= main_~i~1 6)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {4403#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:01,413 INFO L273 TraceCheckUtils]: 26: Hoare triple {4403#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {4404#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:01,414 INFO L273 TraceCheckUtils]: 27: Hoare triple {4404#(<= main_~i~1 7)} assume true; {4404#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:01,414 INFO L273 TraceCheckUtils]: 28: Hoare triple {4404#(<= main_~i~1 7)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {4404#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:01,415 INFO L273 TraceCheckUtils]: 29: Hoare triple {4404#(<= main_~i~1 7)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {4405#(<= main_~i~1 8)} is VALID [2018-11-14 18:50:01,416 INFO L273 TraceCheckUtils]: 30: Hoare triple {4405#(<= main_~i~1 8)} assume true; {4405#(<= main_~i~1 8)} is VALID [2018-11-14 18:50:01,416 INFO L273 TraceCheckUtils]: 31: Hoare triple {4405#(<= main_~i~1 8)} assume !(~i~1 < 20); {4396#false} is VALID [2018-11-14 18:50:01,417 INFO L256 TraceCheckUtils]: 32: Hoare triple {4396#false} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {4396#false} is VALID [2018-11-14 18:50:01,417 INFO L273 TraceCheckUtils]: 33: Hoare triple {4396#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {4396#false} is VALID [2018-11-14 18:50:01,417 INFO L273 TraceCheckUtils]: 34: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 18:50:01,418 INFO L273 TraceCheckUtils]: 35: Hoare triple {4396#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {4396#false} is VALID [2018-11-14 18:50:01,418 INFO L273 TraceCheckUtils]: 36: Hoare triple {4396#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {4396#false} is VALID [2018-11-14 18:50:01,418 INFO L273 TraceCheckUtils]: 37: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 18:50:01,418 INFO L273 TraceCheckUtils]: 38: Hoare triple {4396#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {4396#false} is VALID [2018-11-14 18:50:01,419 INFO L273 TraceCheckUtils]: 39: Hoare triple {4396#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {4396#false} is VALID [2018-11-14 18:50:01,419 INFO L273 TraceCheckUtils]: 40: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 18:50:01,419 INFO L273 TraceCheckUtils]: 41: Hoare triple {4396#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {4396#false} is VALID [2018-11-14 18:50:01,419 INFO L273 TraceCheckUtils]: 42: Hoare triple {4396#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {4396#false} is VALID [2018-11-14 18:50:01,420 INFO L273 TraceCheckUtils]: 43: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 18:50:01,420 INFO L273 TraceCheckUtils]: 44: Hoare triple {4396#false} assume !(~i~0 < 20); {4396#false} is VALID [2018-11-14 18:50:01,420 INFO L273 TraceCheckUtils]: 45: Hoare triple {4396#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {4396#false} is VALID [2018-11-14 18:50:01,420 INFO L273 TraceCheckUtils]: 46: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 18:50:01,420 INFO L268 TraceCheckUtils]: 47: Hoare quadruple {4396#false} {4396#false} #73#return; {4396#false} is VALID [2018-11-14 18:50:01,420 INFO L273 TraceCheckUtils]: 48: Hoare triple {4396#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {4396#false} is VALID [2018-11-14 18:50:01,421 INFO L256 TraceCheckUtils]: 49: Hoare triple {4396#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {4396#false} is VALID [2018-11-14 18:50:01,421 INFO L273 TraceCheckUtils]: 50: Hoare triple {4396#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {4396#false} is VALID [2018-11-14 18:50:01,421 INFO L273 TraceCheckUtils]: 51: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 18:50:01,421 INFO L273 TraceCheckUtils]: 52: Hoare triple {4396#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {4396#false} is VALID [2018-11-14 18:50:01,421 INFO L273 TraceCheckUtils]: 53: Hoare triple {4396#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {4396#false} is VALID [2018-11-14 18:50:01,421 INFO L273 TraceCheckUtils]: 54: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 18:50:01,421 INFO L273 TraceCheckUtils]: 55: Hoare triple {4396#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {4396#false} is VALID [2018-11-14 18:50:01,422 INFO L273 TraceCheckUtils]: 56: Hoare triple {4396#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {4396#false} is VALID [2018-11-14 18:50:01,422 INFO L273 TraceCheckUtils]: 57: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 18:50:01,422 INFO L273 TraceCheckUtils]: 58: Hoare triple {4396#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {4396#false} is VALID [2018-11-14 18:50:01,422 INFO L273 TraceCheckUtils]: 59: Hoare triple {4396#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {4396#false} is VALID [2018-11-14 18:50:01,422 INFO L273 TraceCheckUtils]: 60: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 18:50:01,422 INFO L273 TraceCheckUtils]: 61: Hoare triple {4396#false} assume !(~i~0 < 20); {4396#false} is VALID [2018-11-14 18:50:01,423 INFO L273 TraceCheckUtils]: 62: Hoare triple {4396#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {4396#false} is VALID [2018-11-14 18:50:01,423 INFO L273 TraceCheckUtils]: 63: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 18:50:01,423 INFO L268 TraceCheckUtils]: 64: Hoare quadruple {4396#false} {4396#false} #75#return; {4396#false} is VALID [2018-11-14 18:50:01,423 INFO L273 TraceCheckUtils]: 65: Hoare triple {4396#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {4396#false} is VALID [2018-11-14 18:50:01,423 INFO L273 TraceCheckUtils]: 66: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 18:50:01,423 INFO L273 TraceCheckUtils]: 67: Hoare triple {4396#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {4396#false} is VALID [2018-11-14 18:50:01,423 INFO L273 TraceCheckUtils]: 68: Hoare triple {4396#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {4396#false} is VALID [2018-11-14 18:50:01,424 INFO L273 TraceCheckUtils]: 69: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 18:50:01,424 INFO L273 TraceCheckUtils]: 70: Hoare triple {4396#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {4396#false} is VALID [2018-11-14 18:50:01,424 INFO L273 TraceCheckUtils]: 71: Hoare triple {4396#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {4396#false} is VALID [2018-11-14 18:50:01,424 INFO L273 TraceCheckUtils]: 72: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 18:50:01,424 INFO L273 TraceCheckUtils]: 73: Hoare triple {4396#false} assume !(~i~2 < 19); {4396#false} is VALID [2018-11-14 18:50:01,424 INFO L273 TraceCheckUtils]: 74: Hoare triple {4396#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {4396#false} is VALID [2018-11-14 18:50:01,425 INFO L256 TraceCheckUtils]: 75: Hoare triple {4396#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {4396#false} is VALID [2018-11-14 18:50:01,425 INFO L273 TraceCheckUtils]: 76: Hoare triple {4396#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {4396#false} is VALID [2018-11-14 18:50:01,425 INFO L273 TraceCheckUtils]: 77: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 18:50:01,425 INFO L273 TraceCheckUtils]: 78: Hoare triple {4396#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {4396#false} is VALID [2018-11-14 18:50:01,425 INFO L273 TraceCheckUtils]: 79: Hoare triple {4396#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {4396#false} is VALID [2018-11-14 18:50:01,425 INFO L273 TraceCheckUtils]: 80: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 18:50:01,426 INFO L273 TraceCheckUtils]: 81: Hoare triple {4396#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {4396#false} is VALID [2018-11-14 18:50:01,426 INFO L273 TraceCheckUtils]: 82: Hoare triple {4396#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {4396#false} is VALID [2018-11-14 18:50:01,426 INFO L273 TraceCheckUtils]: 83: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 18:50:01,426 INFO L273 TraceCheckUtils]: 84: Hoare triple {4396#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {4396#false} is VALID [2018-11-14 18:50:01,426 INFO L273 TraceCheckUtils]: 85: Hoare triple {4396#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {4396#false} is VALID [2018-11-14 18:50:01,426 INFO L273 TraceCheckUtils]: 86: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 18:50:01,426 INFO L273 TraceCheckUtils]: 87: Hoare triple {4396#false} assume !(~i~0 < 20); {4396#false} is VALID [2018-11-14 18:50:01,427 INFO L273 TraceCheckUtils]: 88: Hoare triple {4396#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {4396#false} is VALID [2018-11-14 18:50:01,427 INFO L273 TraceCheckUtils]: 89: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 18:50:01,427 INFO L268 TraceCheckUtils]: 90: Hoare quadruple {4396#false} {4396#false} #77#return; {4396#false} is VALID [2018-11-14 18:50:01,427 INFO L273 TraceCheckUtils]: 91: Hoare triple {4396#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {4396#false} is VALID [2018-11-14 18:50:01,427 INFO L273 TraceCheckUtils]: 92: Hoare triple {4396#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {4396#false} is VALID [2018-11-14 18:50:01,427 INFO L273 TraceCheckUtils]: 93: Hoare triple {4396#false} assume !false; {4396#false} is VALID [2018-11-14 18:50:01,436 INFO L134 CoverageAnalysis]: Checked inductivity of 287 backedges. 0 proven. 100 refuted. 0 times theorem prover too weak. 187 trivial. 0 not checked. [2018-11-14 18:50:01,457 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:50:01,457 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 12 [2018-11-14 18:50:01,458 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 94 [2018-11-14 18:50:01,460 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:50:01,460 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states. [2018-11-14 18:50:01,559 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 72 edges. 72 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:50:01,559 INFO L459 AbstractCegarLoop]: Interpolant automaton has 12 states [2018-11-14 18:50:01,559 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2018-11-14 18:50:01,560 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=66, Invalid=66, Unknown=0, NotChecked=0, Total=132 [2018-11-14 18:50:01,560 INFO L87 Difference]: Start difference. First operand 65 states and 69 transitions. Second operand 12 states. [2018-11-14 18:50:01,908 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:01,909 INFO L93 Difference]: Finished difference Result 102 states and 110 transitions. [2018-11-14 18:50:01,909 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2018-11-14 18:50:01,909 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 94 [2018-11-14 18:50:01,909 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:50:01,910 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2018-11-14 18:50:01,912 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 84 transitions. [2018-11-14 18:50:01,912 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2018-11-14 18:50:01,914 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 84 transitions. [2018-11-14 18:50:01,914 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 84 transitions. [2018-11-14 18:50:02,056 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 84 edges. 84 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:50:02,058 INFO L225 Difference]: With dead ends: 102 [2018-11-14 18:50:02,058 INFO L226 Difference]: Without dead ends: 69 [2018-11-14 18:50:02,059 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 104 GetRequests, 94 SyntacticMatches, 0 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=66, Invalid=66, Unknown=0, NotChecked=0, Total=132 [2018-11-14 18:50:02,059 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 69 states. [2018-11-14 18:50:02,086 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 69 to 68. [2018-11-14 18:50:02,086 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:50:02,086 INFO L82 GeneralOperation]: Start isEquivalent. First operand 69 states. Second operand 68 states. [2018-11-14 18:50:02,086 INFO L74 IsIncluded]: Start isIncluded. First operand 69 states. Second operand 68 states. [2018-11-14 18:50:02,086 INFO L87 Difference]: Start difference. First operand 69 states. Second operand 68 states. [2018-11-14 18:50:02,089 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:02,089 INFO L93 Difference]: Finished difference Result 69 states and 73 transitions. [2018-11-14 18:50:02,089 INFO L276 IsEmpty]: Start isEmpty. Operand 69 states and 73 transitions. [2018-11-14 18:50:02,089 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:50:02,090 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:50:02,090 INFO L74 IsIncluded]: Start isIncluded. First operand 68 states. Second operand 69 states. [2018-11-14 18:50:02,090 INFO L87 Difference]: Start difference. First operand 68 states. Second operand 69 states. [2018-11-14 18:50:02,091 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:02,092 INFO L93 Difference]: Finished difference Result 69 states and 73 transitions. [2018-11-14 18:50:02,092 INFO L276 IsEmpty]: Start isEmpty. Operand 69 states and 73 transitions. [2018-11-14 18:50:02,092 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:50:02,092 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:50:02,092 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:50:02,092 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:50:02,092 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 68 states. [2018-11-14 18:50:02,093 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 68 states to 68 states and 72 transitions. [2018-11-14 18:50:02,094 INFO L78 Accepts]: Start accepts. Automaton has 68 states and 72 transitions. Word has length 94 [2018-11-14 18:50:02,094 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:50:02,094 INFO L480 AbstractCegarLoop]: Abstraction has 68 states and 72 transitions. [2018-11-14 18:50:02,094 INFO L481 AbstractCegarLoop]: Interpolant automaton has 12 states. [2018-11-14 18:50:02,094 INFO L276 IsEmpty]: Start isEmpty. Operand 68 states and 72 transitions. [2018-11-14 18:50:02,095 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 98 [2018-11-14 18:50:02,095 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:50:02,095 INFO L375 BasicCegarLoop]: trace histogram [12, 10, 9, 9, 9, 9, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:50:02,096 INFO L423 AbstractCegarLoop]: === Iteration 13 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:50:02,096 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:50:02,096 INFO L82 PathProgramCache]: Analyzing trace with hash 1864182495, now seen corresponding path program 9 times [2018-11-14 18:50:02,096 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:50:02,096 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:50:02,097 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:50:02,097 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 18:50:02,097 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:50:02,113 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:50:03,046 INFO L256 TraceCheckUtils]: 0: Hoare triple {5057#true} call ULTIMATE.init(); {5057#true} is VALID [2018-11-14 18:50:03,047 INFO L273 TraceCheckUtils]: 1: Hoare triple {5057#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {5057#true} is VALID [2018-11-14 18:50:03,047 INFO L273 TraceCheckUtils]: 2: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:50:03,047 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {5057#true} {5057#true} #69#return; {5057#true} is VALID [2018-11-14 18:50:03,048 INFO L256 TraceCheckUtils]: 4: Hoare triple {5057#true} call #t~ret12 := main(); {5057#true} is VALID [2018-11-14 18:50:03,048 INFO L273 TraceCheckUtils]: 5: Hoare triple {5057#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {5059#(= main_~i~1 0)} is VALID [2018-11-14 18:50:03,049 INFO L273 TraceCheckUtils]: 6: Hoare triple {5059#(= main_~i~1 0)} assume true; {5059#(= main_~i~1 0)} is VALID [2018-11-14 18:50:03,049 INFO L273 TraceCheckUtils]: 7: Hoare triple {5059#(= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5059#(= main_~i~1 0)} is VALID [2018-11-14 18:50:03,049 INFO L273 TraceCheckUtils]: 8: Hoare triple {5059#(= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5060#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:03,050 INFO L273 TraceCheckUtils]: 9: Hoare triple {5060#(<= main_~i~1 1)} assume true; {5060#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:03,050 INFO L273 TraceCheckUtils]: 10: Hoare triple {5060#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5060#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:03,051 INFO L273 TraceCheckUtils]: 11: Hoare triple {5060#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5061#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:03,051 INFO L273 TraceCheckUtils]: 12: Hoare triple {5061#(<= main_~i~1 2)} assume true; {5061#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:03,051 INFO L273 TraceCheckUtils]: 13: Hoare triple {5061#(<= main_~i~1 2)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5061#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:03,052 INFO L273 TraceCheckUtils]: 14: Hoare triple {5061#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5062#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:03,052 INFO L273 TraceCheckUtils]: 15: Hoare triple {5062#(<= main_~i~1 3)} assume true; {5062#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:03,053 INFO L273 TraceCheckUtils]: 16: Hoare triple {5062#(<= main_~i~1 3)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5062#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:03,053 INFO L273 TraceCheckUtils]: 17: Hoare triple {5062#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5063#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:03,054 INFO L273 TraceCheckUtils]: 18: Hoare triple {5063#(<= main_~i~1 4)} assume true; {5063#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:03,054 INFO L273 TraceCheckUtils]: 19: Hoare triple {5063#(<= main_~i~1 4)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5063#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:03,055 INFO L273 TraceCheckUtils]: 20: Hoare triple {5063#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5064#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:03,056 INFO L273 TraceCheckUtils]: 21: Hoare triple {5064#(<= main_~i~1 5)} assume true; {5064#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:03,075 INFO L273 TraceCheckUtils]: 22: Hoare triple {5064#(<= main_~i~1 5)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5064#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:03,075 INFO L273 TraceCheckUtils]: 23: Hoare triple {5064#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5065#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:03,076 INFO L273 TraceCheckUtils]: 24: Hoare triple {5065#(<= main_~i~1 6)} assume true; {5065#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:03,076 INFO L273 TraceCheckUtils]: 25: Hoare triple {5065#(<= main_~i~1 6)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5065#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:03,077 INFO L273 TraceCheckUtils]: 26: Hoare triple {5065#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5066#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:03,077 INFO L273 TraceCheckUtils]: 27: Hoare triple {5066#(<= main_~i~1 7)} assume true; {5066#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:03,077 INFO L273 TraceCheckUtils]: 28: Hoare triple {5066#(<= main_~i~1 7)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5066#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:03,078 INFO L273 TraceCheckUtils]: 29: Hoare triple {5066#(<= main_~i~1 7)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5067#(<= main_~i~1 8)} is VALID [2018-11-14 18:50:03,078 INFO L273 TraceCheckUtils]: 30: Hoare triple {5067#(<= main_~i~1 8)} assume true; {5067#(<= main_~i~1 8)} is VALID [2018-11-14 18:50:03,078 INFO L273 TraceCheckUtils]: 31: Hoare triple {5067#(<= main_~i~1 8)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5067#(<= main_~i~1 8)} is VALID [2018-11-14 18:50:03,079 INFO L273 TraceCheckUtils]: 32: Hoare triple {5067#(<= main_~i~1 8)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5068#(<= main_~i~1 9)} is VALID [2018-11-14 18:50:03,079 INFO L273 TraceCheckUtils]: 33: Hoare triple {5068#(<= main_~i~1 9)} assume true; {5068#(<= main_~i~1 9)} is VALID [2018-11-14 18:50:03,080 INFO L273 TraceCheckUtils]: 34: Hoare triple {5068#(<= main_~i~1 9)} assume !(~i~1 < 20); {5058#false} is VALID [2018-11-14 18:50:03,080 INFO L256 TraceCheckUtils]: 35: Hoare triple {5058#false} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {5057#true} is VALID [2018-11-14 18:50:03,080 INFO L273 TraceCheckUtils]: 36: Hoare triple {5057#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {5057#true} is VALID [2018-11-14 18:50:03,081 INFO L273 TraceCheckUtils]: 37: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:50:03,081 INFO L273 TraceCheckUtils]: 38: Hoare triple {5057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {5057#true} is VALID [2018-11-14 18:50:03,081 INFO L273 TraceCheckUtils]: 39: Hoare triple {5057#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5057#true} is VALID [2018-11-14 18:50:03,081 INFO L273 TraceCheckUtils]: 40: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:50:03,081 INFO L273 TraceCheckUtils]: 41: Hoare triple {5057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {5057#true} is VALID [2018-11-14 18:50:03,082 INFO L273 TraceCheckUtils]: 42: Hoare triple {5057#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5057#true} is VALID [2018-11-14 18:50:03,082 INFO L273 TraceCheckUtils]: 43: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:50:03,082 INFO L273 TraceCheckUtils]: 44: Hoare triple {5057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {5057#true} is VALID [2018-11-14 18:50:03,082 INFO L273 TraceCheckUtils]: 45: Hoare triple {5057#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5057#true} is VALID [2018-11-14 18:50:03,082 INFO L273 TraceCheckUtils]: 46: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:50:03,083 INFO L273 TraceCheckUtils]: 47: Hoare triple {5057#true} assume !(~i~0 < 20); {5057#true} is VALID [2018-11-14 18:50:03,083 INFO L273 TraceCheckUtils]: 48: Hoare triple {5057#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {5057#true} is VALID [2018-11-14 18:50:03,083 INFO L273 TraceCheckUtils]: 49: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:50:03,083 INFO L268 TraceCheckUtils]: 50: Hoare quadruple {5057#true} {5058#false} #73#return; {5058#false} is VALID [2018-11-14 18:50:03,083 INFO L273 TraceCheckUtils]: 51: Hoare triple {5058#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {5058#false} is VALID [2018-11-14 18:50:03,084 INFO L256 TraceCheckUtils]: 52: Hoare triple {5058#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {5057#true} is VALID [2018-11-14 18:50:03,084 INFO L273 TraceCheckUtils]: 53: Hoare triple {5057#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {5057#true} is VALID [2018-11-14 18:50:03,084 INFO L273 TraceCheckUtils]: 54: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:50:03,084 INFO L273 TraceCheckUtils]: 55: Hoare triple {5057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {5057#true} is VALID [2018-11-14 18:50:03,084 INFO L273 TraceCheckUtils]: 56: Hoare triple {5057#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5057#true} is VALID [2018-11-14 18:50:03,085 INFO L273 TraceCheckUtils]: 57: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:50:03,085 INFO L273 TraceCheckUtils]: 58: Hoare triple {5057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {5057#true} is VALID [2018-11-14 18:50:03,085 INFO L273 TraceCheckUtils]: 59: Hoare triple {5057#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5057#true} is VALID [2018-11-14 18:50:03,085 INFO L273 TraceCheckUtils]: 60: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:50:03,085 INFO L273 TraceCheckUtils]: 61: Hoare triple {5057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {5057#true} is VALID [2018-11-14 18:50:03,085 INFO L273 TraceCheckUtils]: 62: Hoare triple {5057#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5057#true} is VALID [2018-11-14 18:50:03,085 INFO L273 TraceCheckUtils]: 63: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:50:03,086 INFO L273 TraceCheckUtils]: 64: Hoare triple {5057#true} assume !(~i~0 < 20); {5057#true} is VALID [2018-11-14 18:50:03,086 INFO L273 TraceCheckUtils]: 65: Hoare triple {5057#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {5057#true} is VALID [2018-11-14 18:50:03,086 INFO L273 TraceCheckUtils]: 66: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:50:03,086 INFO L268 TraceCheckUtils]: 67: Hoare quadruple {5057#true} {5058#false} #75#return; {5058#false} is VALID [2018-11-14 18:50:03,086 INFO L273 TraceCheckUtils]: 68: Hoare triple {5058#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {5058#false} is VALID [2018-11-14 18:50:03,086 INFO L273 TraceCheckUtils]: 69: Hoare triple {5058#false} assume true; {5058#false} is VALID [2018-11-14 18:50:03,086 INFO L273 TraceCheckUtils]: 70: Hoare triple {5058#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {5058#false} is VALID [2018-11-14 18:50:03,086 INFO L273 TraceCheckUtils]: 71: Hoare triple {5058#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {5058#false} is VALID [2018-11-14 18:50:03,087 INFO L273 TraceCheckUtils]: 72: Hoare triple {5058#false} assume true; {5058#false} is VALID [2018-11-14 18:50:03,087 INFO L273 TraceCheckUtils]: 73: Hoare triple {5058#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {5058#false} is VALID [2018-11-14 18:50:03,087 INFO L273 TraceCheckUtils]: 74: Hoare triple {5058#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {5058#false} is VALID [2018-11-14 18:50:03,087 INFO L273 TraceCheckUtils]: 75: Hoare triple {5058#false} assume true; {5058#false} is VALID [2018-11-14 18:50:03,087 INFO L273 TraceCheckUtils]: 76: Hoare triple {5058#false} assume !(~i~2 < 19); {5058#false} is VALID [2018-11-14 18:50:03,087 INFO L273 TraceCheckUtils]: 77: Hoare triple {5058#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {5058#false} is VALID [2018-11-14 18:50:03,087 INFO L256 TraceCheckUtils]: 78: Hoare triple {5058#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {5057#true} is VALID [2018-11-14 18:50:03,087 INFO L273 TraceCheckUtils]: 79: Hoare triple {5057#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {5057#true} is VALID [2018-11-14 18:50:03,088 INFO L273 TraceCheckUtils]: 80: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:50:03,088 INFO L273 TraceCheckUtils]: 81: Hoare triple {5057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {5057#true} is VALID [2018-11-14 18:50:03,088 INFO L273 TraceCheckUtils]: 82: Hoare triple {5057#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5057#true} is VALID [2018-11-14 18:50:03,088 INFO L273 TraceCheckUtils]: 83: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:50:03,088 INFO L273 TraceCheckUtils]: 84: Hoare triple {5057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {5057#true} is VALID [2018-11-14 18:50:03,088 INFO L273 TraceCheckUtils]: 85: Hoare triple {5057#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5057#true} is VALID [2018-11-14 18:50:03,089 INFO L273 TraceCheckUtils]: 86: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:50:03,089 INFO L273 TraceCheckUtils]: 87: Hoare triple {5057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {5057#true} is VALID [2018-11-14 18:50:03,089 INFO L273 TraceCheckUtils]: 88: Hoare triple {5057#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5057#true} is VALID [2018-11-14 18:50:03,089 INFO L273 TraceCheckUtils]: 89: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:50:03,089 INFO L273 TraceCheckUtils]: 90: Hoare triple {5057#true} assume !(~i~0 < 20); {5057#true} is VALID [2018-11-14 18:50:03,089 INFO L273 TraceCheckUtils]: 91: Hoare triple {5057#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {5057#true} is VALID [2018-11-14 18:50:03,089 INFO L273 TraceCheckUtils]: 92: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:50:03,089 INFO L268 TraceCheckUtils]: 93: Hoare quadruple {5057#true} {5058#false} #77#return; {5058#false} is VALID [2018-11-14 18:50:03,089 INFO L273 TraceCheckUtils]: 94: Hoare triple {5058#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {5058#false} is VALID [2018-11-14 18:50:03,090 INFO L273 TraceCheckUtils]: 95: Hoare triple {5058#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {5058#false} is VALID [2018-11-14 18:50:03,090 INFO L273 TraceCheckUtils]: 96: Hoare triple {5058#false} assume !false; {5058#false} is VALID [2018-11-14 18:50:03,094 INFO L134 CoverageAnalysis]: Checked inductivity of 313 backedges. 0 proven. 126 refuted. 0 times theorem prover too weak. 187 trivial. 0 not checked. [2018-11-14 18:50:03,094 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:50:03,094 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 11 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 11 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:50:03,104 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-14 18:50:03,135 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 4 check-sat command(s) [2018-11-14 18:50:03,135 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 18:50:03,153 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:50:03,154 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:50:03,407 INFO L256 TraceCheckUtils]: 0: Hoare triple {5057#true} call ULTIMATE.init(); {5057#true} is VALID [2018-11-14 18:50:03,407 INFO L273 TraceCheckUtils]: 1: Hoare triple {5057#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {5057#true} is VALID [2018-11-14 18:50:03,408 INFO L273 TraceCheckUtils]: 2: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:50:03,408 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {5057#true} {5057#true} #69#return; {5057#true} is VALID [2018-11-14 18:50:03,408 INFO L256 TraceCheckUtils]: 4: Hoare triple {5057#true} call #t~ret12 := main(); {5057#true} is VALID [2018-11-14 18:50:03,408 INFO L273 TraceCheckUtils]: 5: Hoare triple {5057#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {5057#true} is VALID [2018-11-14 18:50:03,408 INFO L273 TraceCheckUtils]: 6: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:50:03,408 INFO L273 TraceCheckUtils]: 7: Hoare triple {5057#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5057#true} is VALID [2018-11-14 18:50:03,409 INFO L273 TraceCheckUtils]: 8: Hoare triple {5057#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5057#true} is VALID [2018-11-14 18:50:03,409 INFO L273 TraceCheckUtils]: 9: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:50:03,409 INFO L273 TraceCheckUtils]: 10: Hoare triple {5057#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5057#true} is VALID [2018-11-14 18:50:03,409 INFO L273 TraceCheckUtils]: 11: Hoare triple {5057#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5057#true} is VALID [2018-11-14 18:50:03,409 INFO L273 TraceCheckUtils]: 12: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:50:03,409 INFO L273 TraceCheckUtils]: 13: Hoare triple {5057#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5057#true} is VALID [2018-11-14 18:50:03,409 INFO L273 TraceCheckUtils]: 14: Hoare triple {5057#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5057#true} is VALID [2018-11-14 18:50:03,410 INFO L273 TraceCheckUtils]: 15: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:50:03,410 INFO L273 TraceCheckUtils]: 16: Hoare triple {5057#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5057#true} is VALID [2018-11-14 18:50:03,410 INFO L273 TraceCheckUtils]: 17: Hoare triple {5057#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5057#true} is VALID [2018-11-14 18:50:03,410 INFO L273 TraceCheckUtils]: 18: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:50:03,410 INFO L273 TraceCheckUtils]: 19: Hoare triple {5057#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5057#true} is VALID [2018-11-14 18:50:03,411 INFO L273 TraceCheckUtils]: 20: Hoare triple {5057#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5057#true} is VALID [2018-11-14 18:50:03,411 INFO L273 TraceCheckUtils]: 21: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:50:03,411 INFO L273 TraceCheckUtils]: 22: Hoare triple {5057#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5057#true} is VALID [2018-11-14 18:50:03,411 INFO L273 TraceCheckUtils]: 23: Hoare triple {5057#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5057#true} is VALID [2018-11-14 18:50:03,411 INFO L273 TraceCheckUtils]: 24: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:50:03,411 INFO L273 TraceCheckUtils]: 25: Hoare triple {5057#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5057#true} is VALID [2018-11-14 18:50:03,411 INFO L273 TraceCheckUtils]: 26: Hoare triple {5057#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5057#true} is VALID [2018-11-14 18:50:03,412 INFO L273 TraceCheckUtils]: 27: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:50:03,412 INFO L273 TraceCheckUtils]: 28: Hoare triple {5057#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5057#true} is VALID [2018-11-14 18:50:03,412 INFO L273 TraceCheckUtils]: 29: Hoare triple {5057#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5057#true} is VALID [2018-11-14 18:50:03,412 INFO L273 TraceCheckUtils]: 30: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:50:03,412 INFO L273 TraceCheckUtils]: 31: Hoare triple {5057#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5057#true} is VALID [2018-11-14 18:50:03,412 INFO L273 TraceCheckUtils]: 32: Hoare triple {5057#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5057#true} is VALID [2018-11-14 18:50:03,413 INFO L273 TraceCheckUtils]: 33: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:50:03,413 INFO L273 TraceCheckUtils]: 34: Hoare triple {5057#true} assume !(~i~1 < 20); {5057#true} is VALID [2018-11-14 18:50:03,413 INFO L256 TraceCheckUtils]: 35: Hoare triple {5057#true} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {5057#true} is VALID [2018-11-14 18:50:03,413 INFO L273 TraceCheckUtils]: 36: Hoare triple {5057#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {5057#true} is VALID [2018-11-14 18:50:03,413 INFO L273 TraceCheckUtils]: 37: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:50:03,413 INFO L273 TraceCheckUtils]: 38: Hoare triple {5057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {5057#true} is VALID [2018-11-14 18:50:03,414 INFO L273 TraceCheckUtils]: 39: Hoare triple {5057#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5057#true} is VALID [2018-11-14 18:50:03,414 INFO L273 TraceCheckUtils]: 40: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:50:03,414 INFO L273 TraceCheckUtils]: 41: Hoare triple {5057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {5057#true} is VALID [2018-11-14 18:50:03,414 INFO L273 TraceCheckUtils]: 42: Hoare triple {5057#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5057#true} is VALID [2018-11-14 18:50:03,414 INFO L273 TraceCheckUtils]: 43: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:50:03,414 INFO L273 TraceCheckUtils]: 44: Hoare triple {5057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {5057#true} is VALID [2018-11-14 18:50:03,415 INFO L273 TraceCheckUtils]: 45: Hoare triple {5057#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5057#true} is VALID [2018-11-14 18:50:03,415 INFO L273 TraceCheckUtils]: 46: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:50:03,415 INFO L273 TraceCheckUtils]: 47: Hoare triple {5057#true} assume !(~i~0 < 20); {5057#true} is VALID [2018-11-14 18:50:03,415 INFO L273 TraceCheckUtils]: 48: Hoare triple {5057#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {5057#true} is VALID [2018-11-14 18:50:03,415 INFO L273 TraceCheckUtils]: 49: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:50:03,415 INFO L268 TraceCheckUtils]: 50: Hoare quadruple {5057#true} {5057#true} #73#return; {5057#true} is VALID [2018-11-14 18:50:03,416 INFO L273 TraceCheckUtils]: 51: Hoare triple {5057#true} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {5057#true} is VALID [2018-11-14 18:50:03,416 INFO L256 TraceCheckUtils]: 52: Hoare triple {5057#true} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {5057#true} is VALID [2018-11-14 18:50:03,416 INFO L273 TraceCheckUtils]: 53: Hoare triple {5057#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {5057#true} is VALID [2018-11-14 18:50:03,416 INFO L273 TraceCheckUtils]: 54: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:50:03,416 INFO L273 TraceCheckUtils]: 55: Hoare triple {5057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {5057#true} is VALID [2018-11-14 18:50:03,416 INFO L273 TraceCheckUtils]: 56: Hoare triple {5057#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5057#true} is VALID [2018-11-14 18:50:03,416 INFO L273 TraceCheckUtils]: 57: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:50:03,417 INFO L273 TraceCheckUtils]: 58: Hoare triple {5057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {5057#true} is VALID [2018-11-14 18:50:03,417 INFO L273 TraceCheckUtils]: 59: Hoare triple {5057#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5057#true} is VALID [2018-11-14 18:50:03,417 INFO L273 TraceCheckUtils]: 60: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:50:03,417 INFO L273 TraceCheckUtils]: 61: Hoare triple {5057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {5057#true} is VALID [2018-11-14 18:50:03,417 INFO L273 TraceCheckUtils]: 62: Hoare triple {5057#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5057#true} is VALID [2018-11-14 18:50:03,417 INFO L273 TraceCheckUtils]: 63: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:50:03,418 INFO L273 TraceCheckUtils]: 64: Hoare triple {5057#true} assume !(~i~0 < 20); {5057#true} is VALID [2018-11-14 18:50:03,418 INFO L273 TraceCheckUtils]: 65: Hoare triple {5057#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {5057#true} is VALID [2018-11-14 18:50:03,418 INFO L273 TraceCheckUtils]: 66: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:50:03,418 INFO L268 TraceCheckUtils]: 67: Hoare quadruple {5057#true} {5057#true} #75#return; {5057#true} is VALID [2018-11-14 18:50:03,418 INFO L273 TraceCheckUtils]: 68: Hoare triple {5057#true} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {5057#true} is VALID [2018-11-14 18:50:03,418 INFO L273 TraceCheckUtils]: 69: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:50:03,418 INFO L273 TraceCheckUtils]: 70: Hoare triple {5057#true} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {5057#true} is VALID [2018-11-14 18:50:03,419 INFO L273 TraceCheckUtils]: 71: Hoare triple {5057#true} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {5057#true} is VALID [2018-11-14 18:50:03,419 INFO L273 TraceCheckUtils]: 72: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:50:03,419 INFO L273 TraceCheckUtils]: 73: Hoare triple {5057#true} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {5057#true} is VALID [2018-11-14 18:50:03,419 INFO L273 TraceCheckUtils]: 74: Hoare triple {5057#true} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {5057#true} is VALID [2018-11-14 18:50:03,419 INFO L273 TraceCheckUtils]: 75: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:50:03,419 INFO L273 TraceCheckUtils]: 76: Hoare triple {5057#true} assume !(~i~2 < 19); {5057#true} is VALID [2018-11-14 18:50:03,420 INFO L273 TraceCheckUtils]: 77: Hoare triple {5057#true} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {5057#true} is VALID [2018-11-14 18:50:03,420 INFO L256 TraceCheckUtils]: 78: Hoare triple {5057#true} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {5057#true} is VALID [2018-11-14 18:50:03,429 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#(<= avg_~i~0 0)} is VALID [2018-11-14 18:50:03,431 INFO L273 TraceCheckUtils]: 80: Hoare triple {5309#(<= avg_~i~0 0)} assume true; {5309#(<= avg_~i~0 0)} is VALID [2018-11-14 18:50:03,431 INFO L273 TraceCheckUtils]: 81: Hoare triple {5309#(<= avg_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {5309#(<= avg_~i~0 0)} is VALID [2018-11-14 18:50:03,433 INFO L273 TraceCheckUtils]: 82: Hoare triple {5309#(<= avg_~i~0 0)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5319#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:03,433 INFO L273 TraceCheckUtils]: 83: Hoare triple {5319#(<= avg_~i~0 1)} assume true; {5319#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:03,435 INFO L273 TraceCheckUtils]: 84: Hoare triple {5319#(<= avg_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {5319#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:03,435 INFO L273 TraceCheckUtils]: 85: Hoare triple {5319#(<= avg_~i~0 1)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5329#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:03,437 INFO L273 TraceCheckUtils]: 86: Hoare triple {5329#(<= avg_~i~0 2)} assume true; {5329#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:03,437 INFO L273 TraceCheckUtils]: 87: Hoare triple {5329#(<= avg_~i~0 2)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {5329#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:03,439 INFO L273 TraceCheckUtils]: 88: Hoare triple {5329#(<= avg_~i~0 2)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5339#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:03,439 INFO L273 TraceCheckUtils]: 89: Hoare triple {5339#(<= avg_~i~0 3)} assume true; {5339#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:03,441 INFO L273 TraceCheckUtils]: 90: Hoare triple {5339#(<= avg_~i~0 3)} assume !(~i~0 < 20); {5058#false} is VALID [2018-11-14 18:50:03,441 INFO L273 TraceCheckUtils]: 91: Hoare triple {5058#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {5058#false} is VALID [2018-11-14 18:50:03,441 INFO L273 TraceCheckUtils]: 92: Hoare triple {5058#false} assume true; {5058#false} is VALID [2018-11-14 18:50:03,441 INFO L268 TraceCheckUtils]: 93: Hoare quadruple {5058#false} {5057#true} #77#return; {5058#false} is VALID [2018-11-14 18:50:03,441 INFO L273 TraceCheckUtils]: 94: Hoare triple {5058#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {5058#false} is VALID [2018-11-14 18:50:03,441 INFO L273 TraceCheckUtils]: 95: Hoare triple {5058#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {5058#false} is VALID [2018-11-14 18:50:03,441 INFO L273 TraceCheckUtils]: 96: Hoare triple {5058#false} assume !false; {5058#false} is VALID [2018-11-14 18:50:03,445 INFO L134 CoverageAnalysis]: Checked inductivity of 313 backedges. 88 proven. 15 refuted. 0 times theorem prover too weak. 210 trivial. 0 not checked. [2018-11-14 18:50:03,465 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:50:03,466 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 6] total 16 [2018-11-14 18:50:03,466 INFO L78 Accepts]: Start accepts. Automaton has 16 states. Word has length 97 [2018-11-14 18:50:03,467 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:50:03,467 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states. [2018-11-14 18:50:03,549 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 90 edges. 90 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:50:03,549 INFO L459 AbstractCegarLoop]: Interpolant automaton has 16 states [2018-11-14 18:50:03,549 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2018-11-14 18:50:03,549 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=80, Invalid=160, Unknown=0, NotChecked=0, Total=240 [2018-11-14 18:50:03,550 INFO L87 Difference]: Start difference. First operand 68 states and 72 transitions. Second operand 16 states. [2018-11-14 18:50:04,134 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:04,134 INFO L93 Difference]: Finished difference Result 109 states and 121 transitions. [2018-11-14 18:50:04,134 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2018-11-14 18:50:04,135 INFO L78 Accepts]: Start accepts. Automaton has 16 states. Word has length 97 [2018-11-14 18:50:04,135 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:50:04,135 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2018-11-14 18:50:04,136 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 103 transitions. [2018-11-14 18:50:04,137 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2018-11-14 18:50:04,138 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 103 transitions. [2018-11-14 18:50:04,138 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states and 103 transitions. [2018-11-14 18:50:04,533 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 103 edges. 103 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:50:04,535 INFO L225 Difference]: With dead ends: 109 [2018-11-14 18:50:04,535 INFO L226 Difference]: Without dead ends: 76 [2018-11-14 18:50:04,536 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 108 GetRequests, 94 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 36 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=80, Invalid=160, Unknown=0, NotChecked=0, Total=240 [2018-11-14 18:50:04,536 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 76 states. [2018-11-14 18:50:05,080 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 76 to 74. [2018-11-14 18:50:05,080 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:50:05,081 INFO L82 GeneralOperation]: Start isEquivalent. First operand 76 states. Second operand 74 states. [2018-11-14 18:50:05,081 INFO L74 IsIncluded]: Start isIncluded. First operand 76 states. Second operand 74 states. [2018-11-14 18:50:05,081 INFO L87 Difference]: Start difference. First operand 76 states. Second operand 74 states. [2018-11-14 18:50:05,083 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:05,083 INFO L93 Difference]: Finished difference Result 76 states and 80 transitions. [2018-11-14 18:50:05,083 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 80 transitions. [2018-11-14 18:50:05,084 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:50:05,084 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:50:05,084 INFO L74 IsIncluded]: Start isIncluded. First operand 74 states. Second operand 76 states. [2018-11-14 18:50:05,084 INFO L87 Difference]: Start difference. First operand 74 states. Second operand 76 states. [2018-11-14 18:50:05,086 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:05,086 INFO L93 Difference]: Finished difference Result 76 states and 80 transitions. [2018-11-14 18:50:05,086 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 80 transitions. [2018-11-14 18:50:05,087 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:50:05,087 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:50:05,087 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:50:05,087 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:50:05,087 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 74 states. [2018-11-14 18:50:05,089 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 74 states to 74 states and 78 transitions. [2018-11-14 18:50:05,089 INFO L78 Accepts]: Start accepts. Automaton has 74 states and 78 transitions. Word has length 97 [2018-11-14 18:50:05,089 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:50:05,089 INFO L480 AbstractCegarLoop]: Abstraction has 74 states and 78 transitions. [2018-11-14 18:50:05,090 INFO L481 AbstractCegarLoop]: Interpolant automaton has 16 states. [2018-11-14 18:50:05,090 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 78 transitions. [2018-11-14 18:50:05,091 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 110 [2018-11-14 18:50:05,091 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:50:05,091 INFO L375 BasicCegarLoop]: trace histogram [15, 12, 12, 11, 10, 10, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:50:05,091 INFO L423 AbstractCegarLoop]: === Iteration 14 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:50:05,091 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:50:05,092 INFO L82 PathProgramCache]: Analyzing trace with hash 1090680019, now seen corresponding path program 10 times [2018-11-14 18:50:05,092 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:50:05,092 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:50:05,094 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:50:05,094 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 18:50:05,094 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:50:05,114 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:50:05,357 INFO L256 TraceCheckUtils]: 0: Hoare triple {5763#true} call ULTIMATE.init(); {5763#true} is VALID [2018-11-14 18:50:05,357 INFO L273 TraceCheckUtils]: 1: Hoare triple {5763#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {5763#true} is VALID [2018-11-14 18:50:05,357 INFO L273 TraceCheckUtils]: 2: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 18:50:05,358 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {5763#true} {5763#true} #69#return; {5763#true} is VALID [2018-11-14 18:50:05,358 INFO L256 TraceCheckUtils]: 4: Hoare triple {5763#true} call #t~ret12 := main(); {5763#true} is VALID [2018-11-14 18:50:05,358 INFO L273 TraceCheckUtils]: 5: Hoare triple {5763#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {5765#(= main_~i~1 0)} is VALID [2018-11-14 18:50:05,359 INFO L273 TraceCheckUtils]: 6: Hoare triple {5765#(= main_~i~1 0)} assume true; {5765#(= main_~i~1 0)} is VALID [2018-11-14 18:50:05,359 INFO L273 TraceCheckUtils]: 7: Hoare triple {5765#(= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5765#(= main_~i~1 0)} is VALID [2018-11-14 18:50:05,360 INFO L273 TraceCheckUtils]: 8: Hoare triple {5765#(= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5766#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:05,361 INFO L273 TraceCheckUtils]: 9: Hoare triple {5766#(<= main_~i~1 1)} assume true; {5766#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:05,361 INFO L273 TraceCheckUtils]: 10: Hoare triple {5766#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5766#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:05,362 INFO L273 TraceCheckUtils]: 11: Hoare triple {5766#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5767#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:05,362 INFO L273 TraceCheckUtils]: 12: Hoare triple {5767#(<= main_~i~1 2)} assume true; {5767#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:05,363 INFO L273 TraceCheckUtils]: 13: Hoare triple {5767#(<= main_~i~1 2)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5767#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:05,363 INFO L273 TraceCheckUtils]: 14: Hoare triple {5767#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5768#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:05,364 INFO L273 TraceCheckUtils]: 15: Hoare triple {5768#(<= main_~i~1 3)} assume true; {5768#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:05,364 INFO L273 TraceCheckUtils]: 16: Hoare triple {5768#(<= main_~i~1 3)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5768#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:05,365 INFO L273 TraceCheckUtils]: 17: Hoare triple {5768#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5769#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:05,366 INFO L273 TraceCheckUtils]: 18: Hoare triple {5769#(<= main_~i~1 4)} assume true; {5769#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:05,366 INFO L273 TraceCheckUtils]: 19: Hoare triple {5769#(<= main_~i~1 4)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5769#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:05,367 INFO L273 TraceCheckUtils]: 20: Hoare triple {5769#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5770#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:05,367 INFO L273 TraceCheckUtils]: 21: Hoare triple {5770#(<= main_~i~1 5)} assume true; {5770#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:05,368 INFO L273 TraceCheckUtils]: 22: Hoare triple {5770#(<= main_~i~1 5)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5770#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:05,369 INFO L273 TraceCheckUtils]: 23: Hoare triple {5770#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5771#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:05,369 INFO L273 TraceCheckUtils]: 24: Hoare triple {5771#(<= main_~i~1 6)} assume true; {5771#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:05,370 INFO L273 TraceCheckUtils]: 25: Hoare triple {5771#(<= main_~i~1 6)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5771#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:05,370 INFO L273 TraceCheckUtils]: 26: Hoare triple {5771#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5772#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:05,371 INFO L273 TraceCheckUtils]: 27: Hoare triple {5772#(<= main_~i~1 7)} assume true; {5772#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:05,371 INFO L273 TraceCheckUtils]: 28: Hoare triple {5772#(<= main_~i~1 7)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5772#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:05,372 INFO L273 TraceCheckUtils]: 29: Hoare triple {5772#(<= main_~i~1 7)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5773#(<= main_~i~1 8)} is VALID [2018-11-14 18:50:05,372 INFO L273 TraceCheckUtils]: 30: Hoare triple {5773#(<= main_~i~1 8)} assume true; {5773#(<= main_~i~1 8)} is VALID [2018-11-14 18:50:05,373 INFO L273 TraceCheckUtils]: 31: Hoare triple {5773#(<= main_~i~1 8)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5773#(<= main_~i~1 8)} is VALID [2018-11-14 18:50:05,374 INFO L273 TraceCheckUtils]: 32: Hoare triple {5773#(<= main_~i~1 8)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5774#(<= main_~i~1 9)} is VALID [2018-11-14 18:50:05,374 INFO L273 TraceCheckUtils]: 33: Hoare triple {5774#(<= main_~i~1 9)} assume true; {5774#(<= main_~i~1 9)} is VALID [2018-11-14 18:50:05,375 INFO L273 TraceCheckUtils]: 34: Hoare triple {5774#(<= main_~i~1 9)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5774#(<= main_~i~1 9)} is VALID [2018-11-14 18:50:05,375 INFO L273 TraceCheckUtils]: 35: Hoare triple {5774#(<= main_~i~1 9)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5775#(<= main_~i~1 10)} is VALID [2018-11-14 18:50:05,376 INFO L273 TraceCheckUtils]: 36: Hoare triple {5775#(<= main_~i~1 10)} assume true; {5775#(<= main_~i~1 10)} is VALID [2018-11-14 18:50:05,377 INFO L273 TraceCheckUtils]: 37: Hoare triple {5775#(<= main_~i~1 10)} assume !(~i~1 < 20); {5764#false} is VALID [2018-11-14 18:50:05,377 INFO L256 TraceCheckUtils]: 38: Hoare triple {5764#false} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {5763#true} is VALID [2018-11-14 18:50:05,377 INFO L273 TraceCheckUtils]: 39: Hoare triple {5763#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {5763#true} is VALID [2018-11-14 18:50:05,377 INFO L273 TraceCheckUtils]: 40: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 18:50:05,377 INFO L273 TraceCheckUtils]: 41: Hoare triple {5763#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {5763#true} is VALID [2018-11-14 18:50:05,378 INFO L273 TraceCheckUtils]: 42: Hoare triple {5763#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5763#true} is VALID [2018-11-14 18:50:05,378 INFO L273 TraceCheckUtils]: 43: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 18:50:05,378 INFO L273 TraceCheckUtils]: 44: Hoare triple {5763#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {5763#true} is VALID [2018-11-14 18:50:05,378 INFO L273 TraceCheckUtils]: 45: Hoare triple {5763#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5763#true} is VALID [2018-11-14 18:50:05,378 INFO L273 TraceCheckUtils]: 46: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 18:50:05,378 INFO L273 TraceCheckUtils]: 47: Hoare triple {5763#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {5763#true} is VALID [2018-11-14 18:50:05,379 INFO L273 TraceCheckUtils]: 48: Hoare triple {5763#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5763#true} is VALID [2018-11-14 18:50:05,379 INFO L273 TraceCheckUtils]: 49: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 18:50:05,379 INFO L273 TraceCheckUtils]: 50: Hoare triple {5763#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {5763#true} is VALID [2018-11-14 18:50:05,379 INFO L273 TraceCheckUtils]: 51: Hoare triple {5763#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5763#true} is VALID [2018-11-14 18:50:05,379 INFO L273 TraceCheckUtils]: 52: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 18:50:05,379 INFO L273 TraceCheckUtils]: 53: Hoare triple {5763#true} assume !(~i~0 < 20); {5763#true} is VALID [2018-11-14 18:50:05,380 INFO L273 TraceCheckUtils]: 54: Hoare triple {5763#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {5763#true} is VALID [2018-11-14 18:50:05,380 INFO L273 TraceCheckUtils]: 55: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 18:50:05,380 INFO L268 TraceCheckUtils]: 56: Hoare quadruple {5763#true} {5764#false} #73#return; {5764#false} is VALID [2018-11-14 18:50:05,380 INFO L273 TraceCheckUtils]: 57: Hoare triple {5764#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {5764#false} is VALID [2018-11-14 18:50:05,380 INFO L256 TraceCheckUtils]: 58: Hoare triple {5764#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {5763#true} is VALID [2018-11-14 18:50:05,380 INFO L273 TraceCheckUtils]: 59: Hoare triple {5763#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {5763#true} is VALID [2018-11-14 18:50:05,380 INFO L273 TraceCheckUtils]: 60: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 18:50:05,380 INFO L273 TraceCheckUtils]: 61: Hoare triple {5763#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {5763#true} is VALID [2018-11-14 18:50:05,381 INFO L273 TraceCheckUtils]: 62: Hoare triple {5763#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5763#true} is VALID [2018-11-14 18:50:05,381 INFO L273 TraceCheckUtils]: 63: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 18:50:05,381 INFO L273 TraceCheckUtils]: 64: Hoare triple {5763#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {5763#true} is VALID [2018-11-14 18:50:05,381 INFO L273 TraceCheckUtils]: 65: Hoare triple {5763#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5763#true} is VALID [2018-11-14 18:50:05,381 INFO L273 TraceCheckUtils]: 66: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 18:50:05,381 INFO L273 TraceCheckUtils]: 67: Hoare triple {5763#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {5763#true} is VALID [2018-11-14 18:50:05,381 INFO L273 TraceCheckUtils]: 68: Hoare triple {5763#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5763#true} is VALID [2018-11-14 18:50:05,381 INFO L273 TraceCheckUtils]: 69: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 18:50:05,381 INFO L273 TraceCheckUtils]: 70: Hoare triple {5763#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {5763#true} is VALID [2018-11-14 18:50:05,382 INFO L273 TraceCheckUtils]: 71: Hoare triple {5763#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5763#true} is VALID [2018-11-14 18:50:05,382 INFO L273 TraceCheckUtils]: 72: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 18:50:05,382 INFO L273 TraceCheckUtils]: 73: Hoare triple {5763#true} assume !(~i~0 < 20); {5763#true} is VALID [2018-11-14 18:50:05,382 INFO L273 TraceCheckUtils]: 74: Hoare triple {5763#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {5763#true} is VALID [2018-11-14 18:50:05,382 INFO L273 TraceCheckUtils]: 75: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 18:50:05,382 INFO L268 TraceCheckUtils]: 76: Hoare quadruple {5763#true} {5764#false} #75#return; {5764#false} is VALID [2018-11-14 18:50:05,382 INFO L273 TraceCheckUtils]: 77: Hoare triple {5764#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {5764#false} is VALID [2018-11-14 18:50:05,382 INFO L273 TraceCheckUtils]: 78: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 18:50:05,383 INFO L273 TraceCheckUtils]: 79: Hoare triple {5764#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {5764#false} is VALID [2018-11-14 18:50:05,383 INFO L273 TraceCheckUtils]: 80: Hoare triple {5764#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {5764#false} is VALID [2018-11-14 18:50:05,383 INFO L273 TraceCheckUtils]: 81: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 18:50:05,383 INFO L273 TraceCheckUtils]: 82: Hoare triple {5764#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {5764#false} is VALID [2018-11-14 18:50:05,383 INFO L273 TraceCheckUtils]: 83: Hoare triple {5764#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {5764#false} is VALID [2018-11-14 18:50:05,383 INFO L273 TraceCheckUtils]: 84: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 18:50:05,383 INFO L273 TraceCheckUtils]: 85: Hoare triple {5764#false} assume !(~i~2 < 19); {5764#false} is VALID [2018-11-14 18:50:05,383 INFO L273 TraceCheckUtils]: 86: Hoare triple {5764#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {5764#false} is VALID [2018-11-14 18:50:05,384 INFO L256 TraceCheckUtils]: 87: Hoare triple {5764#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {5763#true} is VALID [2018-11-14 18:50:05,384 INFO L273 TraceCheckUtils]: 88: Hoare triple {5763#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {5763#true} is VALID [2018-11-14 18:50:05,384 INFO L273 TraceCheckUtils]: 89: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 18:50:05,384 INFO L273 TraceCheckUtils]: 90: Hoare triple {5763#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {5763#true} is VALID [2018-11-14 18:50:05,384 INFO L273 TraceCheckUtils]: 91: Hoare triple {5763#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5763#true} is VALID [2018-11-14 18:50:05,384 INFO L273 TraceCheckUtils]: 92: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 18:50:05,384 INFO L273 TraceCheckUtils]: 93: Hoare triple {5763#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {5763#true} is VALID [2018-11-14 18:50:05,384 INFO L273 TraceCheckUtils]: 94: Hoare triple {5763#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5763#true} is VALID [2018-11-14 18:50:05,385 INFO L273 TraceCheckUtils]: 95: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 18:50:05,385 INFO L273 TraceCheckUtils]: 96: Hoare triple {5763#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {5763#true} is VALID [2018-11-14 18:50:05,385 INFO L273 TraceCheckUtils]: 97: Hoare triple {5763#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5763#true} is VALID [2018-11-14 18:50:05,385 INFO L273 TraceCheckUtils]: 98: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 18:50:05,385 INFO L273 TraceCheckUtils]: 99: Hoare triple {5763#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {5763#true} is VALID [2018-11-14 18:50:05,385 INFO L273 TraceCheckUtils]: 100: Hoare triple {5763#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5763#true} is VALID [2018-11-14 18:50:05,385 INFO L273 TraceCheckUtils]: 101: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 18:50:05,385 INFO L273 TraceCheckUtils]: 102: Hoare triple {5763#true} assume !(~i~0 < 20); {5763#true} is VALID [2018-11-14 18:50:05,385 INFO L273 TraceCheckUtils]: 103: Hoare triple {5763#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {5763#true} is VALID [2018-11-14 18:50:05,386 INFO L273 TraceCheckUtils]: 104: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 18:50:05,386 INFO L268 TraceCheckUtils]: 105: Hoare quadruple {5763#true} {5764#false} #77#return; {5764#false} is VALID [2018-11-14 18:50:05,386 INFO L273 TraceCheckUtils]: 106: Hoare triple {5764#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {5764#false} is VALID [2018-11-14 18:50:05,386 INFO L273 TraceCheckUtils]: 107: Hoare triple {5764#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {5764#false} is VALID [2018-11-14 18:50:05,386 INFO L273 TraceCheckUtils]: 108: Hoare triple {5764#false} assume !false; {5764#false} is VALID [2018-11-14 18:50:05,393 INFO L134 CoverageAnalysis]: Checked inductivity of 450 backedges. 0 proven. 155 refuted. 0 times theorem prover too weak. 295 trivial. 0 not checked. [2018-11-14 18:50:05,393 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:50:05,393 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 12 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 12 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:50:05,401 INFO L103 rtionOrderModulation]: Keeping assertion order TERMS_WITH_SMALL_CONSTANTS_FIRST [2018-11-14 18:50:05,442 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2018-11-14 18:50:05,442 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 18:50:05,460 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:50:05,462 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:50:05,596 INFO L256 TraceCheckUtils]: 0: Hoare triple {5763#true} call ULTIMATE.init(); {5763#true} is VALID [2018-11-14 18:50:05,597 INFO L273 TraceCheckUtils]: 1: Hoare triple {5763#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {5763#true} is VALID [2018-11-14 18:50:05,597 INFO L273 TraceCheckUtils]: 2: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 18:50:05,598 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {5763#true} {5763#true} #69#return; {5763#true} is VALID [2018-11-14 18:50:05,598 INFO L256 TraceCheckUtils]: 4: Hoare triple {5763#true} call #t~ret12 := main(); {5763#true} is VALID [2018-11-14 18:50:05,613 INFO L273 TraceCheckUtils]: 5: Hoare triple {5763#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {5794#(<= main_~i~1 0)} is VALID [2018-11-14 18:50:05,622 INFO L273 TraceCheckUtils]: 6: Hoare triple {5794#(<= main_~i~1 0)} assume true; {5794#(<= main_~i~1 0)} is VALID [2018-11-14 18:50:05,637 INFO L273 TraceCheckUtils]: 7: Hoare triple {5794#(<= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5794#(<= main_~i~1 0)} is VALID [2018-11-14 18:50:05,646 INFO L273 TraceCheckUtils]: 8: Hoare triple {5794#(<= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5766#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:05,649 INFO L273 TraceCheckUtils]: 9: Hoare triple {5766#(<= main_~i~1 1)} assume true; {5766#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:05,650 INFO L273 TraceCheckUtils]: 10: Hoare triple {5766#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5766#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:05,651 INFO L273 TraceCheckUtils]: 11: Hoare triple {5766#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5767#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:05,651 INFO L273 TraceCheckUtils]: 12: Hoare triple {5767#(<= main_~i~1 2)} assume true; {5767#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:05,651 INFO L273 TraceCheckUtils]: 13: Hoare triple {5767#(<= main_~i~1 2)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5767#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:05,652 INFO L273 TraceCheckUtils]: 14: Hoare triple {5767#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5768#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:05,652 INFO L273 TraceCheckUtils]: 15: Hoare triple {5768#(<= main_~i~1 3)} assume true; {5768#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:05,652 INFO L273 TraceCheckUtils]: 16: Hoare triple {5768#(<= main_~i~1 3)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5768#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:05,653 INFO L273 TraceCheckUtils]: 17: Hoare triple {5768#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5769#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:05,653 INFO L273 TraceCheckUtils]: 18: Hoare triple {5769#(<= main_~i~1 4)} assume true; {5769#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:05,654 INFO L273 TraceCheckUtils]: 19: Hoare triple {5769#(<= main_~i~1 4)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5769#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:05,655 INFO L273 TraceCheckUtils]: 20: Hoare triple {5769#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5770#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:05,655 INFO L273 TraceCheckUtils]: 21: Hoare triple {5770#(<= main_~i~1 5)} assume true; {5770#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:05,656 INFO L273 TraceCheckUtils]: 22: Hoare triple {5770#(<= main_~i~1 5)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5770#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:05,656 INFO L273 TraceCheckUtils]: 23: Hoare triple {5770#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5771#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:05,657 INFO L273 TraceCheckUtils]: 24: Hoare triple {5771#(<= main_~i~1 6)} assume true; {5771#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:05,658 INFO L273 TraceCheckUtils]: 25: Hoare triple {5771#(<= main_~i~1 6)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5771#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:05,658 INFO L273 TraceCheckUtils]: 26: Hoare triple {5771#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5772#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:05,659 INFO L273 TraceCheckUtils]: 27: Hoare triple {5772#(<= main_~i~1 7)} assume true; {5772#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:05,659 INFO L273 TraceCheckUtils]: 28: Hoare triple {5772#(<= main_~i~1 7)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5772#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:05,660 INFO L273 TraceCheckUtils]: 29: Hoare triple {5772#(<= main_~i~1 7)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5773#(<= main_~i~1 8)} is VALID [2018-11-14 18:50:05,661 INFO L273 TraceCheckUtils]: 30: Hoare triple {5773#(<= main_~i~1 8)} assume true; {5773#(<= main_~i~1 8)} is VALID [2018-11-14 18:50:05,661 INFO L273 TraceCheckUtils]: 31: Hoare triple {5773#(<= main_~i~1 8)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5773#(<= main_~i~1 8)} is VALID [2018-11-14 18:50:05,662 INFO L273 TraceCheckUtils]: 32: Hoare triple {5773#(<= main_~i~1 8)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5774#(<= main_~i~1 9)} is VALID [2018-11-14 18:50:05,662 INFO L273 TraceCheckUtils]: 33: Hoare triple {5774#(<= main_~i~1 9)} assume true; {5774#(<= main_~i~1 9)} is VALID [2018-11-14 18:50:05,663 INFO L273 TraceCheckUtils]: 34: Hoare triple {5774#(<= main_~i~1 9)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5774#(<= main_~i~1 9)} is VALID [2018-11-14 18:50:05,664 INFO L273 TraceCheckUtils]: 35: Hoare triple {5774#(<= main_~i~1 9)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5775#(<= main_~i~1 10)} is VALID [2018-11-14 18:50:05,664 INFO L273 TraceCheckUtils]: 36: Hoare triple {5775#(<= main_~i~1 10)} assume true; {5775#(<= main_~i~1 10)} is VALID [2018-11-14 18:50:05,665 INFO L273 TraceCheckUtils]: 37: Hoare triple {5775#(<= main_~i~1 10)} assume !(~i~1 < 20); {5764#false} is VALID [2018-11-14 18:50:05,665 INFO L256 TraceCheckUtils]: 38: Hoare triple {5764#false} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {5764#false} is VALID [2018-11-14 18:50:05,665 INFO L273 TraceCheckUtils]: 39: Hoare triple {5764#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {5764#false} is VALID [2018-11-14 18:50:05,665 INFO L273 TraceCheckUtils]: 40: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 18:50:05,666 INFO L273 TraceCheckUtils]: 41: Hoare triple {5764#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {5764#false} is VALID [2018-11-14 18:50:05,666 INFO L273 TraceCheckUtils]: 42: Hoare triple {5764#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5764#false} is VALID [2018-11-14 18:50:05,666 INFO L273 TraceCheckUtils]: 43: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 18:50:05,666 INFO L273 TraceCheckUtils]: 44: Hoare triple {5764#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {5764#false} is VALID [2018-11-14 18:50:05,666 INFO L273 TraceCheckUtils]: 45: Hoare triple {5764#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5764#false} is VALID [2018-11-14 18:50:05,667 INFO L273 TraceCheckUtils]: 46: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 18:50:05,667 INFO L273 TraceCheckUtils]: 47: Hoare triple {5764#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {5764#false} is VALID [2018-11-14 18:50:05,667 INFO L273 TraceCheckUtils]: 48: Hoare triple {5764#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5764#false} is VALID [2018-11-14 18:50:05,667 INFO L273 TraceCheckUtils]: 49: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 18:50:05,667 INFO L273 TraceCheckUtils]: 50: Hoare triple {5764#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {5764#false} is VALID [2018-11-14 18:50:05,668 INFO L273 TraceCheckUtils]: 51: Hoare triple {5764#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5764#false} is VALID [2018-11-14 18:50:05,668 INFO L273 TraceCheckUtils]: 52: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 18:50:05,668 INFO L273 TraceCheckUtils]: 53: Hoare triple {5764#false} assume !(~i~0 < 20); {5764#false} is VALID [2018-11-14 18:50:05,668 INFO L273 TraceCheckUtils]: 54: Hoare triple {5764#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {5764#false} is VALID [2018-11-14 18:50:05,669 INFO L273 TraceCheckUtils]: 55: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 18:50:05,669 INFO L268 TraceCheckUtils]: 56: Hoare quadruple {5764#false} {5764#false} #73#return; {5764#false} is VALID [2018-11-14 18:50:05,669 INFO L273 TraceCheckUtils]: 57: Hoare triple {5764#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {5764#false} is VALID [2018-11-14 18:50:05,669 INFO L256 TraceCheckUtils]: 58: Hoare triple {5764#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {5764#false} is VALID [2018-11-14 18:50:05,670 INFO L273 TraceCheckUtils]: 59: Hoare triple {5764#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {5764#false} is VALID [2018-11-14 18:50:05,670 INFO L273 TraceCheckUtils]: 60: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 18:50:05,670 INFO L273 TraceCheckUtils]: 61: Hoare triple {5764#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {5764#false} is VALID [2018-11-14 18:50:05,670 INFO L273 TraceCheckUtils]: 62: Hoare triple {5764#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5764#false} is VALID [2018-11-14 18:50:05,670 INFO L273 TraceCheckUtils]: 63: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 18:50:05,671 INFO L273 TraceCheckUtils]: 64: Hoare triple {5764#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {5764#false} is VALID [2018-11-14 18:50:05,671 INFO L273 TraceCheckUtils]: 65: Hoare triple {5764#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5764#false} is VALID [2018-11-14 18:50:05,671 INFO L273 TraceCheckUtils]: 66: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 18:50:05,671 INFO L273 TraceCheckUtils]: 67: Hoare triple {5764#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {5764#false} is VALID [2018-11-14 18:50:05,671 INFO L273 TraceCheckUtils]: 68: Hoare triple {5764#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5764#false} is VALID [2018-11-14 18:50:05,671 INFO L273 TraceCheckUtils]: 69: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 18:50:05,672 INFO L273 TraceCheckUtils]: 70: Hoare triple {5764#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {5764#false} is VALID [2018-11-14 18:50:05,672 INFO L273 TraceCheckUtils]: 71: Hoare triple {5764#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5764#false} is VALID [2018-11-14 18:50:05,672 INFO L273 TraceCheckUtils]: 72: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 18:50:05,672 INFO L273 TraceCheckUtils]: 73: Hoare triple {5764#false} assume !(~i~0 < 20); {5764#false} is VALID [2018-11-14 18:50:05,672 INFO L273 TraceCheckUtils]: 74: Hoare triple {5764#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {5764#false} is VALID [2018-11-14 18:50:05,672 INFO L273 TraceCheckUtils]: 75: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 18:50:05,673 INFO L268 TraceCheckUtils]: 76: Hoare quadruple {5764#false} {5764#false} #75#return; {5764#false} is VALID [2018-11-14 18:50:05,673 INFO L273 TraceCheckUtils]: 77: Hoare triple {5764#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {5764#false} is VALID [2018-11-14 18:50:05,673 INFO L273 TraceCheckUtils]: 78: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 18:50:05,673 INFO L273 TraceCheckUtils]: 79: Hoare triple {5764#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {5764#false} is VALID [2018-11-14 18:50:05,673 INFO L273 TraceCheckUtils]: 80: Hoare triple {5764#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {5764#false} is VALID [2018-11-14 18:50:05,673 INFO L273 TraceCheckUtils]: 81: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 18:50:05,674 INFO L273 TraceCheckUtils]: 82: Hoare triple {5764#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {5764#false} is VALID [2018-11-14 18:50:05,674 INFO L273 TraceCheckUtils]: 83: Hoare triple {5764#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {5764#false} is VALID [2018-11-14 18:50:05,674 INFO L273 TraceCheckUtils]: 84: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 18:50:05,674 INFO L273 TraceCheckUtils]: 85: Hoare triple {5764#false} assume !(~i~2 < 19); {5764#false} is VALID [2018-11-14 18:50:05,674 INFO L273 TraceCheckUtils]: 86: Hoare triple {5764#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {5764#false} is VALID [2018-11-14 18:50:05,674 INFO L256 TraceCheckUtils]: 87: Hoare triple {5764#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {5764#false} is VALID [2018-11-14 18:50:05,675 INFO L273 TraceCheckUtils]: 88: Hoare triple {5764#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {5764#false} is VALID [2018-11-14 18:50:05,675 INFO L273 TraceCheckUtils]: 89: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 18:50:05,675 INFO L273 TraceCheckUtils]: 90: Hoare triple {5764#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {5764#false} is VALID [2018-11-14 18:50:05,675 INFO L273 TraceCheckUtils]: 91: Hoare triple {5764#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5764#false} is VALID [2018-11-14 18:50:05,675 INFO L273 TraceCheckUtils]: 92: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 18:50:05,675 INFO L273 TraceCheckUtils]: 93: Hoare triple {5764#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {5764#false} is VALID [2018-11-14 18:50:05,675 INFO L273 TraceCheckUtils]: 94: Hoare triple {5764#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5764#false} is VALID [2018-11-14 18:50:05,676 INFO L273 TraceCheckUtils]: 95: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 18:50:05,676 INFO L273 TraceCheckUtils]: 96: Hoare triple {5764#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {5764#false} is VALID [2018-11-14 18:50:05,676 INFO L273 TraceCheckUtils]: 97: Hoare triple {5764#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5764#false} is VALID [2018-11-14 18:50:05,676 INFO L273 TraceCheckUtils]: 98: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 18:50:05,676 INFO L273 TraceCheckUtils]: 99: Hoare triple {5764#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {5764#false} is VALID [2018-11-14 18:50:05,676 INFO L273 TraceCheckUtils]: 100: Hoare triple {5764#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5764#false} is VALID [2018-11-14 18:50:05,677 INFO L273 TraceCheckUtils]: 101: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 18:50:05,677 INFO L273 TraceCheckUtils]: 102: Hoare triple {5764#false} assume !(~i~0 < 20); {5764#false} is VALID [2018-11-14 18:50:05,677 INFO L273 TraceCheckUtils]: 103: Hoare triple {5764#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {5764#false} is VALID [2018-11-14 18:50:05,677 INFO L273 TraceCheckUtils]: 104: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 18:50:05,677 INFO L268 TraceCheckUtils]: 105: Hoare quadruple {5764#false} {5764#false} #77#return; {5764#false} is VALID [2018-11-14 18:50:05,677 INFO L273 TraceCheckUtils]: 106: Hoare triple {5764#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {5764#false} is VALID [2018-11-14 18:50:05,678 INFO L273 TraceCheckUtils]: 107: Hoare triple {5764#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {5764#false} is VALID [2018-11-14 18:50:05,678 INFO L273 TraceCheckUtils]: 108: Hoare triple {5764#false} assume !false; {5764#false} is VALID [2018-11-14 18:50:05,684 INFO L134 CoverageAnalysis]: Checked inductivity of 450 backedges. 0 proven. 155 refuted. 0 times theorem prover too weak. 295 trivial. 0 not checked. [2018-11-14 18:50:05,704 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:50:05,704 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 14 [2018-11-14 18:50:05,704 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 109 [2018-11-14 18:50:05,705 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:50:05,705 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states. [2018-11-14 18:50:05,780 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 78 edges. 78 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:50:05,780 INFO L459 AbstractCegarLoop]: Interpolant automaton has 14 states [2018-11-14 18:50:05,781 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2018-11-14 18:50:05,781 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=91, Invalid=91, Unknown=0, NotChecked=0, Total=182 [2018-11-14 18:50:05,781 INFO L87 Difference]: Start difference. First operand 74 states and 78 transitions. Second operand 14 states. [2018-11-14 18:50:06,119 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:06,119 INFO L93 Difference]: Finished difference Result 114 states and 122 transitions. [2018-11-14 18:50:06,119 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2018-11-14 18:50:06,119 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 109 [2018-11-14 18:50:06,120 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:50:06,120 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2018-11-14 18:50:06,121 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 90 transitions. [2018-11-14 18:50:06,121 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2018-11-14 18:50:06,123 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 90 transitions. [2018-11-14 18:50:06,123 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states and 90 transitions. [2018-11-14 18:50:06,591 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 90 edges. 90 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:50:06,594 INFO L225 Difference]: With dead ends: 114 [2018-11-14 18:50:06,594 INFO L226 Difference]: Without dead ends: 78 [2018-11-14 18:50:06,594 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 18:50:06,595 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 78 states. [2018-11-14 18:50:06,628 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 78 to 77. [2018-11-14 18:50:06,628 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:50:06,628 INFO L82 GeneralOperation]: Start isEquivalent. First operand 78 states. Second operand 77 states. [2018-11-14 18:50:06,628 INFO L74 IsIncluded]: Start isIncluded. First operand 78 states. Second operand 77 states. [2018-11-14 18:50:06,628 INFO L87 Difference]: Start difference. First operand 78 states. Second operand 77 states. [2018-11-14 18:50:06,631 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:06,631 INFO L93 Difference]: Finished difference Result 78 states and 82 transitions. [2018-11-14 18:50:06,631 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 82 transitions. [2018-11-14 18:50:06,632 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:50:06,632 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:50:06,632 INFO L74 IsIncluded]: Start isIncluded. First operand 77 states. Second operand 78 states. [2018-11-14 18:50:06,632 INFO L87 Difference]: Start difference. First operand 77 states. Second operand 78 states. [2018-11-14 18:50:06,634 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:06,634 INFO L93 Difference]: Finished difference Result 78 states and 82 transitions. [2018-11-14 18:50:06,635 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 82 transitions. [2018-11-14 18:50:06,635 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:50:06,635 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:50:06,635 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:50:06,635 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:50:06,635 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 77 states. [2018-11-14 18:50:06,637 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 77 states to 77 states and 81 transitions. [2018-11-14 18:50:06,637 INFO L78 Accepts]: Start accepts. Automaton has 77 states and 81 transitions. Word has length 109 [2018-11-14 18:50:06,638 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:50:06,638 INFO L480 AbstractCegarLoop]: Abstraction has 77 states and 81 transitions. [2018-11-14 18:50:06,638 INFO L481 AbstractCegarLoop]: Interpolant automaton has 14 states. [2018-11-14 18:50:06,638 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states and 81 transitions. [2018-11-14 18:50:06,639 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 113 [2018-11-14 18:50:06,639 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:50:06,639 INFO L375 BasicCegarLoop]: trace histogram [15, 12, 12, 12, 11, 11, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:50:06,639 INFO L423 AbstractCegarLoop]: === Iteration 15 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:50:06,640 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:50:06,640 INFO L82 PathProgramCache]: Analyzing trace with hash -1670093159, now seen corresponding path program 11 times [2018-11-14 18:50:06,640 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:50:06,640 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:50:06,641 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:50:06,641 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 18:50:06,641 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:50:06,658 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:50:07,747 INFO L256 TraceCheckUtils]: 0: Hoare triple {6518#true} call ULTIMATE.init(); {6518#true} is VALID [2018-11-14 18:50:07,747 INFO L273 TraceCheckUtils]: 1: Hoare triple {6518#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {6518#true} is VALID [2018-11-14 18:50:07,748 INFO L273 TraceCheckUtils]: 2: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:50:07,748 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {6518#true} {6518#true} #69#return; {6518#true} is VALID [2018-11-14 18:50:07,748 INFO L256 TraceCheckUtils]: 4: Hoare triple {6518#true} call #t~ret12 := main(); {6518#true} is VALID [2018-11-14 18:50:07,749 INFO L273 TraceCheckUtils]: 5: Hoare triple {6518#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {6520#(= main_~i~1 0)} is VALID [2018-11-14 18:50:07,749 INFO L273 TraceCheckUtils]: 6: Hoare triple {6520#(= main_~i~1 0)} assume true; {6520#(= main_~i~1 0)} is VALID [2018-11-14 18:50:07,750 INFO L273 TraceCheckUtils]: 7: Hoare triple {6520#(= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {6520#(= main_~i~1 0)} is VALID [2018-11-14 18:50:07,750 INFO L273 TraceCheckUtils]: 8: Hoare triple {6520#(= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {6521#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:07,751 INFO L273 TraceCheckUtils]: 9: Hoare triple {6521#(<= main_~i~1 1)} assume true; {6521#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:07,751 INFO L273 TraceCheckUtils]: 10: Hoare triple {6521#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {6521#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:07,752 INFO L273 TraceCheckUtils]: 11: Hoare triple {6521#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {6522#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:07,753 INFO L273 TraceCheckUtils]: 12: Hoare triple {6522#(<= main_~i~1 2)} assume true; {6522#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:07,753 INFO L273 TraceCheckUtils]: 13: Hoare triple {6522#(<= main_~i~1 2)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {6522#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:07,754 INFO L273 TraceCheckUtils]: 14: Hoare triple {6522#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {6523#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:07,754 INFO L273 TraceCheckUtils]: 15: Hoare triple {6523#(<= main_~i~1 3)} assume true; {6523#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:07,755 INFO L273 TraceCheckUtils]: 16: Hoare triple {6523#(<= main_~i~1 3)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {6523#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:07,755 INFO L273 TraceCheckUtils]: 17: Hoare triple {6523#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {6524#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:07,756 INFO L273 TraceCheckUtils]: 18: Hoare triple {6524#(<= main_~i~1 4)} assume true; {6524#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:07,756 INFO L273 TraceCheckUtils]: 19: Hoare triple {6524#(<= main_~i~1 4)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {6524#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:07,757 INFO L273 TraceCheckUtils]: 20: Hoare triple {6524#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {6525#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:07,758 INFO L273 TraceCheckUtils]: 21: Hoare triple {6525#(<= main_~i~1 5)} assume true; {6525#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:07,758 INFO L273 TraceCheckUtils]: 22: Hoare triple {6525#(<= main_~i~1 5)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {6525#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:07,759 INFO L273 TraceCheckUtils]: 23: Hoare triple {6525#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {6526#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:07,759 INFO L273 TraceCheckUtils]: 24: Hoare triple {6526#(<= main_~i~1 6)} assume true; {6526#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:07,760 INFO L273 TraceCheckUtils]: 25: Hoare triple {6526#(<= main_~i~1 6)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {6526#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:07,761 INFO L273 TraceCheckUtils]: 26: Hoare triple {6526#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {6527#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:07,761 INFO L273 TraceCheckUtils]: 27: Hoare triple {6527#(<= main_~i~1 7)} assume true; {6527#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:07,762 INFO L273 TraceCheckUtils]: 28: Hoare triple {6527#(<= main_~i~1 7)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {6527#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:07,762 INFO L273 TraceCheckUtils]: 29: Hoare triple {6527#(<= main_~i~1 7)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {6528#(<= main_~i~1 8)} is VALID [2018-11-14 18:50:07,763 INFO L273 TraceCheckUtils]: 30: Hoare triple {6528#(<= main_~i~1 8)} assume true; {6528#(<= main_~i~1 8)} is VALID [2018-11-14 18:50:07,763 INFO L273 TraceCheckUtils]: 31: Hoare triple {6528#(<= main_~i~1 8)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {6528#(<= main_~i~1 8)} is VALID [2018-11-14 18:50:07,764 INFO L273 TraceCheckUtils]: 32: Hoare triple {6528#(<= main_~i~1 8)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {6529#(<= main_~i~1 9)} is VALID [2018-11-14 18:50:07,765 INFO L273 TraceCheckUtils]: 33: Hoare triple {6529#(<= main_~i~1 9)} assume true; {6529#(<= main_~i~1 9)} is VALID [2018-11-14 18:50:07,765 INFO L273 TraceCheckUtils]: 34: Hoare triple {6529#(<= main_~i~1 9)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {6529#(<= main_~i~1 9)} is VALID [2018-11-14 18:50:07,766 INFO L273 TraceCheckUtils]: 35: Hoare triple {6529#(<= main_~i~1 9)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {6530#(<= main_~i~1 10)} is VALID [2018-11-14 18:50:07,766 INFO L273 TraceCheckUtils]: 36: Hoare triple {6530#(<= main_~i~1 10)} assume true; {6530#(<= main_~i~1 10)} is VALID [2018-11-14 18:50:07,767 INFO L273 TraceCheckUtils]: 37: Hoare triple {6530#(<= main_~i~1 10)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {6530#(<= main_~i~1 10)} is VALID [2018-11-14 18:50:07,768 INFO L273 TraceCheckUtils]: 38: Hoare triple {6530#(<= main_~i~1 10)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {6531#(<= main_~i~1 11)} is VALID [2018-11-14 18:50:07,768 INFO L273 TraceCheckUtils]: 39: Hoare triple {6531#(<= main_~i~1 11)} assume true; {6531#(<= main_~i~1 11)} is VALID [2018-11-14 18:50:07,769 INFO L273 TraceCheckUtils]: 40: Hoare triple {6531#(<= main_~i~1 11)} assume !(~i~1 < 20); {6519#false} is VALID [2018-11-14 18:50:07,769 INFO L256 TraceCheckUtils]: 41: Hoare triple {6519#false} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {6518#true} is VALID [2018-11-14 18:50:07,769 INFO L273 TraceCheckUtils]: 42: Hoare triple {6518#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {6518#true} is VALID [2018-11-14 18:50:07,769 INFO L273 TraceCheckUtils]: 43: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:50:07,770 INFO L273 TraceCheckUtils]: 44: Hoare triple {6518#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {6518#true} is VALID [2018-11-14 18:50:07,770 INFO L273 TraceCheckUtils]: 45: Hoare triple {6518#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {6518#true} is VALID [2018-11-14 18:50:07,770 INFO L273 TraceCheckUtils]: 46: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:50:07,770 INFO L273 TraceCheckUtils]: 47: Hoare triple {6518#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {6518#true} is VALID [2018-11-14 18:50:07,770 INFO L273 TraceCheckUtils]: 48: Hoare triple {6518#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {6518#true} is VALID [2018-11-14 18:50:07,771 INFO L273 TraceCheckUtils]: 49: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:50:07,771 INFO L273 TraceCheckUtils]: 50: Hoare triple {6518#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {6518#true} is VALID [2018-11-14 18:50:07,771 INFO L273 TraceCheckUtils]: 51: Hoare triple {6518#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {6518#true} is VALID [2018-11-14 18:50:07,771 INFO L273 TraceCheckUtils]: 52: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:50:07,771 INFO L273 TraceCheckUtils]: 53: Hoare triple {6518#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {6518#true} is VALID [2018-11-14 18:50:07,772 INFO L273 TraceCheckUtils]: 54: Hoare triple {6518#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {6518#true} is VALID [2018-11-14 18:50:07,772 INFO L273 TraceCheckUtils]: 55: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:50:07,772 INFO L273 TraceCheckUtils]: 56: Hoare triple {6518#true} assume !(~i~0 < 20); {6518#true} is VALID [2018-11-14 18:50:07,772 INFO L273 TraceCheckUtils]: 57: Hoare triple {6518#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {6518#true} is VALID [2018-11-14 18:50:07,772 INFO L273 TraceCheckUtils]: 58: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:50:07,773 INFO L268 TraceCheckUtils]: 59: Hoare quadruple {6518#true} {6519#false} #73#return; {6519#false} is VALID [2018-11-14 18:50:07,773 INFO L273 TraceCheckUtils]: 60: Hoare triple {6519#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {6519#false} is VALID [2018-11-14 18:50:07,773 INFO L256 TraceCheckUtils]: 61: Hoare triple {6519#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {6518#true} is VALID [2018-11-14 18:50:07,773 INFO L273 TraceCheckUtils]: 62: Hoare triple {6518#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {6518#true} is VALID [2018-11-14 18:50:07,773 INFO L273 TraceCheckUtils]: 63: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:50:07,773 INFO L273 TraceCheckUtils]: 64: Hoare triple {6518#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {6518#true} is VALID [2018-11-14 18:50:07,774 INFO L273 TraceCheckUtils]: 65: Hoare triple {6518#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {6518#true} is VALID [2018-11-14 18:50:07,774 INFO L273 TraceCheckUtils]: 66: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:50:07,774 INFO L273 TraceCheckUtils]: 67: Hoare triple {6518#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {6518#true} is VALID [2018-11-14 18:50:07,774 INFO L273 TraceCheckUtils]: 68: Hoare triple {6518#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {6518#true} is VALID [2018-11-14 18:50:07,774 INFO L273 TraceCheckUtils]: 69: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:50:07,775 INFO L273 TraceCheckUtils]: 70: Hoare triple {6518#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {6518#true} is VALID [2018-11-14 18:50:07,775 INFO L273 TraceCheckUtils]: 71: Hoare triple {6518#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {6518#true} is VALID [2018-11-14 18:50:07,775 INFO L273 TraceCheckUtils]: 72: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:50:07,775 INFO L273 TraceCheckUtils]: 73: Hoare triple {6518#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {6518#true} is VALID [2018-11-14 18:50:07,775 INFO L273 TraceCheckUtils]: 74: Hoare triple {6518#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {6518#true} is VALID [2018-11-14 18:50:07,775 INFO L273 TraceCheckUtils]: 75: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:50:07,775 INFO L273 TraceCheckUtils]: 76: Hoare triple {6518#true} assume !(~i~0 < 20); {6518#true} is VALID [2018-11-14 18:50:07,775 INFO L273 TraceCheckUtils]: 77: Hoare triple {6518#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {6518#true} is VALID [2018-11-14 18:50:07,776 INFO L273 TraceCheckUtils]: 78: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:50:07,776 INFO L268 TraceCheckUtils]: 79: Hoare quadruple {6518#true} {6519#false} #75#return; {6519#false} is VALID [2018-11-14 18:50:07,776 INFO L273 TraceCheckUtils]: 80: Hoare triple {6519#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {6519#false} is VALID [2018-11-14 18:50:07,776 INFO L273 TraceCheckUtils]: 81: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 18:50:07,776 INFO L273 TraceCheckUtils]: 82: Hoare triple {6519#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {6519#false} is VALID [2018-11-14 18:50:07,776 INFO L273 TraceCheckUtils]: 83: Hoare triple {6519#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {6519#false} is VALID [2018-11-14 18:50:07,776 INFO L273 TraceCheckUtils]: 84: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 18:50:07,776 INFO L273 TraceCheckUtils]: 85: Hoare triple {6519#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {6519#false} is VALID [2018-11-14 18:50:07,777 INFO L273 TraceCheckUtils]: 86: Hoare triple {6519#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {6519#false} is VALID [2018-11-14 18:50:07,777 INFO L273 TraceCheckUtils]: 87: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 18:50:07,777 INFO L273 TraceCheckUtils]: 88: Hoare triple {6519#false} assume !(~i~2 < 19); {6519#false} is VALID [2018-11-14 18:50:07,777 INFO L273 TraceCheckUtils]: 89: Hoare triple {6519#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {6519#false} is VALID [2018-11-14 18:50:07,777 INFO L256 TraceCheckUtils]: 90: Hoare triple {6519#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {6518#true} is VALID [2018-11-14 18:50:07,777 INFO L273 TraceCheckUtils]: 91: Hoare triple {6518#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {6518#true} is VALID [2018-11-14 18:50:07,777 INFO L273 TraceCheckUtils]: 92: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:50:07,777 INFO L273 TraceCheckUtils]: 93: Hoare triple {6518#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {6518#true} is VALID [2018-11-14 18:50:07,777 INFO L273 TraceCheckUtils]: 94: Hoare triple {6518#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {6518#true} is VALID [2018-11-14 18:50:07,778 INFO L273 TraceCheckUtils]: 95: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:50:07,778 INFO L273 TraceCheckUtils]: 96: Hoare triple {6518#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {6518#true} is VALID [2018-11-14 18:50:07,778 INFO L273 TraceCheckUtils]: 97: Hoare triple {6518#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {6518#true} is VALID [2018-11-14 18:50:07,778 INFO L273 TraceCheckUtils]: 98: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:50:07,778 INFO L273 TraceCheckUtils]: 99: Hoare triple {6518#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {6518#true} is VALID [2018-11-14 18:50:07,778 INFO L273 TraceCheckUtils]: 100: Hoare triple {6518#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {6518#true} is VALID [2018-11-14 18:50:07,778 INFO L273 TraceCheckUtils]: 101: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:50:07,778 INFO L273 TraceCheckUtils]: 102: Hoare triple {6518#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {6518#true} is VALID [2018-11-14 18:50:07,778 INFO L273 TraceCheckUtils]: 103: Hoare triple {6518#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {6518#true} is VALID [2018-11-14 18:50:07,779 INFO L273 TraceCheckUtils]: 104: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:50:07,779 INFO L273 TraceCheckUtils]: 105: Hoare triple {6518#true} assume !(~i~0 < 20); {6518#true} is VALID [2018-11-14 18:50:07,779 INFO L273 TraceCheckUtils]: 106: Hoare triple {6518#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {6518#true} is VALID [2018-11-14 18:50:07,779 INFO L273 TraceCheckUtils]: 107: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:50:07,779 INFO L268 TraceCheckUtils]: 108: Hoare quadruple {6518#true} {6519#false} #77#return; {6519#false} is VALID [2018-11-14 18:50:07,779 INFO L273 TraceCheckUtils]: 109: Hoare triple {6519#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {6519#false} is VALID [2018-11-14 18:50:07,779 INFO L273 TraceCheckUtils]: 110: Hoare triple {6519#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {6519#false} is VALID [2018-11-14 18:50:07,779 INFO L273 TraceCheckUtils]: 111: Hoare triple {6519#false} assume !false; {6519#false} is VALID [2018-11-14 18:50:07,785 INFO L134 CoverageAnalysis]: Checked inductivity of 482 backedges. 0 proven. 187 refuted. 0 times theorem prover too weak. 295 trivial. 0 not checked. [2018-11-14 18:50:07,785 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:50:07,785 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 13 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 13 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:50:07,793 INFO L103 rtionOrderModulation]: Keeping assertion order INSIDE_LOOP_FIRST1 [2018-11-14 18:50:08,085 INFO L249 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 11 check-sat command(s) [2018-11-14 18:50:08,085 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 18:50:08,104 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:50:08,106 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:50:08,290 INFO L256 TraceCheckUtils]: 0: Hoare triple {6518#true} call ULTIMATE.init(); {6518#true} is VALID [2018-11-14 18:50:08,290 INFO L273 TraceCheckUtils]: 1: Hoare triple {6518#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {6518#true} is VALID [2018-11-14 18:50:08,290 INFO L273 TraceCheckUtils]: 2: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:50:08,290 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {6518#true} {6518#true} #69#return; {6518#true} is VALID [2018-11-14 18:50:08,291 INFO L256 TraceCheckUtils]: 4: Hoare triple {6518#true} call #t~ret12 := main(); {6518#true} is VALID [2018-11-14 18:50:08,291 INFO L273 TraceCheckUtils]: 5: Hoare triple {6518#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {6518#true} is VALID [2018-11-14 18:50:08,291 INFO L273 TraceCheckUtils]: 6: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:50:08,291 INFO L273 TraceCheckUtils]: 7: Hoare triple {6518#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {6518#true} is VALID [2018-11-14 18:50:08,291 INFO L273 TraceCheckUtils]: 8: Hoare triple {6518#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {6518#true} is VALID [2018-11-14 18:50:08,291 INFO L273 TraceCheckUtils]: 9: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:50:08,292 INFO L273 TraceCheckUtils]: 10: Hoare triple {6518#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {6518#true} is VALID [2018-11-14 18:50:08,292 INFO L273 TraceCheckUtils]: 11: Hoare triple {6518#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {6518#true} is VALID [2018-11-14 18:50:08,292 INFO L273 TraceCheckUtils]: 12: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:50:08,292 INFO L273 TraceCheckUtils]: 13: Hoare triple {6518#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {6518#true} is VALID [2018-11-14 18:50:08,292 INFO L273 TraceCheckUtils]: 14: Hoare triple {6518#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {6518#true} is VALID [2018-11-14 18:50:08,292 INFO L273 TraceCheckUtils]: 15: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:50:08,293 INFO L273 TraceCheckUtils]: 16: Hoare triple {6518#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {6518#true} is VALID [2018-11-14 18:50:08,293 INFO L273 TraceCheckUtils]: 17: Hoare triple {6518#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {6518#true} is VALID [2018-11-14 18:50:08,293 INFO L273 TraceCheckUtils]: 18: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:50:08,293 INFO L273 TraceCheckUtils]: 19: Hoare triple {6518#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {6518#true} is VALID [2018-11-14 18:50:08,293 INFO L273 TraceCheckUtils]: 20: Hoare triple {6518#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {6518#true} is VALID [2018-11-14 18:50:08,294 INFO L273 TraceCheckUtils]: 21: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:50:08,294 INFO L273 TraceCheckUtils]: 22: Hoare triple {6518#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {6518#true} is VALID [2018-11-14 18:50:08,294 INFO L273 TraceCheckUtils]: 23: Hoare triple {6518#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {6518#true} is VALID [2018-11-14 18:50:08,294 INFO L273 TraceCheckUtils]: 24: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:50:08,294 INFO L273 TraceCheckUtils]: 25: Hoare triple {6518#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {6518#true} is VALID [2018-11-14 18:50:08,294 INFO L273 TraceCheckUtils]: 26: Hoare triple {6518#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {6518#true} is VALID [2018-11-14 18:50:08,295 INFO L273 TraceCheckUtils]: 27: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:50:08,295 INFO L273 TraceCheckUtils]: 28: Hoare triple {6518#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {6518#true} is VALID [2018-11-14 18:50:08,295 INFO L273 TraceCheckUtils]: 29: Hoare triple {6518#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {6518#true} is VALID [2018-11-14 18:50:08,295 INFO L273 TraceCheckUtils]: 30: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:50:08,295 INFO L273 TraceCheckUtils]: 31: Hoare triple {6518#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {6518#true} is VALID [2018-11-14 18:50:08,295 INFO L273 TraceCheckUtils]: 32: Hoare triple {6518#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {6518#true} is VALID [2018-11-14 18:50:08,296 INFO L273 TraceCheckUtils]: 33: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:50:08,296 INFO L273 TraceCheckUtils]: 34: Hoare triple {6518#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {6518#true} is VALID [2018-11-14 18:50:08,296 INFO L273 TraceCheckUtils]: 35: Hoare triple {6518#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {6518#true} is VALID [2018-11-14 18:50:08,296 INFO L273 TraceCheckUtils]: 36: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:50:08,296 INFO L273 TraceCheckUtils]: 37: Hoare triple {6518#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {6518#true} is VALID [2018-11-14 18:50:08,297 INFO L273 TraceCheckUtils]: 38: Hoare triple {6518#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {6518#true} is VALID [2018-11-14 18:50:08,297 INFO L273 TraceCheckUtils]: 39: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:50:08,297 INFO L273 TraceCheckUtils]: 40: Hoare triple {6518#true} assume !(~i~1 < 20); {6518#true} is VALID [2018-11-14 18:50:08,297 INFO L256 TraceCheckUtils]: 41: Hoare triple {6518#true} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {6518#true} is VALID [2018-11-14 18:50:08,311 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#(<= avg_~i~0 0)} is VALID [2018-11-14 18:50:08,319 INFO L273 TraceCheckUtils]: 43: Hoare triple {6661#(<= avg_~i~0 0)} assume true; {6661#(<= avg_~i~0 0)} is VALID [2018-11-14 18:50:08,332 INFO L273 TraceCheckUtils]: 44: Hoare triple {6661#(<= avg_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {6661#(<= avg_~i~0 0)} is VALID [2018-11-14 18:50:08,345 INFO L273 TraceCheckUtils]: 45: Hoare triple {6661#(<= avg_~i~0 0)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {6671#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:08,362 INFO L273 TraceCheckUtils]: 46: Hoare triple {6671#(<= avg_~i~0 1)} assume true; {6671#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:08,370 INFO L273 TraceCheckUtils]: 47: Hoare triple {6671#(<= avg_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {6671#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:08,383 INFO L273 TraceCheckUtils]: 48: Hoare triple {6671#(<= avg_~i~0 1)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {6681#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:08,396 INFO L273 TraceCheckUtils]: 49: Hoare triple {6681#(<= avg_~i~0 2)} assume true; {6681#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:08,408 INFO L273 TraceCheckUtils]: 50: Hoare triple {6681#(<= avg_~i~0 2)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {6681#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:08,409 INFO L273 TraceCheckUtils]: 51: Hoare triple {6681#(<= avg_~i~0 2)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {6691#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:08,409 INFO L273 TraceCheckUtils]: 52: Hoare triple {6691#(<= avg_~i~0 3)} assume true; {6691#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:08,413 INFO L273 TraceCheckUtils]: 53: Hoare triple {6691#(<= avg_~i~0 3)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {6691#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:08,414 INFO L273 TraceCheckUtils]: 54: Hoare triple {6691#(<= avg_~i~0 3)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {6701#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:08,415 INFO L273 TraceCheckUtils]: 55: Hoare triple {6701#(<= avg_~i~0 4)} assume true; {6701#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:08,415 INFO L273 TraceCheckUtils]: 56: Hoare triple {6701#(<= avg_~i~0 4)} assume !(~i~0 < 20); {6519#false} is VALID [2018-11-14 18:50:08,415 INFO L273 TraceCheckUtils]: 57: Hoare triple {6519#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {6519#false} is VALID [2018-11-14 18:50:08,415 INFO L273 TraceCheckUtils]: 58: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 18:50:08,415 INFO L268 TraceCheckUtils]: 59: Hoare quadruple {6519#false} {6518#true} #73#return; {6519#false} is VALID [2018-11-14 18:50:08,416 INFO L273 TraceCheckUtils]: 60: Hoare triple {6519#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {6519#false} is VALID [2018-11-14 18:50:08,416 INFO L256 TraceCheckUtils]: 61: Hoare triple {6519#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {6519#false} is VALID [2018-11-14 18:50:08,416 INFO L273 TraceCheckUtils]: 62: Hoare triple {6519#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {6519#false} is VALID [2018-11-14 18:50:08,416 INFO L273 TraceCheckUtils]: 63: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 18:50:08,416 INFO L273 TraceCheckUtils]: 64: Hoare triple {6519#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {6519#false} is VALID [2018-11-14 18:50:08,416 INFO L273 TraceCheckUtils]: 65: Hoare triple {6519#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {6519#false} is VALID [2018-11-14 18:50:08,416 INFO L273 TraceCheckUtils]: 66: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 18:50:08,416 INFO L273 TraceCheckUtils]: 67: Hoare triple {6519#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {6519#false} is VALID [2018-11-14 18:50:08,417 INFO L273 TraceCheckUtils]: 68: Hoare triple {6519#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {6519#false} is VALID [2018-11-14 18:50:08,417 INFO L273 TraceCheckUtils]: 69: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 18:50:08,417 INFO L273 TraceCheckUtils]: 70: Hoare triple {6519#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {6519#false} is VALID [2018-11-14 18:50:08,417 INFO L273 TraceCheckUtils]: 71: Hoare triple {6519#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {6519#false} is VALID [2018-11-14 18:50:08,417 INFO L273 TraceCheckUtils]: 72: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 18:50:08,417 INFO L273 TraceCheckUtils]: 73: Hoare triple {6519#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {6519#false} is VALID [2018-11-14 18:50:08,418 INFO L273 TraceCheckUtils]: 74: Hoare triple {6519#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {6519#false} is VALID [2018-11-14 18:50:08,418 INFO L273 TraceCheckUtils]: 75: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 18:50:08,418 INFO L273 TraceCheckUtils]: 76: Hoare triple {6519#false} assume !(~i~0 < 20); {6519#false} is VALID [2018-11-14 18:50:08,418 INFO L273 TraceCheckUtils]: 77: Hoare triple {6519#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {6519#false} is VALID [2018-11-14 18:50:08,418 INFO L273 TraceCheckUtils]: 78: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 18:50:08,419 INFO L268 TraceCheckUtils]: 79: Hoare quadruple {6519#false} {6519#false} #75#return; {6519#false} is VALID [2018-11-14 18:50:08,419 INFO L273 TraceCheckUtils]: 80: Hoare triple {6519#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {6519#false} is VALID [2018-11-14 18:50:08,419 INFO L273 TraceCheckUtils]: 81: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 18:50:08,419 INFO L273 TraceCheckUtils]: 82: Hoare triple {6519#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {6519#false} is VALID [2018-11-14 18:50:08,419 INFO L273 TraceCheckUtils]: 83: Hoare triple {6519#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {6519#false} is VALID [2018-11-14 18:50:08,419 INFO L273 TraceCheckUtils]: 84: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 18:50:08,420 INFO L273 TraceCheckUtils]: 85: Hoare triple {6519#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {6519#false} is VALID [2018-11-14 18:50:08,420 INFO L273 TraceCheckUtils]: 86: Hoare triple {6519#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {6519#false} is VALID [2018-11-14 18:50:08,420 INFO L273 TraceCheckUtils]: 87: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 18:50:08,420 INFO L273 TraceCheckUtils]: 88: Hoare triple {6519#false} assume !(~i~2 < 19); {6519#false} is VALID [2018-11-14 18:50:08,420 INFO L273 TraceCheckUtils]: 89: Hoare triple {6519#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {6519#false} is VALID [2018-11-14 18:50:08,420 INFO L256 TraceCheckUtils]: 90: Hoare triple {6519#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {6519#false} is VALID [2018-11-14 18:50:08,420 INFO L273 TraceCheckUtils]: 91: Hoare triple {6519#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {6519#false} is VALID [2018-11-14 18:50:08,421 INFO L273 TraceCheckUtils]: 92: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 18:50:08,421 INFO L273 TraceCheckUtils]: 93: Hoare triple {6519#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {6519#false} is VALID [2018-11-14 18:50:08,421 INFO L273 TraceCheckUtils]: 94: Hoare triple {6519#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {6519#false} is VALID [2018-11-14 18:50:08,421 INFO L273 TraceCheckUtils]: 95: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 18:50:08,421 INFO L273 TraceCheckUtils]: 96: Hoare triple {6519#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {6519#false} is VALID [2018-11-14 18:50:08,421 INFO L273 TraceCheckUtils]: 97: Hoare triple {6519#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {6519#false} is VALID [2018-11-14 18:50:08,422 INFO L273 TraceCheckUtils]: 98: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 18:50:08,422 INFO L273 TraceCheckUtils]: 99: Hoare triple {6519#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {6519#false} is VALID [2018-11-14 18:50:08,422 INFO L273 TraceCheckUtils]: 100: Hoare triple {6519#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {6519#false} is VALID [2018-11-14 18:50:08,422 INFO L273 TraceCheckUtils]: 101: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 18:50:08,422 INFO L273 TraceCheckUtils]: 102: Hoare triple {6519#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {6519#false} is VALID [2018-11-14 18:50:08,422 INFO L273 TraceCheckUtils]: 103: Hoare triple {6519#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {6519#false} is VALID [2018-11-14 18:50:08,422 INFO L273 TraceCheckUtils]: 104: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 18:50:08,423 INFO L273 TraceCheckUtils]: 105: Hoare triple {6519#false} assume !(~i~0 < 20); {6519#false} is VALID [2018-11-14 18:50:08,423 INFO L273 TraceCheckUtils]: 106: Hoare triple {6519#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {6519#false} is VALID [2018-11-14 18:50:08,423 INFO L273 TraceCheckUtils]: 107: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 18:50:08,423 INFO L268 TraceCheckUtils]: 108: Hoare quadruple {6519#false} {6519#false} #77#return; {6519#false} is VALID [2018-11-14 18:50:08,423 INFO L273 TraceCheckUtils]: 109: Hoare triple {6519#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {6519#false} is VALID [2018-11-14 18:50:08,423 INFO L273 TraceCheckUtils]: 110: Hoare triple {6519#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {6519#false} is VALID [2018-11-14 18:50:08,423 INFO L273 TraceCheckUtils]: 111: Hoare triple {6519#false} assume !false; {6519#false} is VALID [2018-11-14 18:50:08,428 INFO L134 CoverageAnalysis]: Checked inductivity of 482 backedges. 134 proven. 26 refuted. 0 times theorem prover too weak. 322 trivial. 0 not checked. [2018-11-14 18:50:08,449 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:50:08,449 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 7] total 19 [2018-11-14 18:50:08,449 INFO L78 Accepts]: Start accepts. Automaton has 19 states. Word has length 112 [2018-11-14 18:50:08,450 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:50:08,451 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 19 states. [2018-11-14 18:50:08,541 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 97 edges. 97 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:50:08,542 INFO L459 AbstractCegarLoop]: Interpolant automaton has 19 states [2018-11-14 18:50:08,542 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2018-11-14 18:50:08,542 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=111, Invalid=231, Unknown=0, NotChecked=0, Total=342 [2018-11-14 18:50:08,543 INFO L87 Difference]: Start difference. First operand 77 states and 81 transitions. Second operand 19 states. [2018-11-14 18:50:09,052 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:09,053 INFO L93 Difference]: Finished difference Result 121 states and 133 transitions. [2018-11-14 18:50:09,053 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2018-11-14 18:50:09,053 INFO L78 Accepts]: Start accepts. Automaton has 19 states. Word has length 112 [2018-11-14 18:50:09,053 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:50:09,053 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 19 states. [2018-11-14 18:50:09,055 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 112 transitions. [2018-11-14 18:50:09,055 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 19 states. [2018-11-14 18:50:09,056 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 112 transitions. [2018-11-14 18:50:09,056 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 19 states and 112 transitions. [2018-11-14 18:50:09,212 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 112 edges. 112 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:50:09,214 INFO L225 Difference]: With dead ends: 121 [2018-11-14 18:50:09,214 INFO L226 Difference]: Without dead ends: 85 [2018-11-14 18:50:09,215 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 125 GetRequests, 108 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 55 ImplicationChecksByTransitivity, 0.8s TimeCoverageRelationStatistics Valid=111, Invalid=231, Unknown=0, NotChecked=0, Total=342 [2018-11-14 18:50:09,215 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 85 states. [2018-11-14 18:50:09,330 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 85 to 83. [2018-11-14 18:50:09,331 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:50:09,331 INFO L82 GeneralOperation]: Start isEquivalent. First operand 85 states. Second operand 83 states. [2018-11-14 18:50:09,331 INFO L74 IsIncluded]: Start isIncluded. First operand 85 states. Second operand 83 states. [2018-11-14 18:50:09,331 INFO L87 Difference]: Start difference. First operand 85 states. Second operand 83 states. [2018-11-14 18:50:09,336 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:09,336 INFO L93 Difference]: Finished difference Result 85 states and 89 transitions. [2018-11-14 18:50:09,336 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 89 transitions. [2018-11-14 18:50:09,337 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:50:09,337 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:50:09,337 INFO L74 IsIncluded]: Start isIncluded. First operand 83 states. Second operand 85 states. [2018-11-14 18:50:09,337 INFO L87 Difference]: Start difference. First operand 83 states. Second operand 85 states. [2018-11-14 18:50:09,339 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:09,339 INFO L93 Difference]: Finished difference Result 85 states and 89 transitions. [2018-11-14 18:50:09,339 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 89 transitions. [2018-11-14 18:50:09,340 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:50:09,340 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:50:09,340 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:50:09,340 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:50:09,340 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 83 states. [2018-11-14 18:50:09,342 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 83 states to 83 states and 87 transitions. [2018-11-14 18:50:09,342 INFO L78 Accepts]: Start accepts. Automaton has 83 states and 87 transitions. Word has length 112 [2018-11-14 18:50:09,343 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:50:09,343 INFO L480 AbstractCegarLoop]: Abstraction has 83 states and 87 transitions. [2018-11-14 18:50:09,343 INFO L481 AbstractCegarLoop]: Interpolant automaton has 19 states. [2018-11-14 18:50:09,343 INFO L276 IsEmpty]: Start isEmpty. Operand 83 states and 87 transitions. [2018-11-14 18:50:09,344 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 125 [2018-11-14 18:50:09,344 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:50:09,344 INFO L375 BasicCegarLoop]: trace histogram [18, 15, 15, 13, 12, 12, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:50:09,345 INFO L423 AbstractCegarLoop]: === Iteration 16 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:50:09,345 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:50:09,345 INFO L82 PathProgramCache]: Analyzing trace with hash -167472347, now seen corresponding path program 12 times [2018-11-14 18:50:09,345 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:50:09,345 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:50:09,347 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:50:09,347 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 18:50:09,347 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:50:09,368 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:50:10,013 INFO L256 TraceCheckUtils]: 0: Hoare triple {7318#true} call ULTIMATE.init(); {7318#true} is VALID [2018-11-14 18:50:10,014 INFO L273 TraceCheckUtils]: 1: Hoare triple {7318#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {7318#true} is VALID [2018-11-14 18:50:10,014 INFO L273 TraceCheckUtils]: 2: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:50:10,014 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {7318#true} {7318#true} #69#return; {7318#true} is VALID [2018-11-14 18:50:10,014 INFO L256 TraceCheckUtils]: 4: Hoare triple {7318#true} call #t~ret12 := main(); {7318#true} is VALID [2018-11-14 18:50:10,015 INFO L273 TraceCheckUtils]: 5: Hoare triple {7318#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {7320#(= main_~i~1 0)} is VALID [2018-11-14 18:50:10,015 INFO L273 TraceCheckUtils]: 6: Hoare triple {7320#(= main_~i~1 0)} assume true; {7320#(= main_~i~1 0)} is VALID [2018-11-14 18:50:10,016 INFO L273 TraceCheckUtils]: 7: Hoare triple {7320#(= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {7320#(= main_~i~1 0)} is VALID [2018-11-14 18:50:10,016 INFO L273 TraceCheckUtils]: 8: Hoare triple {7320#(= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {7321#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:10,017 INFO L273 TraceCheckUtils]: 9: Hoare triple {7321#(<= main_~i~1 1)} assume true; {7321#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:10,017 INFO L273 TraceCheckUtils]: 10: Hoare triple {7321#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {7321#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:10,017 INFO L273 TraceCheckUtils]: 11: Hoare triple {7321#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {7322#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:10,018 INFO L273 TraceCheckUtils]: 12: Hoare triple {7322#(<= main_~i~1 2)} assume true; {7322#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:10,018 INFO L273 TraceCheckUtils]: 13: Hoare triple {7322#(<= main_~i~1 2)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {7322#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:10,018 INFO L273 TraceCheckUtils]: 14: Hoare triple {7322#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {7323#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:10,019 INFO L273 TraceCheckUtils]: 15: Hoare triple {7323#(<= main_~i~1 3)} assume true; {7323#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:10,019 INFO L273 TraceCheckUtils]: 16: Hoare triple {7323#(<= main_~i~1 3)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {7323#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:10,020 INFO L273 TraceCheckUtils]: 17: Hoare triple {7323#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {7324#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:10,020 INFO L273 TraceCheckUtils]: 18: Hoare triple {7324#(<= main_~i~1 4)} assume true; {7324#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:10,021 INFO L273 TraceCheckUtils]: 19: Hoare triple {7324#(<= main_~i~1 4)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {7324#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:10,021 INFO L273 TraceCheckUtils]: 20: Hoare triple {7324#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {7325#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:10,022 INFO L273 TraceCheckUtils]: 21: Hoare triple {7325#(<= main_~i~1 5)} assume true; {7325#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:10,022 INFO L273 TraceCheckUtils]: 22: Hoare triple {7325#(<= main_~i~1 5)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {7325#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:10,023 INFO L273 TraceCheckUtils]: 23: Hoare triple {7325#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {7326#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:10,024 INFO L273 TraceCheckUtils]: 24: Hoare triple {7326#(<= main_~i~1 6)} assume true; {7326#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:10,024 INFO L273 TraceCheckUtils]: 25: Hoare triple {7326#(<= main_~i~1 6)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {7326#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:10,025 INFO L273 TraceCheckUtils]: 26: Hoare triple {7326#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {7327#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:10,025 INFO L273 TraceCheckUtils]: 27: Hoare triple {7327#(<= main_~i~1 7)} assume true; {7327#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:10,026 INFO L273 TraceCheckUtils]: 28: Hoare triple {7327#(<= main_~i~1 7)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {7327#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:10,027 INFO L273 TraceCheckUtils]: 29: Hoare triple {7327#(<= main_~i~1 7)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {7328#(<= main_~i~1 8)} is VALID [2018-11-14 18:50:10,027 INFO L273 TraceCheckUtils]: 30: Hoare triple {7328#(<= main_~i~1 8)} assume true; {7328#(<= main_~i~1 8)} is VALID [2018-11-14 18:50:10,028 INFO L273 TraceCheckUtils]: 31: Hoare triple {7328#(<= main_~i~1 8)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {7328#(<= main_~i~1 8)} is VALID [2018-11-14 18:50:10,028 INFO L273 TraceCheckUtils]: 32: Hoare triple {7328#(<= main_~i~1 8)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {7329#(<= main_~i~1 9)} is VALID [2018-11-14 18:50:10,029 INFO L273 TraceCheckUtils]: 33: Hoare triple {7329#(<= main_~i~1 9)} assume true; {7329#(<= main_~i~1 9)} is VALID [2018-11-14 18:50:10,029 INFO L273 TraceCheckUtils]: 34: Hoare triple {7329#(<= main_~i~1 9)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {7329#(<= main_~i~1 9)} is VALID [2018-11-14 18:50:10,030 INFO L273 TraceCheckUtils]: 35: Hoare triple {7329#(<= main_~i~1 9)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {7330#(<= main_~i~1 10)} is VALID [2018-11-14 18:50:10,031 INFO L273 TraceCheckUtils]: 36: Hoare triple {7330#(<= main_~i~1 10)} assume true; {7330#(<= main_~i~1 10)} is VALID [2018-11-14 18:50:10,031 INFO L273 TraceCheckUtils]: 37: Hoare triple {7330#(<= main_~i~1 10)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {7330#(<= main_~i~1 10)} is VALID [2018-11-14 18:50:10,032 INFO L273 TraceCheckUtils]: 38: Hoare triple {7330#(<= main_~i~1 10)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {7331#(<= main_~i~1 11)} is VALID [2018-11-14 18:50:10,032 INFO L273 TraceCheckUtils]: 39: Hoare triple {7331#(<= main_~i~1 11)} assume true; {7331#(<= main_~i~1 11)} is VALID [2018-11-14 18:50:10,033 INFO L273 TraceCheckUtils]: 40: Hoare triple {7331#(<= main_~i~1 11)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {7331#(<= main_~i~1 11)} is VALID [2018-11-14 18:50:10,034 INFO L273 TraceCheckUtils]: 41: Hoare triple {7331#(<= main_~i~1 11)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {7332#(<= main_~i~1 12)} is VALID [2018-11-14 18:50:10,034 INFO L273 TraceCheckUtils]: 42: Hoare triple {7332#(<= main_~i~1 12)} assume true; {7332#(<= main_~i~1 12)} is VALID [2018-11-14 18:50:10,035 INFO L273 TraceCheckUtils]: 43: Hoare triple {7332#(<= main_~i~1 12)} assume !(~i~1 < 20); {7319#false} is VALID [2018-11-14 18:50:10,035 INFO L256 TraceCheckUtils]: 44: Hoare triple {7319#false} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {7318#true} is VALID [2018-11-14 18:50:10,035 INFO L273 TraceCheckUtils]: 45: Hoare triple {7318#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {7318#true} is VALID [2018-11-14 18:50:10,035 INFO L273 TraceCheckUtils]: 46: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:50:10,036 INFO L273 TraceCheckUtils]: 47: Hoare triple {7318#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {7318#true} is VALID [2018-11-14 18:50:10,036 INFO L273 TraceCheckUtils]: 48: Hoare triple {7318#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7318#true} is VALID [2018-11-14 18:50:10,036 INFO L273 TraceCheckUtils]: 49: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:50:10,036 INFO L273 TraceCheckUtils]: 50: Hoare triple {7318#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {7318#true} is VALID [2018-11-14 18:50:10,036 INFO L273 TraceCheckUtils]: 51: Hoare triple {7318#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7318#true} is VALID [2018-11-14 18:50:10,037 INFO L273 TraceCheckUtils]: 52: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:50:10,037 INFO L273 TraceCheckUtils]: 53: Hoare triple {7318#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {7318#true} is VALID [2018-11-14 18:50:10,037 INFO L273 TraceCheckUtils]: 54: Hoare triple {7318#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7318#true} is VALID [2018-11-14 18:50:10,037 INFO L273 TraceCheckUtils]: 55: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:50:10,037 INFO L273 TraceCheckUtils]: 56: Hoare triple {7318#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {7318#true} is VALID [2018-11-14 18:50:10,038 INFO L273 TraceCheckUtils]: 57: Hoare triple {7318#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7318#true} is VALID [2018-11-14 18:50:10,038 INFO L273 TraceCheckUtils]: 58: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:50:10,038 INFO L273 TraceCheckUtils]: 59: Hoare triple {7318#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {7318#true} is VALID [2018-11-14 18:50:10,038 INFO L273 TraceCheckUtils]: 60: Hoare triple {7318#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7318#true} is VALID [2018-11-14 18:50:10,038 INFO L273 TraceCheckUtils]: 61: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:50:10,039 INFO L273 TraceCheckUtils]: 62: Hoare triple {7318#true} assume !(~i~0 < 20); {7318#true} is VALID [2018-11-14 18:50:10,039 INFO L273 TraceCheckUtils]: 63: Hoare triple {7318#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {7318#true} is VALID [2018-11-14 18:50:10,039 INFO L273 TraceCheckUtils]: 64: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:50:10,039 INFO L268 TraceCheckUtils]: 65: Hoare quadruple {7318#true} {7319#false} #73#return; {7319#false} is VALID [2018-11-14 18:50:10,039 INFO L273 TraceCheckUtils]: 66: Hoare triple {7319#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {7319#false} is VALID [2018-11-14 18:50:10,039 INFO L256 TraceCheckUtils]: 67: Hoare triple {7319#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {7318#true} is VALID [2018-11-14 18:50:10,039 INFO L273 TraceCheckUtils]: 68: Hoare triple {7318#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {7318#true} is VALID [2018-11-14 18:50:10,040 INFO L273 TraceCheckUtils]: 69: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:50:10,040 INFO L273 TraceCheckUtils]: 70: Hoare triple {7318#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {7318#true} is VALID [2018-11-14 18:50:10,040 INFO L273 TraceCheckUtils]: 71: Hoare triple {7318#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7318#true} is VALID [2018-11-14 18:50:10,040 INFO L273 TraceCheckUtils]: 72: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:50:10,040 INFO L273 TraceCheckUtils]: 73: Hoare triple {7318#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {7318#true} is VALID [2018-11-14 18:50:10,040 INFO L273 TraceCheckUtils]: 74: Hoare triple {7318#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7318#true} is VALID [2018-11-14 18:50:10,040 INFO L273 TraceCheckUtils]: 75: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:50:10,040 INFO L273 TraceCheckUtils]: 76: Hoare triple {7318#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {7318#true} is VALID [2018-11-14 18:50:10,040 INFO L273 TraceCheckUtils]: 77: Hoare triple {7318#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7318#true} is VALID [2018-11-14 18:50:10,041 INFO L273 TraceCheckUtils]: 78: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:50:10,041 INFO L273 TraceCheckUtils]: 79: Hoare triple {7318#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {7318#true} is VALID [2018-11-14 18:50:10,041 INFO L273 TraceCheckUtils]: 80: Hoare triple {7318#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7318#true} is VALID [2018-11-14 18:50:10,041 INFO L273 TraceCheckUtils]: 81: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:50:10,041 INFO L273 TraceCheckUtils]: 82: Hoare triple {7318#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {7318#true} is VALID [2018-11-14 18:50:10,041 INFO L273 TraceCheckUtils]: 83: Hoare triple {7318#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7318#true} is VALID [2018-11-14 18:50:10,041 INFO L273 TraceCheckUtils]: 84: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:50:10,041 INFO L273 TraceCheckUtils]: 85: Hoare triple {7318#true} assume !(~i~0 < 20); {7318#true} is VALID [2018-11-14 18:50:10,041 INFO L273 TraceCheckUtils]: 86: Hoare triple {7318#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {7318#true} is VALID [2018-11-14 18:50:10,042 INFO L273 TraceCheckUtils]: 87: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:50:10,042 INFO L268 TraceCheckUtils]: 88: Hoare quadruple {7318#true} {7319#false} #75#return; {7319#false} is VALID [2018-11-14 18:50:10,042 INFO L273 TraceCheckUtils]: 89: Hoare triple {7319#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {7319#false} is VALID [2018-11-14 18:50:10,042 INFO L273 TraceCheckUtils]: 90: Hoare triple {7319#false} assume true; {7319#false} is VALID [2018-11-14 18:50:10,042 INFO L273 TraceCheckUtils]: 91: Hoare triple {7319#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {7319#false} is VALID [2018-11-14 18:50:10,042 INFO L273 TraceCheckUtils]: 92: Hoare triple {7319#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {7319#false} is VALID [2018-11-14 18:50:10,042 INFO L273 TraceCheckUtils]: 93: Hoare triple {7319#false} assume true; {7319#false} is VALID [2018-11-14 18:50:10,042 INFO L273 TraceCheckUtils]: 94: Hoare triple {7319#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {7319#false} is VALID [2018-11-14 18:50:10,043 INFO L273 TraceCheckUtils]: 95: Hoare triple {7319#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {7319#false} is VALID [2018-11-14 18:50:10,043 INFO L273 TraceCheckUtils]: 96: Hoare triple {7319#false} assume true; {7319#false} is VALID [2018-11-14 18:50:10,043 INFO L273 TraceCheckUtils]: 97: Hoare triple {7319#false} assume !(~i~2 < 19); {7319#false} is VALID [2018-11-14 18:50:10,043 INFO L273 TraceCheckUtils]: 98: Hoare triple {7319#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {7319#false} is VALID [2018-11-14 18:50:10,043 INFO L256 TraceCheckUtils]: 99: Hoare triple {7319#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {7318#true} is VALID [2018-11-14 18:50:10,043 INFO L273 TraceCheckUtils]: 100: Hoare triple {7318#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {7318#true} is VALID [2018-11-14 18:50:10,043 INFO L273 TraceCheckUtils]: 101: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:50:10,043 INFO L273 TraceCheckUtils]: 102: Hoare triple {7318#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {7318#true} is VALID [2018-11-14 18:50:10,043 INFO L273 TraceCheckUtils]: 103: Hoare triple {7318#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7318#true} is VALID [2018-11-14 18:50:10,044 INFO L273 TraceCheckUtils]: 104: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:50:10,044 INFO L273 TraceCheckUtils]: 105: Hoare triple {7318#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {7318#true} is VALID [2018-11-14 18:50:10,044 INFO L273 TraceCheckUtils]: 106: Hoare triple {7318#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7318#true} is VALID [2018-11-14 18:50:10,044 INFO L273 TraceCheckUtils]: 107: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:50:10,044 INFO L273 TraceCheckUtils]: 108: Hoare triple {7318#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {7318#true} is VALID [2018-11-14 18:50:10,044 INFO L273 TraceCheckUtils]: 109: Hoare triple {7318#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7318#true} is VALID [2018-11-14 18:50:10,044 INFO L273 TraceCheckUtils]: 110: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:50:10,044 INFO L273 TraceCheckUtils]: 111: Hoare triple {7318#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {7318#true} is VALID [2018-11-14 18:50:10,045 INFO L273 TraceCheckUtils]: 112: Hoare triple {7318#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7318#true} is VALID [2018-11-14 18:50:10,045 INFO L273 TraceCheckUtils]: 113: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:50:10,045 INFO L273 TraceCheckUtils]: 114: Hoare triple {7318#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {7318#true} is VALID [2018-11-14 18:50:10,045 INFO L273 TraceCheckUtils]: 115: Hoare triple {7318#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7318#true} is VALID [2018-11-14 18:50:10,045 INFO L273 TraceCheckUtils]: 116: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:50:10,045 INFO L273 TraceCheckUtils]: 117: Hoare triple {7318#true} assume !(~i~0 < 20); {7318#true} is VALID [2018-11-14 18:50:10,045 INFO L273 TraceCheckUtils]: 118: Hoare triple {7318#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {7318#true} is VALID [2018-11-14 18:50:10,045 INFO L273 TraceCheckUtils]: 119: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:50:10,045 INFO L268 TraceCheckUtils]: 120: Hoare quadruple {7318#true} {7319#false} #77#return; {7319#false} is VALID [2018-11-14 18:50:10,046 INFO L273 TraceCheckUtils]: 121: Hoare triple {7319#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {7319#false} is VALID [2018-11-14 18:50:10,046 INFO L273 TraceCheckUtils]: 122: Hoare triple {7319#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {7319#false} is VALID [2018-11-14 18:50:10,046 INFO L273 TraceCheckUtils]: 123: Hoare triple {7319#false} assume !false; {7319#false} is VALID [2018-11-14 18:50:10,059 INFO L134 CoverageAnalysis]: Checked inductivity of 652 backedges. 0 proven. 222 refuted. 0 times theorem prover too weak. 430 trivial. 0 not checked. [2018-11-14 18:50:10,059 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:50:10,059 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 14 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 14 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:50:10,068 INFO L103 rtionOrderModulation]: Keeping assertion order MIX_INSIDE_OUTSIDE [2018-11-14 18:50:10,157 INFO L249 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2018-11-14 18:50:10,157 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 18:50:10,181 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:50:10,183 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:50:10,328 INFO L256 TraceCheckUtils]: 0: Hoare triple {7318#true} call ULTIMATE.init(); {7318#true} is VALID [2018-11-14 18:50:10,328 INFO L273 TraceCheckUtils]: 1: Hoare triple {7318#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {7318#true} is VALID [2018-11-14 18:50:10,329 INFO L273 TraceCheckUtils]: 2: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:50:10,329 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {7318#true} {7318#true} #69#return; {7318#true} is VALID [2018-11-14 18:50:10,329 INFO L256 TraceCheckUtils]: 4: Hoare triple {7318#true} call #t~ret12 := main(); {7318#true} is VALID [2018-11-14 18:50:10,329 INFO L273 TraceCheckUtils]: 5: Hoare triple {7318#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {7318#true} is VALID [2018-11-14 18:50:10,330 INFO L273 TraceCheckUtils]: 6: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:50:10,330 INFO L273 TraceCheckUtils]: 7: Hoare triple {7318#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {7318#true} is VALID [2018-11-14 18:50:10,330 INFO L273 TraceCheckUtils]: 8: Hoare triple {7318#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {7318#true} is VALID [2018-11-14 18:50:10,330 INFO L273 TraceCheckUtils]: 9: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:50:10,330 INFO L273 TraceCheckUtils]: 10: Hoare triple {7318#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {7318#true} is VALID [2018-11-14 18:50:10,330 INFO L273 TraceCheckUtils]: 11: Hoare triple {7318#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {7318#true} is VALID [2018-11-14 18:50:10,330 INFO L273 TraceCheckUtils]: 12: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:50:10,331 INFO L273 TraceCheckUtils]: 13: Hoare triple {7318#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {7318#true} is VALID [2018-11-14 18:50:10,331 INFO L273 TraceCheckUtils]: 14: Hoare triple {7318#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {7318#true} is VALID [2018-11-14 18:50:10,331 INFO L273 TraceCheckUtils]: 15: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:50:10,331 INFO L273 TraceCheckUtils]: 16: Hoare triple {7318#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {7318#true} is VALID [2018-11-14 18:50:10,331 INFO L273 TraceCheckUtils]: 17: Hoare triple {7318#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {7318#true} is VALID [2018-11-14 18:50:10,331 INFO L273 TraceCheckUtils]: 18: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:50:10,331 INFO L273 TraceCheckUtils]: 19: Hoare triple {7318#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {7318#true} is VALID [2018-11-14 18:50:10,332 INFO L273 TraceCheckUtils]: 20: Hoare triple {7318#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {7318#true} is VALID [2018-11-14 18:50:10,332 INFO L273 TraceCheckUtils]: 21: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:50:10,332 INFO L273 TraceCheckUtils]: 22: Hoare triple {7318#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {7318#true} is VALID [2018-11-14 18:50:10,332 INFO L273 TraceCheckUtils]: 23: Hoare triple {7318#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {7318#true} is VALID [2018-11-14 18:50:10,332 INFO L273 TraceCheckUtils]: 24: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:50:10,332 INFO L273 TraceCheckUtils]: 25: Hoare triple {7318#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {7318#true} is VALID [2018-11-14 18:50:10,332 INFO L273 TraceCheckUtils]: 26: Hoare triple {7318#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {7318#true} is VALID [2018-11-14 18:50:10,333 INFO L273 TraceCheckUtils]: 27: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:50:10,333 INFO L273 TraceCheckUtils]: 28: Hoare triple {7318#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {7318#true} is VALID [2018-11-14 18:50:10,333 INFO L273 TraceCheckUtils]: 29: Hoare triple {7318#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {7318#true} is VALID [2018-11-14 18:50:10,333 INFO L273 TraceCheckUtils]: 30: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:50:10,333 INFO L273 TraceCheckUtils]: 31: Hoare triple {7318#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {7318#true} is VALID [2018-11-14 18:50:10,333 INFO L273 TraceCheckUtils]: 32: Hoare triple {7318#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {7318#true} is VALID [2018-11-14 18:50:10,334 INFO L273 TraceCheckUtils]: 33: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:50:10,334 INFO L273 TraceCheckUtils]: 34: Hoare triple {7318#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {7318#true} is VALID [2018-11-14 18:50:10,334 INFO L273 TraceCheckUtils]: 35: Hoare triple {7318#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {7318#true} is VALID [2018-11-14 18:50:10,334 INFO L273 TraceCheckUtils]: 36: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:50:10,334 INFO L273 TraceCheckUtils]: 37: Hoare triple {7318#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {7318#true} is VALID [2018-11-14 18:50:10,334 INFO L273 TraceCheckUtils]: 38: Hoare triple {7318#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {7318#true} is VALID [2018-11-14 18:50:10,334 INFO L273 TraceCheckUtils]: 39: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:50:10,335 INFO L273 TraceCheckUtils]: 40: Hoare triple {7318#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {7318#true} is VALID [2018-11-14 18:50:10,335 INFO L273 TraceCheckUtils]: 41: Hoare triple {7318#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {7318#true} is VALID [2018-11-14 18:50:10,335 INFO L273 TraceCheckUtils]: 42: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:50:10,335 INFO L273 TraceCheckUtils]: 43: Hoare triple {7318#true} assume !(~i~1 < 20); {7318#true} is VALID [2018-11-14 18:50:10,335 INFO L256 TraceCheckUtils]: 44: Hoare triple {7318#true} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {7318#true} is VALID [2018-11-14 18:50:10,335 INFO L273 TraceCheckUtils]: 45: Hoare triple {7318#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {7318#true} is VALID [2018-11-14 18:50:10,335 INFO L273 TraceCheckUtils]: 46: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:50:10,336 INFO L273 TraceCheckUtils]: 47: Hoare triple {7318#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {7318#true} is VALID [2018-11-14 18:50:10,336 INFO L273 TraceCheckUtils]: 48: Hoare triple {7318#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7318#true} is VALID [2018-11-14 18:50:10,336 INFO L273 TraceCheckUtils]: 49: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:50:10,336 INFO L273 TraceCheckUtils]: 50: Hoare triple {7318#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {7318#true} is VALID [2018-11-14 18:50:10,336 INFO L273 TraceCheckUtils]: 51: Hoare triple {7318#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7318#true} is VALID [2018-11-14 18:50:10,336 INFO L273 TraceCheckUtils]: 52: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:50:10,337 INFO L273 TraceCheckUtils]: 53: Hoare triple {7318#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {7318#true} is VALID [2018-11-14 18:50:10,337 INFO L273 TraceCheckUtils]: 54: Hoare triple {7318#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7318#true} is VALID [2018-11-14 18:50:10,337 INFO L273 TraceCheckUtils]: 55: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:50:10,337 INFO L273 TraceCheckUtils]: 56: Hoare triple {7318#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {7318#true} is VALID [2018-11-14 18:50:10,337 INFO L273 TraceCheckUtils]: 57: Hoare triple {7318#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7318#true} is VALID [2018-11-14 18:50:10,337 INFO L273 TraceCheckUtils]: 58: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:50:10,337 INFO L273 TraceCheckUtils]: 59: Hoare triple {7318#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {7318#true} is VALID [2018-11-14 18:50:10,338 INFO L273 TraceCheckUtils]: 60: Hoare triple {7318#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7318#true} is VALID [2018-11-14 18:50:10,338 INFO L273 TraceCheckUtils]: 61: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:50:10,338 INFO L273 TraceCheckUtils]: 62: Hoare triple {7318#true} assume !(~i~0 < 20); {7318#true} is VALID [2018-11-14 18:50:10,338 INFO L273 TraceCheckUtils]: 63: Hoare triple {7318#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {7318#true} is VALID [2018-11-14 18:50:10,338 INFO L273 TraceCheckUtils]: 64: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:50:10,338 INFO L268 TraceCheckUtils]: 65: Hoare quadruple {7318#true} {7318#true} #73#return; {7318#true} is VALID [2018-11-14 18:50:10,338 INFO L273 TraceCheckUtils]: 66: Hoare triple {7318#true} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {7318#true} is VALID [2018-11-14 18:50:10,339 INFO L256 TraceCheckUtils]: 67: Hoare triple {7318#true} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {7318#true} is VALID [2018-11-14 18:50:10,339 INFO L273 TraceCheckUtils]: 68: Hoare triple {7318#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {7318#true} is VALID [2018-11-14 18:50:10,339 INFO L273 TraceCheckUtils]: 69: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:50:10,339 INFO L273 TraceCheckUtils]: 70: Hoare triple {7318#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {7318#true} is VALID [2018-11-14 18:50:10,339 INFO L273 TraceCheckUtils]: 71: Hoare triple {7318#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7318#true} is VALID [2018-11-14 18:50:10,339 INFO L273 TraceCheckUtils]: 72: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:50:10,339 INFO L273 TraceCheckUtils]: 73: Hoare triple {7318#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {7318#true} is VALID [2018-11-14 18:50:10,340 INFO L273 TraceCheckUtils]: 74: Hoare triple {7318#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7318#true} is VALID [2018-11-14 18:50:10,340 INFO L273 TraceCheckUtils]: 75: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:50:10,340 INFO L273 TraceCheckUtils]: 76: Hoare triple {7318#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {7318#true} is VALID [2018-11-14 18:50:10,340 INFO L273 TraceCheckUtils]: 77: Hoare triple {7318#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7318#true} is VALID [2018-11-14 18:50:10,340 INFO L273 TraceCheckUtils]: 78: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:50:10,340 INFO L273 TraceCheckUtils]: 79: Hoare triple {7318#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {7318#true} is VALID [2018-11-14 18:50:10,341 INFO L273 TraceCheckUtils]: 80: Hoare triple {7318#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7318#true} is VALID [2018-11-14 18:50:10,341 INFO L273 TraceCheckUtils]: 81: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:50:10,341 INFO L273 TraceCheckUtils]: 82: Hoare triple {7318#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {7318#true} is VALID [2018-11-14 18:50:10,341 INFO L273 TraceCheckUtils]: 83: Hoare triple {7318#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7318#true} is VALID [2018-11-14 18:50:10,341 INFO L273 TraceCheckUtils]: 84: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:50:10,341 INFO L273 TraceCheckUtils]: 85: Hoare triple {7318#true} assume !(~i~0 < 20); {7318#true} is VALID [2018-11-14 18:50:10,341 INFO L273 TraceCheckUtils]: 86: Hoare triple {7318#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {7318#true} is VALID [2018-11-14 18:50:10,342 INFO L273 TraceCheckUtils]: 87: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:50:10,342 INFO L268 TraceCheckUtils]: 88: Hoare quadruple {7318#true} {7318#true} #75#return; {7318#true} is VALID [2018-11-14 18:50:10,342 INFO L273 TraceCheckUtils]: 89: Hoare triple {7318#true} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {7603#(<= main_~i~2 0)} is VALID [2018-11-14 18:50:10,343 INFO L273 TraceCheckUtils]: 90: Hoare triple {7603#(<= main_~i~2 0)} assume true; {7603#(<= main_~i~2 0)} is VALID [2018-11-14 18:50:10,343 INFO L273 TraceCheckUtils]: 91: Hoare triple {7603#(<= main_~i~2 0)} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {7603#(<= main_~i~2 0)} is VALID [2018-11-14 18:50:10,344 INFO L273 TraceCheckUtils]: 92: Hoare triple {7603#(<= main_~i~2 0)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {7613#(<= main_~i~2 1)} is VALID [2018-11-14 18:50:10,344 INFO L273 TraceCheckUtils]: 93: Hoare triple {7613#(<= main_~i~2 1)} assume true; {7613#(<= main_~i~2 1)} is VALID [2018-11-14 18:50:10,344 INFO L273 TraceCheckUtils]: 94: Hoare triple {7613#(<= main_~i~2 1)} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {7613#(<= main_~i~2 1)} is VALID [2018-11-14 18:50:10,345 INFO L273 TraceCheckUtils]: 95: Hoare triple {7613#(<= main_~i~2 1)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {7623#(<= main_~i~2 2)} is VALID [2018-11-14 18:50:10,346 INFO L273 TraceCheckUtils]: 96: Hoare triple {7623#(<= main_~i~2 2)} assume true; {7623#(<= main_~i~2 2)} is VALID [2018-11-14 18:50:10,346 INFO L273 TraceCheckUtils]: 97: Hoare triple {7623#(<= main_~i~2 2)} assume !(~i~2 < 19); {7319#false} is VALID [2018-11-14 18:50:10,347 INFO L273 TraceCheckUtils]: 98: Hoare triple {7319#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {7319#false} is VALID [2018-11-14 18:50:10,347 INFO L256 TraceCheckUtils]: 99: Hoare triple {7319#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {7319#false} is VALID [2018-11-14 18:50:10,347 INFO L273 TraceCheckUtils]: 100: Hoare triple {7319#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {7319#false} is VALID [2018-11-14 18:50:10,348 INFO L273 TraceCheckUtils]: 101: Hoare triple {7319#false} assume true; {7319#false} is VALID [2018-11-14 18:50:10,348 INFO L273 TraceCheckUtils]: 102: Hoare triple {7319#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {7319#false} is VALID [2018-11-14 18:50:10,348 INFO L273 TraceCheckUtils]: 103: Hoare triple {7319#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7319#false} is VALID [2018-11-14 18:50:10,348 INFO L273 TraceCheckUtils]: 104: Hoare triple {7319#false} assume true; {7319#false} is VALID [2018-11-14 18:50:10,349 INFO L273 TraceCheckUtils]: 105: Hoare triple {7319#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {7319#false} is VALID [2018-11-14 18:50:10,349 INFO L273 TraceCheckUtils]: 106: Hoare triple {7319#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7319#false} is VALID [2018-11-14 18:50:10,349 INFO L273 TraceCheckUtils]: 107: Hoare triple {7319#false} assume true; {7319#false} is VALID [2018-11-14 18:50:10,349 INFO L273 TraceCheckUtils]: 108: Hoare triple {7319#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {7319#false} is VALID [2018-11-14 18:50:10,349 INFO L273 TraceCheckUtils]: 109: Hoare triple {7319#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7319#false} is VALID [2018-11-14 18:50:10,350 INFO L273 TraceCheckUtils]: 110: Hoare triple {7319#false} assume true; {7319#false} is VALID [2018-11-14 18:50:10,350 INFO L273 TraceCheckUtils]: 111: Hoare triple {7319#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {7319#false} is VALID [2018-11-14 18:50:10,350 INFO L273 TraceCheckUtils]: 112: Hoare triple {7319#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7319#false} is VALID [2018-11-14 18:50:10,350 INFO L273 TraceCheckUtils]: 113: Hoare triple {7319#false} assume true; {7319#false} is VALID [2018-11-14 18:50:10,350 INFO L273 TraceCheckUtils]: 114: Hoare triple {7319#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {7319#false} is VALID [2018-11-14 18:50:10,350 INFO L273 TraceCheckUtils]: 115: Hoare triple {7319#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7319#false} is VALID [2018-11-14 18:50:10,351 INFO L273 TraceCheckUtils]: 116: Hoare triple {7319#false} assume true; {7319#false} is VALID [2018-11-14 18:50:10,351 INFO L273 TraceCheckUtils]: 117: Hoare triple {7319#false} assume !(~i~0 < 20); {7319#false} is VALID [2018-11-14 18:50:10,351 INFO L273 TraceCheckUtils]: 118: Hoare triple {7319#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {7319#false} is VALID [2018-11-14 18:50:10,351 INFO L273 TraceCheckUtils]: 119: Hoare triple {7319#false} assume true; {7319#false} is VALID [2018-11-14 18:50:10,351 INFO L268 TraceCheckUtils]: 120: Hoare quadruple {7319#false} {7319#false} #77#return; {7319#false} is VALID [2018-11-14 18:50:10,351 INFO L273 TraceCheckUtils]: 121: Hoare triple {7319#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {7319#false} is VALID [2018-11-14 18:50:10,352 INFO L273 TraceCheckUtils]: 122: Hoare triple {7319#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {7319#false} is VALID [2018-11-14 18:50:10,352 INFO L273 TraceCheckUtils]: 123: Hoare triple {7319#false} assume !false; {7319#false} is VALID [2018-11-14 18:50:10,364 INFO L134 CoverageAnalysis]: Checked inductivity of 652 backedges. 202 proven. 7 refuted. 0 times theorem prover too weak. 443 trivial. 0 not checked. [2018-11-14 18:50:10,385 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:50:10,385 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 5] total 18 [2018-11-14 18:50:10,386 INFO L78 Accepts]: Start accepts. Automaton has 18 states. Word has length 124 [2018-11-14 18:50:10,386 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:50:10,386 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 18 states. [2018-11-14 18:50:10,489 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 95 edges. 95 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:50:10,489 INFO L459 AbstractCegarLoop]: Interpolant automaton has 18 states [2018-11-14 18:50:10,489 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2018-11-14 18:50:10,490 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=114, Invalid=192, Unknown=0, NotChecked=0, Total=306 [2018-11-14 18:50:10,490 INFO L87 Difference]: Start difference. First operand 83 states and 87 transitions. Second operand 18 states. [2018-11-14 18:50:11,009 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:11,009 INFO L93 Difference]: Finished difference Result 130 states and 139 transitions. [2018-11-14 18:50:11,009 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2018-11-14 18:50:11,009 INFO L78 Accepts]: Start accepts. Automaton has 18 states. Word has length 124 [2018-11-14 18:50:11,010 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:50:11,010 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 18 states. [2018-11-14 18:50:11,011 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 106 transitions. [2018-11-14 18:50:11,012 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 18 states. [2018-11-14 18:50:11,013 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 106 transitions. [2018-11-14 18:50:11,013 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 18 states and 106 transitions. [2018-11-14 18:50:11,106 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 106 edges. 106 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:50:11,108 INFO L225 Difference]: With dead ends: 130 [2018-11-14 18:50:11,109 INFO L226 Difference]: Without dead ends: 91 [2018-11-14 18:50:11,110 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 138 GetRequests, 122 SyntacticMatches, 0 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 36 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=114, Invalid=192, Unknown=0, NotChecked=0, Total=306 [2018-11-14 18:50:11,110 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 91 states. [2018-11-14 18:50:11,134 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 91 to 89. [2018-11-14 18:50:11,134 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:50:11,134 INFO L82 GeneralOperation]: Start isEquivalent. First operand 91 states. Second operand 89 states. [2018-11-14 18:50:11,134 INFO L74 IsIncluded]: Start isIncluded. First operand 91 states. Second operand 89 states. [2018-11-14 18:50:11,134 INFO L87 Difference]: Start difference. First operand 91 states. Second operand 89 states. [2018-11-14 18:50:11,136 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:11,137 INFO L93 Difference]: Finished difference Result 91 states and 95 transitions. [2018-11-14 18:50:11,137 INFO L276 IsEmpty]: Start isEmpty. Operand 91 states and 95 transitions. [2018-11-14 18:50:11,137 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:50:11,137 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:50:11,137 INFO L74 IsIncluded]: Start isIncluded. First operand 89 states. Second operand 91 states. [2018-11-14 18:50:11,138 INFO L87 Difference]: Start difference. First operand 89 states. Second operand 91 states. [2018-11-14 18:50:11,140 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:11,140 INFO L93 Difference]: Finished difference Result 91 states and 95 transitions. [2018-11-14 18:50:11,140 INFO L276 IsEmpty]: Start isEmpty. Operand 91 states and 95 transitions. [2018-11-14 18:50:11,140 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:50:11,140 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:50:11,141 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:50:11,141 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:50:11,141 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 89 states. [2018-11-14 18:50:11,143 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 89 states to 89 states and 93 transitions. [2018-11-14 18:50:11,143 INFO L78 Accepts]: Start accepts. Automaton has 89 states and 93 transitions. Word has length 124 [2018-11-14 18:50:11,143 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:50:11,143 INFO L480 AbstractCegarLoop]: Abstraction has 89 states and 93 transitions. [2018-11-14 18:50:11,143 INFO L481 AbstractCegarLoop]: Interpolant automaton has 18 states. [2018-11-14 18:50:11,143 INFO L276 IsEmpty]: Start isEmpty. Operand 89 states and 93 transitions. [2018-11-14 18:50:11,145 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 131 [2018-11-14 18:50:11,145 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:50:11,145 INFO L375 BasicCegarLoop]: trace histogram [18, 15, 15, 14, 13, 13, 4, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:50:11,145 INFO L423 AbstractCegarLoop]: === Iteration 17 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:50:11,145 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:50:11,146 INFO L82 PathProgramCache]: Analyzing trace with hash 1755612877, now seen corresponding path program 13 times [2018-11-14 18:50:11,146 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:50:11,146 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:50:11,146 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:50:11,147 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 18:50:11,147 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:50:11,165 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:50:11,392 INFO L256 TraceCheckUtils]: 0: Hoare triple {8185#true} call ULTIMATE.init(); {8185#true} is VALID [2018-11-14 18:50:11,393 INFO L273 TraceCheckUtils]: 1: Hoare triple {8185#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {8185#true} is VALID [2018-11-14 18:50:11,393 INFO L273 TraceCheckUtils]: 2: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 18:50:11,393 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {8185#true} {8185#true} #69#return; {8185#true} is VALID [2018-11-14 18:50:11,393 INFO L256 TraceCheckUtils]: 4: Hoare triple {8185#true} call #t~ret12 := main(); {8185#true} is VALID [2018-11-14 18:50:11,393 INFO L273 TraceCheckUtils]: 5: Hoare triple {8185#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {8187#(= main_~i~1 0)} is VALID [2018-11-14 18:50:11,394 INFO L273 TraceCheckUtils]: 6: Hoare triple {8187#(= main_~i~1 0)} assume true; {8187#(= main_~i~1 0)} is VALID [2018-11-14 18:50:11,394 INFO L273 TraceCheckUtils]: 7: Hoare triple {8187#(= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8187#(= main_~i~1 0)} is VALID [2018-11-14 18:50:11,394 INFO L273 TraceCheckUtils]: 8: Hoare triple {8187#(= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8188#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:11,395 INFO L273 TraceCheckUtils]: 9: Hoare triple {8188#(<= main_~i~1 1)} assume true; {8188#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:11,395 INFO L273 TraceCheckUtils]: 10: Hoare triple {8188#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8188#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:11,396 INFO L273 TraceCheckUtils]: 11: Hoare triple {8188#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8189#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:11,397 INFO L273 TraceCheckUtils]: 12: Hoare triple {8189#(<= main_~i~1 2)} assume true; {8189#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:11,397 INFO L273 TraceCheckUtils]: 13: Hoare triple {8189#(<= main_~i~1 2)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8189#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:11,398 INFO L273 TraceCheckUtils]: 14: Hoare triple {8189#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8190#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:11,398 INFO L273 TraceCheckUtils]: 15: Hoare triple {8190#(<= main_~i~1 3)} assume true; {8190#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:11,399 INFO L273 TraceCheckUtils]: 16: Hoare triple {8190#(<= main_~i~1 3)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8190#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:11,400 INFO L273 TraceCheckUtils]: 17: Hoare triple {8190#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8191#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:11,400 INFO L273 TraceCheckUtils]: 18: Hoare triple {8191#(<= main_~i~1 4)} assume true; {8191#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:11,401 INFO L273 TraceCheckUtils]: 19: Hoare triple {8191#(<= main_~i~1 4)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8191#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:11,404 INFO L273 TraceCheckUtils]: 20: Hoare triple {8191#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8192#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:11,405 INFO L273 TraceCheckUtils]: 21: Hoare triple {8192#(<= main_~i~1 5)} assume true; {8192#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:11,405 INFO L273 TraceCheckUtils]: 22: Hoare triple {8192#(<= main_~i~1 5)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8192#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:11,405 INFO L273 TraceCheckUtils]: 23: Hoare triple {8192#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8193#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:11,406 INFO L273 TraceCheckUtils]: 24: Hoare triple {8193#(<= main_~i~1 6)} assume true; {8193#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:11,406 INFO L273 TraceCheckUtils]: 25: Hoare triple {8193#(<= main_~i~1 6)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8193#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:11,406 INFO L273 TraceCheckUtils]: 26: Hoare triple {8193#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8194#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:11,407 INFO L273 TraceCheckUtils]: 27: Hoare triple {8194#(<= main_~i~1 7)} assume true; {8194#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:11,407 INFO L273 TraceCheckUtils]: 28: Hoare triple {8194#(<= main_~i~1 7)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8194#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:11,408 INFO L273 TraceCheckUtils]: 29: Hoare triple {8194#(<= main_~i~1 7)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8195#(<= main_~i~1 8)} is VALID [2018-11-14 18:50:11,409 INFO L273 TraceCheckUtils]: 30: Hoare triple {8195#(<= main_~i~1 8)} assume true; {8195#(<= main_~i~1 8)} is VALID [2018-11-14 18:50:11,409 INFO L273 TraceCheckUtils]: 31: Hoare triple {8195#(<= main_~i~1 8)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8195#(<= main_~i~1 8)} is VALID [2018-11-14 18:50:11,410 INFO L273 TraceCheckUtils]: 32: Hoare triple {8195#(<= main_~i~1 8)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8196#(<= main_~i~1 9)} is VALID [2018-11-14 18:50:11,410 INFO L273 TraceCheckUtils]: 33: Hoare triple {8196#(<= main_~i~1 9)} assume true; {8196#(<= main_~i~1 9)} is VALID [2018-11-14 18:50:11,411 INFO L273 TraceCheckUtils]: 34: Hoare triple {8196#(<= main_~i~1 9)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8196#(<= main_~i~1 9)} is VALID [2018-11-14 18:50:11,411 INFO L273 TraceCheckUtils]: 35: Hoare triple {8196#(<= main_~i~1 9)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8197#(<= main_~i~1 10)} is VALID [2018-11-14 18:50:11,412 INFO L273 TraceCheckUtils]: 36: Hoare triple {8197#(<= main_~i~1 10)} assume true; {8197#(<= main_~i~1 10)} is VALID [2018-11-14 18:50:11,412 INFO L273 TraceCheckUtils]: 37: Hoare triple {8197#(<= main_~i~1 10)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8197#(<= main_~i~1 10)} is VALID [2018-11-14 18:50:11,413 INFO L273 TraceCheckUtils]: 38: Hoare triple {8197#(<= main_~i~1 10)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8198#(<= main_~i~1 11)} is VALID [2018-11-14 18:50:11,414 INFO L273 TraceCheckUtils]: 39: Hoare triple {8198#(<= main_~i~1 11)} assume true; {8198#(<= main_~i~1 11)} is VALID [2018-11-14 18:50:11,414 INFO L273 TraceCheckUtils]: 40: Hoare triple {8198#(<= main_~i~1 11)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8198#(<= main_~i~1 11)} is VALID [2018-11-14 18:50:11,415 INFO L273 TraceCheckUtils]: 41: Hoare triple {8198#(<= main_~i~1 11)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8199#(<= main_~i~1 12)} is VALID [2018-11-14 18:50:11,415 INFO L273 TraceCheckUtils]: 42: Hoare triple {8199#(<= main_~i~1 12)} assume true; {8199#(<= main_~i~1 12)} is VALID [2018-11-14 18:50:11,416 INFO L273 TraceCheckUtils]: 43: Hoare triple {8199#(<= main_~i~1 12)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8199#(<= main_~i~1 12)} is VALID [2018-11-14 18:50:11,417 INFO L273 TraceCheckUtils]: 44: Hoare triple {8199#(<= main_~i~1 12)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8200#(<= main_~i~1 13)} is VALID [2018-11-14 18:50:11,417 INFO L273 TraceCheckUtils]: 45: Hoare triple {8200#(<= main_~i~1 13)} assume true; {8200#(<= main_~i~1 13)} is VALID [2018-11-14 18:50:11,418 INFO L273 TraceCheckUtils]: 46: Hoare triple {8200#(<= main_~i~1 13)} assume !(~i~1 < 20); {8186#false} is VALID [2018-11-14 18:50:11,418 INFO L256 TraceCheckUtils]: 47: Hoare triple {8186#false} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {8185#true} is VALID [2018-11-14 18:50:11,418 INFO L273 TraceCheckUtils]: 48: Hoare triple {8185#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {8185#true} is VALID [2018-11-14 18:50:11,418 INFO L273 TraceCheckUtils]: 49: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 18:50:11,419 INFO L273 TraceCheckUtils]: 50: Hoare triple {8185#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {8185#true} is VALID [2018-11-14 18:50:11,419 INFO L273 TraceCheckUtils]: 51: Hoare triple {8185#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8185#true} is VALID [2018-11-14 18:50:11,419 INFO L273 TraceCheckUtils]: 52: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 18:50:11,419 INFO L273 TraceCheckUtils]: 53: Hoare triple {8185#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {8185#true} is VALID [2018-11-14 18:50:11,419 INFO L273 TraceCheckUtils]: 54: Hoare triple {8185#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8185#true} is VALID [2018-11-14 18:50:11,419 INFO L273 TraceCheckUtils]: 55: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 18:50:11,420 INFO L273 TraceCheckUtils]: 56: Hoare triple {8185#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {8185#true} is VALID [2018-11-14 18:50:11,420 INFO L273 TraceCheckUtils]: 57: Hoare triple {8185#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8185#true} is VALID [2018-11-14 18:50:11,420 INFO L273 TraceCheckUtils]: 58: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 18:50:11,420 INFO L273 TraceCheckUtils]: 59: Hoare triple {8185#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {8185#true} is VALID [2018-11-14 18:50:11,420 INFO L273 TraceCheckUtils]: 60: Hoare triple {8185#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8185#true} is VALID [2018-11-14 18:50:11,420 INFO L273 TraceCheckUtils]: 61: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 18:50:11,420 INFO L273 TraceCheckUtils]: 62: Hoare triple {8185#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {8185#true} is VALID [2018-11-14 18:50:11,420 INFO L273 TraceCheckUtils]: 63: Hoare triple {8185#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8185#true} is VALID [2018-11-14 18:50:11,421 INFO L273 TraceCheckUtils]: 64: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 18:50:11,421 INFO L273 TraceCheckUtils]: 65: Hoare triple {8185#true} assume !(~i~0 < 20); {8185#true} is VALID [2018-11-14 18:50:11,421 INFO L273 TraceCheckUtils]: 66: Hoare triple {8185#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {8185#true} is VALID [2018-11-14 18:50:11,421 INFO L273 TraceCheckUtils]: 67: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 18:50:11,421 INFO L268 TraceCheckUtils]: 68: Hoare quadruple {8185#true} {8186#false} #73#return; {8186#false} is VALID [2018-11-14 18:50:11,421 INFO L273 TraceCheckUtils]: 69: Hoare triple {8186#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {8186#false} is VALID [2018-11-14 18:50:11,421 INFO L256 TraceCheckUtils]: 70: Hoare triple {8186#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {8185#true} is VALID [2018-11-14 18:50:11,421 INFO L273 TraceCheckUtils]: 71: Hoare triple {8185#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {8185#true} is VALID [2018-11-14 18:50:11,422 INFO L273 TraceCheckUtils]: 72: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 18:50:11,422 INFO L273 TraceCheckUtils]: 73: Hoare triple {8185#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {8185#true} is VALID [2018-11-14 18:50:11,422 INFO L273 TraceCheckUtils]: 74: Hoare triple {8185#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8185#true} is VALID [2018-11-14 18:50:11,422 INFO L273 TraceCheckUtils]: 75: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 18:50:11,422 INFO L273 TraceCheckUtils]: 76: Hoare triple {8185#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {8185#true} is VALID [2018-11-14 18:50:11,422 INFO L273 TraceCheckUtils]: 77: Hoare triple {8185#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8185#true} is VALID [2018-11-14 18:50:11,422 INFO L273 TraceCheckUtils]: 78: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 18:50:11,422 INFO L273 TraceCheckUtils]: 79: Hoare triple {8185#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {8185#true} is VALID [2018-11-14 18:50:11,422 INFO L273 TraceCheckUtils]: 80: Hoare triple {8185#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8185#true} is VALID [2018-11-14 18:50:11,423 INFO L273 TraceCheckUtils]: 81: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 18:50:11,423 INFO L273 TraceCheckUtils]: 82: Hoare triple {8185#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {8185#true} is VALID [2018-11-14 18:50:11,423 INFO L273 TraceCheckUtils]: 83: Hoare triple {8185#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8185#true} is VALID [2018-11-14 18:50:11,423 INFO L273 TraceCheckUtils]: 84: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 18:50:11,423 INFO L273 TraceCheckUtils]: 85: Hoare triple {8185#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {8185#true} is VALID [2018-11-14 18:50:11,423 INFO L273 TraceCheckUtils]: 86: Hoare triple {8185#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8185#true} is VALID [2018-11-14 18:50:11,423 INFO L273 TraceCheckUtils]: 87: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 18:50:11,423 INFO L273 TraceCheckUtils]: 88: Hoare triple {8185#true} assume !(~i~0 < 20); {8185#true} is VALID [2018-11-14 18:50:11,423 INFO L273 TraceCheckUtils]: 89: Hoare triple {8185#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {8185#true} is VALID [2018-11-14 18:50:11,424 INFO L273 TraceCheckUtils]: 90: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 18:50:11,424 INFO L268 TraceCheckUtils]: 91: Hoare quadruple {8185#true} {8186#false} #75#return; {8186#false} is VALID [2018-11-14 18:50:11,424 INFO L273 TraceCheckUtils]: 92: Hoare triple {8186#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {8186#false} is VALID [2018-11-14 18:50:11,424 INFO L273 TraceCheckUtils]: 93: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:50:11,424 INFO L273 TraceCheckUtils]: 94: Hoare triple {8186#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {8186#false} is VALID [2018-11-14 18:50:11,424 INFO L273 TraceCheckUtils]: 95: Hoare triple {8186#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {8186#false} is VALID [2018-11-14 18:50:11,424 INFO L273 TraceCheckUtils]: 96: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:50:11,424 INFO L273 TraceCheckUtils]: 97: Hoare triple {8186#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {8186#false} is VALID [2018-11-14 18:50:11,425 INFO L273 TraceCheckUtils]: 98: Hoare triple {8186#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {8186#false} is VALID [2018-11-14 18:50:11,425 INFO L273 TraceCheckUtils]: 99: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:50:11,425 INFO L273 TraceCheckUtils]: 100: Hoare triple {8186#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {8186#false} is VALID [2018-11-14 18:50:11,425 INFO L273 TraceCheckUtils]: 101: Hoare triple {8186#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {8186#false} is VALID [2018-11-14 18:50:11,425 INFO L273 TraceCheckUtils]: 102: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:50:11,425 INFO L273 TraceCheckUtils]: 103: Hoare triple {8186#false} assume !(~i~2 < 19); {8186#false} is VALID [2018-11-14 18:50:11,425 INFO L273 TraceCheckUtils]: 104: Hoare triple {8186#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {8186#false} is VALID [2018-11-14 18:50:11,425 INFO L256 TraceCheckUtils]: 105: Hoare triple {8186#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {8185#true} is VALID [2018-11-14 18:50:11,425 INFO L273 TraceCheckUtils]: 106: Hoare triple {8185#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {8185#true} is VALID [2018-11-14 18:50:11,426 INFO L273 TraceCheckUtils]: 107: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 18:50:11,426 INFO L273 TraceCheckUtils]: 108: Hoare triple {8185#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {8185#true} is VALID [2018-11-14 18:50:11,426 INFO L273 TraceCheckUtils]: 109: Hoare triple {8185#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8185#true} is VALID [2018-11-14 18:50:11,426 INFO L273 TraceCheckUtils]: 110: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 18:50:11,426 INFO L273 TraceCheckUtils]: 111: Hoare triple {8185#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {8185#true} is VALID [2018-11-14 18:50:11,426 INFO L273 TraceCheckUtils]: 112: Hoare triple {8185#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8185#true} is VALID [2018-11-14 18:50:11,426 INFO L273 TraceCheckUtils]: 113: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 18:50:11,426 INFO L273 TraceCheckUtils]: 114: Hoare triple {8185#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {8185#true} is VALID [2018-11-14 18:50:11,427 INFO L273 TraceCheckUtils]: 115: Hoare triple {8185#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8185#true} is VALID [2018-11-14 18:50:11,427 INFO L273 TraceCheckUtils]: 116: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 18:50:11,427 INFO L273 TraceCheckUtils]: 117: Hoare triple {8185#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {8185#true} is VALID [2018-11-14 18:50:11,427 INFO L273 TraceCheckUtils]: 118: Hoare triple {8185#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8185#true} is VALID [2018-11-14 18:50:11,427 INFO L273 TraceCheckUtils]: 119: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 18:50:11,427 INFO L273 TraceCheckUtils]: 120: Hoare triple {8185#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {8185#true} is VALID [2018-11-14 18:50:11,427 INFO L273 TraceCheckUtils]: 121: Hoare triple {8185#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8185#true} is VALID [2018-11-14 18:50:11,427 INFO L273 TraceCheckUtils]: 122: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 18:50:11,427 INFO L273 TraceCheckUtils]: 123: Hoare triple {8185#true} assume !(~i~0 < 20); {8185#true} is VALID [2018-11-14 18:50:11,428 INFO L273 TraceCheckUtils]: 124: Hoare triple {8185#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {8185#true} is VALID [2018-11-14 18:50:11,428 INFO L273 TraceCheckUtils]: 125: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 18:50:11,428 INFO L268 TraceCheckUtils]: 126: Hoare quadruple {8185#true} {8186#false} #77#return; {8186#false} is VALID [2018-11-14 18:50:11,428 INFO L273 TraceCheckUtils]: 127: Hoare triple {8186#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {8186#false} is VALID [2018-11-14 18:50:11,428 INFO L273 TraceCheckUtils]: 128: Hoare triple {8186#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {8186#false} is VALID [2018-11-14 18:50:11,428 INFO L273 TraceCheckUtils]: 129: Hoare triple {8186#false} assume !false; {8186#false} is VALID [2018-11-14 18:50:11,435 INFO L134 CoverageAnalysis]: Checked inductivity of 698 backedges. 0 proven. 260 refuted. 0 times theorem prover too weak. 438 trivial. 0 not checked. [2018-11-14 18:50:11,436 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:50:11,436 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 15 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 15 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:50:11,445 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 18:50:11,494 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:50:11,530 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:50:11,531 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:50:11,778 INFO L256 TraceCheckUtils]: 0: Hoare triple {8185#true} call ULTIMATE.init(); {8185#true} is VALID [2018-11-14 18:50:11,778 INFO L273 TraceCheckUtils]: 1: Hoare triple {8185#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {8185#true} is VALID [2018-11-14 18:50:11,779 INFO L273 TraceCheckUtils]: 2: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 18:50:11,779 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {8185#true} {8185#true} #69#return; {8185#true} is VALID [2018-11-14 18:50:11,779 INFO L256 TraceCheckUtils]: 4: Hoare triple {8185#true} call #t~ret12 := main(); {8185#true} is VALID [2018-11-14 18:50:11,780 INFO L273 TraceCheckUtils]: 5: Hoare triple {8185#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {8219#(<= main_~i~1 0)} is VALID [2018-11-14 18:50:11,780 INFO L273 TraceCheckUtils]: 6: Hoare triple {8219#(<= main_~i~1 0)} assume true; {8219#(<= main_~i~1 0)} is VALID [2018-11-14 18:50:11,781 INFO L273 TraceCheckUtils]: 7: Hoare triple {8219#(<= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8219#(<= main_~i~1 0)} is VALID [2018-11-14 18:50:11,781 INFO L273 TraceCheckUtils]: 8: Hoare triple {8219#(<= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8188#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:11,781 INFO L273 TraceCheckUtils]: 9: Hoare triple {8188#(<= main_~i~1 1)} assume true; {8188#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:11,782 INFO L273 TraceCheckUtils]: 10: Hoare triple {8188#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8188#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:11,782 INFO L273 TraceCheckUtils]: 11: Hoare triple {8188#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8189#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:11,783 INFO L273 TraceCheckUtils]: 12: Hoare triple {8189#(<= main_~i~1 2)} assume true; {8189#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:11,783 INFO L273 TraceCheckUtils]: 13: Hoare triple {8189#(<= main_~i~1 2)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8189#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:11,784 INFO L273 TraceCheckUtils]: 14: Hoare triple {8189#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8190#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:11,784 INFO L273 TraceCheckUtils]: 15: Hoare triple {8190#(<= main_~i~1 3)} assume true; {8190#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:11,785 INFO L273 TraceCheckUtils]: 16: Hoare triple {8190#(<= main_~i~1 3)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8190#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:11,786 INFO L273 TraceCheckUtils]: 17: Hoare triple {8190#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8191#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:11,786 INFO L273 TraceCheckUtils]: 18: Hoare triple {8191#(<= main_~i~1 4)} assume true; {8191#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:11,787 INFO L273 TraceCheckUtils]: 19: Hoare triple {8191#(<= main_~i~1 4)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8191#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:11,787 INFO L273 TraceCheckUtils]: 20: Hoare triple {8191#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8192#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:11,788 INFO L273 TraceCheckUtils]: 21: Hoare triple {8192#(<= main_~i~1 5)} assume true; {8192#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:11,788 INFO L273 TraceCheckUtils]: 22: Hoare triple {8192#(<= main_~i~1 5)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8192#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:11,789 INFO L273 TraceCheckUtils]: 23: Hoare triple {8192#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8193#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:11,789 INFO L273 TraceCheckUtils]: 24: Hoare triple {8193#(<= main_~i~1 6)} assume true; {8193#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:11,790 INFO L273 TraceCheckUtils]: 25: Hoare triple {8193#(<= main_~i~1 6)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8193#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:11,791 INFO L273 TraceCheckUtils]: 26: Hoare triple {8193#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8194#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:11,791 INFO L273 TraceCheckUtils]: 27: Hoare triple {8194#(<= main_~i~1 7)} assume true; {8194#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:11,792 INFO L273 TraceCheckUtils]: 28: Hoare triple {8194#(<= main_~i~1 7)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8194#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:11,792 INFO L273 TraceCheckUtils]: 29: Hoare triple {8194#(<= main_~i~1 7)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8195#(<= main_~i~1 8)} is VALID [2018-11-14 18:50:11,793 INFO L273 TraceCheckUtils]: 30: Hoare triple {8195#(<= main_~i~1 8)} assume true; {8195#(<= main_~i~1 8)} is VALID [2018-11-14 18:50:11,793 INFO L273 TraceCheckUtils]: 31: Hoare triple {8195#(<= main_~i~1 8)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8195#(<= main_~i~1 8)} is VALID [2018-11-14 18:50:11,794 INFO L273 TraceCheckUtils]: 32: Hoare triple {8195#(<= main_~i~1 8)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8196#(<= main_~i~1 9)} is VALID [2018-11-14 18:50:11,794 INFO L273 TraceCheckUtils]: 33: Hoare triple {8196#(<= main_~i~1 9)} assume true; {8196#(<= main_~i~1 9)} is VALID [2018-11-14 18:50:11,795 INFO L273 TraceCheckUtils]: 34: Hoare triple {8196#(<= main_~i~1 9)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8196#(<= main_~i~1 9)} is VALID [2018-11-14 18:50:11,796 INFO L273 TraceCheckUtils]: 35: Hoare triple {8196#(<= main_~i~1 9)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8197#(<= main_~i~1 10)} is VALID [2018-11-14 18:50:11,796 INFO L273 TraceCheckUtils]: 36: Hoare triple {8197#(<= main_~i~1 10)} assume true; {8197#(<= main_~i~1 10)} is VALID [2018-11-14 18:50:11,797 INFO L273 TraceCheckUtils]: 37: Hoare triple {8197#(<= main_~i~1 10)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8197#(<= main_~i~1 10)} is VALID [2018-11-14 18:50:11,797 INFO L273 TraceCheckUtils]: 38: Hoare triple {8197#(<= main_~i~1 10)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8198#(<= main_~i~1 11)} is VALID [2018-11-14 18:50:11,798 INFO L273 TraceCheckUtils]: 39: Hoare triple {8198#(<= main_~i~1 11)} assume true; {8198#(<= main_~i~1 11)} is VALID [2018-11-14 18:50:11,798 INFO L273 TraceCheckUtils]: 40: Hoare triple {8198#(<= main_~i~1 11)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8198#(<= main_~i~1 11)} is VALID [2018-11-14 18:50:11,799 INFO L273 TraceCheckUtils]: 41: Hoare triple {8198#(<= main_~i~1 11)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8199#(<= main_~i~1 12)} is VALID [2018-11-14 18:50:11,799 INFO L273 TraceCheckUtils]: 42: Hoare triple {8199#(<= main_~i~1 12)} assume true; {8199#(<= main_~i~1 12)} is VALID [2018-11-14 18:50:11,800 INFO L273 TraceCheckUtils]: 43: Hoare triple {8199#(<= main_~i~1 12)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8199#(<= main_~i~1 12)} is VALID [2018-11-14 18:50:11,801 INFO L273 TraceCheckUtils]: 44: Hoare triple {8199#(<= main_~i~1 12)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8200#(<= main_~i~1 13)} is VALID [2018-11-14 18:50:11,801 INFO L273 TraceCheckUtils]: 45: Hoare triple {8200#(<= main_~i~1 13)} assume true; {8200#(<= main_~i~1 13)} is VALID [2018-11-14 18:50:11,802 INFO L273 TraceCheckUtils]: 46: Hoare triple {8200#(<= main_~i~1 13)} assume !(~i~1 < 20); {8186#false} is VALID [2018-11-14 18:50:11,802 INFO L256 TraceCheckUtils]: 47: Hoare triple {8186#false} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {8186#false} is VALID [2018-11-14 18:50:11,802 INFO L273 TraceCheckUtils]: 48: Hoare triple {8186#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {8186#false} is VALID [2018-11-14 18:50:11,802 INFO L273 TraceCheckUtils]: 49: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:50:11,803 INFO L273 TraceCheckUtils]: 50: Hoare triple {8186#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {8186#false} is VALID [2018-11-14 18:50:11,803 INFO L273 TraceCheckUtils]: 51: Hoare triple {8186#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8186#false} is VALID [2018-11-14 18:50:11,803 INFO L273 TraceCheckUtils]: 52: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:50:11,803 INFO L273 TraceCheckUtils]: 53: Hoare triple {8186#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {8186#false} is VALID [2018-11-14 18:50:11,803 INFO L273 TraceCheckUtils]: 54: Hoare triple {8186#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8186#false} is VALID [2018-11-14 18:50:11,803 INFO L273 TraceCheckUtils]: 55: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:50:11,804 INFO L273 TraceCheckUtils]: 56: Hoare triple {8186#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {8186#false} is VALID [2018-11-14 18:50:11,804 INFO L273 TraceCheckUtils]: 57: Hoare triple {8186#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8186#false} is VALID [2018-11-14 18:50:11,804 INFO L273 TraceCheckUtils]: 58: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:50:11,804 INFO L273 TraceCheckUtils]: 59: Hoare triple {8186#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {8186#false} is VALID [2018-11-14 18:50:11,804 INFO L273 TraceCheckUtils]: 60: Hoare triple {8186#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8186#false} is VALID [2018-11-14 18:50:11,805 INFO L273 TraceCheckUtils]: 61: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:50:11,805 INFO L273 TraceCheckUtils]: 62: Hoare triple {8186#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {8186#false} is VALID [2018-11-14 18:50:11,805 INFO L273 TraceCheckUtils]: 63: Hoare triple {8186#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8186#false} is VALID [2018-11-14 18:50:11,805 INFO L273 TraceCheckUtils]: 64: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:50:11,805 INFO L273 TraceCheckUtils]: 65: Hoare triple {8186#false} assume !(~i~0 < 20); {8186#false} is VALID [2018-11-14 18:50:11,806 INFO L273 TraceCheckUtils]: 66: Hoare triple {8186#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {8186#false} is VALID [2018-11-14 18:50:11,806 INFO L273 TraceCheckUtils]: 67: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:50:11,806 INFO L268 TraceCheckUtils]: 68: Hoare quadruple {8186#false} {8186#false} #73#return; {8186#false} is VALID [2018-11-14 18:50:11,806 INFO L273 TraceCheckUtils]: 69: Hoare triple {8186#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {8186#false} is VALID [2018-11-14 18:50:11,806 INFO L256 TraceCheckUtils]: 70: Hoare triple {8186#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {8186#false} is VALID [2018-11-14 18:50:11,806 INFO L273 TraceCheckUtils]: 71: Hoare triple {8186#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {8186#false} is VALID [2018-11-14 18:50:11,807 INFO L273 TraceCheckUtils]: 72: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:50:11,807 INFO L273 TraceCheckUtils]: 73: Hoare triple {8186#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {8186#false} is VALID [2018-11-14 18:50:11,807 INFO L273 TraceCheckUtils]: 74: Hoare triple {8186#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8186#false} is VALID [2018-11-14 18:50:11,807 INFO L273 TraceCheckUtils]: 75: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:50:11,807 INFO L273 TraceCheckUtils]: 76: Hoare triple {8186#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {8186#false} is VALID [2018-11-14 18:50:11,807 INFO L273 TraceCheckUtils]: 77: Hoare triple {8186#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8186#false} is VALID [2018-11-14 18:50:11,807 INFO L273 TraceCheckUtils]: 78: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:50:11,807 INFO L273 TraceCheckUtils]: 79: Hoare triple {8186#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {8186#false} is VALID [2018-11-14 18:50:11,807 INFO L273 TraceCheckUtils]: 80: Hoare triple {8186#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8186#false} is VALID [2018-11-14 18:50:11,808 INFO L273 TraceCheckUtils]: 81: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:50:11,808 INFO L273 TraceCheckUtils]: 82: Hoare triple {8186#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {8186#false} is VALID [2018-11-14 18:50:11,808 INFO L273 TraceCheckUtils]: 83: Hoare triple {8186#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8186#false} is VALID [2018-11-14 18:50:11,808 INFO L273 TraceCheckUtils]: 84: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:50:11,808 INFO L273 TraceCheckUtils]: 85: Hoare triple {8186#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {8186#false} is VALID [2018-11-14 18:50:11,808 INFO L273 TraceCheckUtils]: 86: Hoare triple {8186#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8186#false} is VALID [2018-11-14 18:50:11,808 INFO L273 TraceCheckUtils]: 87: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:50:11,808 INFO L273 TraceCheckUtils]: 88: Hoare triple {8186#false} assume !(~i~0 < 20); {8186#false} is VALID [2018-11-14 18:50:11,808 INFO L273 TraceCheckUtils]: 89: Hoare triple {8186#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {8186#false} is VALID [2018-11-14 18:50:11,809 INFO L273 TraceCheckUtils]: 90: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:50:11,809 INFO L268 TraceCheckUtils]: 91: Hoare quadruple {8186#false} {8186#false} #75#return; {8186#false} is VALID [2018-11-14 18:50:11,809 INFO L273 TraceCheckUtils]: 92: Hoare triple {8186#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {8186#false} is VALID [2018-11-14 18:50:11,809 INFO L273 TraceCheckUtils]: 93: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:50:11,809 INFO L273 TraceCheckUtils]: 94: Hoare triple {8186#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {8186#false} is VALID [2018-11-14 18:50:11,809 INFO L273 TraceCheckUtils]: 95: Hoare triple {8186#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {8186#false} is VALID [2018-11-14 18:50:11,809 INFO L273 TraceCheckUtils]: 96: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:50:11,809 INFO L273 TraceCheckUtils]: 97: Hoare triple {8186#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {8186#false} is VALID [2018-11-14 18:50:11,810 INFO L273 TraceCheckUtils]: 98: Hoare triple {8186#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {8186#false} is VALID [2018-11-14 18:50:11,810 INFO L273 TraceCheckUtils]: 99: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:50:11,810 INFO L273 TraceCheckUtils]: 100: Hoare triple {8186#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {8186#false} is VALID [2018-11-14 18:50:11,810 INFO L273 TraceCheckUtils]: 101: Hoare triple {8186#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {8186#false} is VALID [2018-11-14 18:50:11,810 INFO L273 TraceCheckUtils]: 102: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:50:11,810 INFO L273 TraceCheckUtils]: 103: Hoare triple {8186#false} assume !(~i~2 < 19); {8186#false} is VALID [2018-11-14 18:50:11,810 INFO L273 TraceCheckUtils]: 104: Hoare triple {8186#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {8186#false} is VALID [2018-11-14 18:50:11,810 INFO L256 TraceCheckUtils]: 105: Hoare triple {8186#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {8186#false} is VALID [2018-11-14 18:50:11,810 INFO L273 TraceCheckUtils]: 106: Hoare triple {8186#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {8186#false} is VALID [2018-11-14 18:50:11,811 INFO L273 TraceCheckUtils]: 107: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:50:11,811 INFO L273 TraceCheckUtils]: 108: Hoare triple {8186#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {8186#false} is VALID [2018-11-14 18:50:11,811 INFO L273 TraceCheckUtils]: 109: Hoare triple {8186#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8186#false} is VALID [2018-11-14 18:50:11,811 INFO L273 TraceCheckUtils]: 110: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:50:11,811 INFO L273 TraceCheckUtils]: 111: Hoare triple {8186#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {8186#false} is VALID [2018-11-14 18:50:11,811 INFO L273 TraceCheckUtils]: 112: Hoare triple {8186#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8186#false} is VALID [2018-11-14 18:50:11,811 INFO L273 TraceCheckUtils]: 113: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:50:11,811 INFO L273 TraceCheckUtils]: 114: Hoare triple {8186#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {8186#false} is VALID [2018-11-14 18:50:11,811 INFO L273 TraceCheckUtils]: 115: Hoare triple {8186#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8186#false} is VALID [2018-11-14 18:50:11,812 INFO L273 TraceCheckUtils]: 116: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:50:11,812 INFO L273 TraceCheckUtils]: 117: Hoare triple {8186#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {8186#false} is VALID [2018-11-14 18:50:11,812 INFO L273 TraceCheckUtils]: 118: Hoare triple {8186#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8186#false} is VALID [2018-11-14 18:50:11,812 INFO L273 TraceCheckUtils]: 119: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:50:11,812 INFO L273 TraceCheckUtils]: 120: Hoare triple {8186#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {8186#false} is VALID [2018-11-14 18:50:11,812 INFO L273 TraceCheckUtils]: 121: Hoare triple {8186#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8186#false} is VALID [2018-11-14 18:50:11,812 INFO L273 TraceCheckUtils]: 122: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:50:11,812 INFO L273 TraceCheckUtils]: 123: Hoare triple {8186#false} assume !(~i~0 < 20); {8186#false} is VALID [2018-11-14 18:50:11,812 INFO L273 TraceCheckUtils]: 124: Hoare triple {8186#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {8186#false} is VALID [2018-11-14 18:50:11,813 INFO L273 TraceCheckUtils]: 125: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:50:11,813 INFO L268 TraceCheckUtils]: 126: Hoare quadruple {8186#false} {8186#false} #77#return; {8186#false} is VALID [2018-11-14 18:50:11,813 INFO L273 TraceCheckUtils]: 127: Hoare triple {8186#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {8186#false} is VALID [2018-11-14 18:50:11,813 INFO L273 TraceCheckUtils]: 128: Hoare triple {8186#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {8186#false} is VALID [2018-11-14 18:50:11,813 INFO L273 TraceCheckUtils]: 129: Hoare triple {8186#false} assume !false; {8186#false} is VALID [2018-11-14 18:50:11,820 INFO L134 CoverageAnalysis]: Checked inductivity of 698 backedges. 0 proven. 260 refuted. 0 times theorem prover too weak. 438 trivial. 0 not checked. [2018-11-14 18:50:11,841 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:50:11,841 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 16] total 17 [2018-11-14 18:50:11,842 INFO L78 Accepts]: Start accepts. Automaton has 17 states. Word has length 130 [2018-11-14 18:50:11,843 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:50:11,843 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states. [2018-11-14 18:50:11,952 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 87 edges. 87 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:50:11,952 INFO L459 AbstractCegarLoop]: Interpolant automaton has 17 states [2018-11-14 18:50:11,953 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2018-11-14 18:50:11,953 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=136, Invalid=136, Unknown=0, NotChecked=0, Total=272 [2018-11-14 18:50:11,953 INFO L87 Difference]: Start difference. First operand 89 states and 93 transitions. Second operand 17 states. [2018-11-14 18:50:12,289 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:12,289 INFO L93 Difference]: Finished difference Result 135 states and 143 transitions. [2018-11-14 18:50:12,289 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2018-11-14 18:50:12,289 INFO L78 Accepts]: Start accepts. Automaton has 17 states. Word has length 130 [2018-11-14 18:50:12,290 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:50:12,290 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 17 states. [2018-11-14 18:50:12,290 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 99 transitions. [2018-11-14 18:50:12,291 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 17 states. [2018-11-14 18:50:12,292 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 99 transitions. [2018-11-14 18:50:12,292 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states and 99 transitions. [2018-11-14 18:50:12,397 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 99 edges. 99 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:50:12,400 INFO L225 Difference]: With dead ends: 135 [2018-11-14 18:50:12,400 INFO L226 Difference]: Without dead ends: 93 [2018-11-14 18:50:12,400 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 145 GetRequests, 130 SyntacticMatches, 0 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 24 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=136, Invalid=136, Unknown=0, NotChecked=0, Total=272 [2018-11-14 18:50:12,400 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 93 states. [2018-11-14 18:50:12,427 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 93 to 92. [2018-11-14 18:50:12,427 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:50:12,427 INFO L82 GeneralOperation]: Start isEquivalent. First operand 93 states. Second operand 92 states. [2018-11-14 18:50:12,427 INFO L74 IsIncluded]: Start isIncluded. First operand 93 states. Second operand 92 states. [2018-11-14 18:50:12,428 INFO L87 Difference]: Start difference. First operand 93 states. Second operand 92 states. [2018-11-14 18:50:12,430 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:12,430 INFO L93 Difference]: Finished difference Result 93 states and 97 transitions. [2018-11-14 18:50:12,430 INFO L276 IsEmpty]: Start isEmpty. Operand 93 states and 97 transitions. [2018-11-14 18:50:12,431 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:50:12,431 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:50:12,431 INFO L74 IsIncluded]: Start isIncluded. First operand 92 states. Second operand 93 states. [2018-11-14 18:50:12,431 INFO L87 Difference]: Start difference. First operand 92 states. Second operand 93 states. [2018-11-14 18:50:12,433 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:12,433 INFO L93 Difference]: Finished difference Result 93 states and 97 transitions. [2018-11-14 18:50:12,433 INFO L276 IsEmpty]: Start isEmpty. Operand 93 states and 97 transitions. [2018-11-14 18:50:12,434 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:50:12,434 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:50:12,434 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:50:12,434 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:50:12,434 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 92 states. [2018-11-14 18:50:12,436 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 92 states to 92 states and 96 transitions. [2018-11-14 18:50:12,436 INFO L78 Accepts]: Start accepts. Automaton has 92 states and 96 transitions. Word has length 130 [2018-11-14 18:50:12,436 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:50:12,436 INFO L480 AbstractCegarLoop]: Abstraction has 92 states and 96 transitions. [2018-11-14 18:50:12,436 INFO L481 AbstractCegarLoop]: Interpolant automaton has 17 states. [2018-11-14 18:50:12,437 INFO L276 IsEmpty]: Start isEmpty. Operand 92 states and 96 transitions. [2018-11-14 18:50:12,437 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 134 [2018-11-14 18:50:12,437 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:50:12,438 INFO L375 BasicCegarLoop]: trace histogram [18, 15, 15, 15, 14, 14, 4, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:50:12,438 INFO L423 AbstractCegarLoop]: === Iteration 18 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:50:12,438 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:50:12,438 INFO L82 PathProgramCache]: Analyzing trace with hash 1039240391, now seen corresponding path program 14 times [2018-11-14 18:50:12,438 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:50:12,439 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:50:12,439 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:50:12,439 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 18:50:12,439 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:50:12,458 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:50:12,780 INFO L256 TraceCheckUtils]: 0: Hoare triple {9084#true} call ULTIMATE.init(); {9084#true} is VALID [2018-11-14 18:50:12,780 INFO L273 TraceCheckUtils]: 1: Hoare triple {9084#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {9084#true} is VALID [2018-11-14 18:50:12,781 INFO L273 TraceCheckUtils]: 2: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 18:50:12,781 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {9084#true} {9084#true} #69#return; {9084#true} is VALID [2018-11-14 18:50:12,781 INFO L256 TraceCheckUtils]: 4: Hoare triple {9084#true} call #t~ret12 := main(); {9084#true} is VALID [2018-11-14 18:50:12,781 INFO L273 TraceCheckUtils]: 5: Hoare triple {9084#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {9086#(= main_~i~1 0)} is VALID [2018-11-14 18:50:12,782 INFO L273 TraceCheckUtils]: 6: Hoare triple {9086#(= main_~i~1 0)} assume true; {9086#(= main_~i~1 0)} is VALID [2018-11-14 18:50:12,782 INFO L273 TraceCheckUtils]: 7: Hoare triple {9086#(= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9086#(= main_~i~1 0)} is VALID [2018-11-14 18:50:12,783 INFO L273 TraceCheckUtils]: 8: Hoare triple {9086#(= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9087#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:12,783 INFO L273 TraceCheckUtils]: 9: Hoare triple {9087#(<= main_~i~1 1)} assume true; {9087#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:12,783 INFO L273 TraceCheckUtils]: 10: Hoare triple {9087#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9087#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:12,784 INFO L273 TraceCheckUtils]: 11: Hoare triple {9087#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9088#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:12,784 INFO L273 TraceCheckUtils]: 12: Hoare triple {9088#(<= main_~i~1 2)} assume true; {9088#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:12,785 INFO L273 TraceCheckUtils]: 13: Hoare triple {9088#(<= main_~i~1 2)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9088#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:12,785 INFO L273 TraceCheckUtils]: 14: Hoare triple {9088#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9089#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:12,785 INFO L273 TraceCheckUtils]: 15: Hoare triple {9089#(<= main_~i~1 3)} assume true; {9089#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:12,786 INFO L273 TraceCheckUtils]: 16: Hoare triple {9089#(<= main_~i~1 3)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9089#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:12,787 INFO L273 TraceCheckUtils]: 17: Hoare triple {9089#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9090#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:12,787 INFO L273 TraceCheckUtils]: 18: Hoare triple {9090#(<= main_~i~1 4)} assume true; {9090#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:12,788 INFO L273 TraceCheckUtils]: 19: Hoare triple {9090#(<= main_~i~1 4)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9090#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:12,788 INFO L273 TraceCheckUtils]: 20: Hoare triple {9090#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9091#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:12,789 INFO L273 TraceCheckUtils]: 21: Hoare triple {9091#(<= main_~i~1 5)} assume true; {9091#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:12,789 INFO L273 TraceCheckUtils]: 22: Hoare triple {9091#(<= main_~i~1 5)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9091#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:12,790 INFO L273 TraceCheckUtils]: 23: Hoare triple {9091#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9092#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:12,791 INFO L273 TraceCheckUtils]: 24: Hoare triple {9092#(<= main_~i~1 6)} assume true; {9092#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:12,791 INFO L273 TraceCheckUtils]: 25: Hoare triple {9092#(<= main_~i~1 6)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9092#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:12,792 INFO L273 TraceCheckUtils]: 26: Hoare triple {9092#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9093#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:12,793 INFO L273 TraceCheckUtils]: 27: Hoare triple {9093#(<= main_~i~1 7)} assume true; {9093#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:12,793 INFO L273 TraceCheckUtils]: 28: Hoare triple {9093#(<= main_~i~1 7)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9093#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:12,794 INFO L273 TraceCheckUtils]: 29: Hoare triple {9093#(<= main_~i~1 7)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9094#(<= main_~i~1 8)} is VALID [2018-11-14 18:50:12,794 INFO L273 TraceCheckUtils]: 30: Hoare triple {9094#(<= main_~i~1 8)} assume true; {9094#(<= main_~i~1 8)} is VALID [2018-11-14 18:50:12,795 INFO L273 TraceCheckUtils]: 31: Hoare triple {9094#(<= main_~i~1 8)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9094#(<= main_~i~1 8)} is VALID [2018-11-14 18:50:12,796 INFO L273 TraceCheckUtils]: 32: Hoare triple {9094#(<= main_~i~1 8)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9095#(<= main_~i~1 9)} is VALID [2018-11-14 18:50:12,796 INFO L273 TraceCheckUtils]: 33: Hoare triple {9095#(<= main_~i~1 9)} assume true; {9095#(<= main_~i~1 9)} is VALID [2018-11-14 18:50:12,797 INFO L273 TraceCheckUtils]: 34: Hoare triple {9095#(<= main_~i~1 9)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9095#(<= main_~i~1 9)} is VALID [2018-11-14 18:50:12,797 INFO L273 TraceCheckUtils]: 35: Hoare triple {9095#(<= main_~i~1 9)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9096#(<= main_~i~1 10)} is VALID [2018-11-14 18:50:12,798 INFO L273 TraceCheckUtils]: 36: Hoare triple {9096#(<= main_~i~1 10)} assume true; {9096#(<= main_~i~1 10)} is VALID [2018-11-14 18:50:12,798 INFO L273 TraceCheckUtils]: 37: Hoare triple {9096#(<= main_~i~1 10)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9096#(<= main_~i~1 10)} is VALID [2018-11-14 18:50:12,799 INFO L273 TraceCheckUtils]: 38: Hoare triple {9096#(<= main_~i~1 10)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9097#(<= main_~i~1 11)} is VALID [2018-11-14 18:50:12,800 INFO L273 TraceCheckUtils]: 39: Hoare triple {9097#(<= main_~i~1 11)} assume true; {9097#(<= main_~i~1 11)} is VALID [2018-11-14 18:50:12,800 INFO L273 TraceCheckUtils]: 40: Hoare triple {9097#(<= main_~i~1 11)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9097#(<= main_~i~1 11)} is VALID [2018-11-14 18:50:12,801 INFO L273 TraceCheckUtils]: 41: Hoare triple {9097#(<= main_~i~1 11)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9098#(<= main_~i~1 12)} is VALID [2018-11-14 18:50:12,801 INFO L273 TraceCheckUtils]: 42: Hoare triple {9098#(<= main_~i~1 12)} assume true; {9098#(<= main_~i~1 12)} is VALID [2018-11-14 18:50:12,802 INFO L273 TraceCheckUtils]: 43: Hoare triple {9098#(<= main_~i~1 12)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9098#(<= main_~i~1 12)} is VALID [2018-11-14 18:50:12,803 INFO L273 TraceCheckUtils]: 44: Hoare triple {9098#(<= main_~i~1 12)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9099#(<= main_~i~1 13)} is VALID [2018-11-14 18:50:12,803 INFO L273 TraceCheckUtils]: 45: Hoare triple {9099#(<= main_~i~1 13)} assume true; {9099#(<= main_~i~1 13)} is VALID [2018-11-14 18:50:12,804 INFO L273 TraceCheckUtils]: 46: Hoare triple {9099#(<= main_~i~1 13)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9099#(<= main_~i~1 13)} is VALID [2018-11-14 18:50:12,804 INFO L273 TraceCheckUtils]: 47: Hoare triple {9099#(<= main_~i~1 13)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9100#(<= main_~i~1 14)} is VALID [2018-11-14 18:50:12,805 INFO L273 TraceCheckUtils]: 48: Hoare triple {9100#(<= main_~i~1 14)} assume true; {9100#(<= main_~i~1 14)} is VALID [2018-11-14 18:50:12,806 INFO L273 TraceCheckUtils]: 49: Hoare triple {9100#(<= main_~i~1 14)} assume !(~i~1 < 20); {9085#false} is VALID [2018-11-14 18:50:12,806 INFO L256 TraceCheckUtils]: 50: Hoare triple {9085#false} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {9084#true} is VALID [2018-11-14 18:50:12,806 INFO L273 TraceCheckUtils]: 51: Hoare triple {9084#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {9084#true} is VALID [2018-11-14 18:50:12,806 INFO L273 TraceCheckUtils]: 52: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 18:50:12,806 INFO L273 TraceCheckUtils]: 53: Hoare triple {9084#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {9084#true} is VALID [2018-11-14 18:50:12,807 INFO L273 TraceCheckUtils]: 54: Hoare triple {9084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9084#true} is VALID [2018-11-14 18:50:12,807 INFO L273 TraceCheckUtils]: 55: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 18:50:12,807 INFO L273 TraceCheckUtils]: 56: Hoare triple {9084#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {9084#true} is VALID [2018-11-14 18:50:12,807 INFO L273 TraceCheckUtils]: 57: Hoare triple {9084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9084#true} is VALID [2018-11-14 18:50:12,807 INFO L273 TraceCheckUtils]: 58: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 18:50:12,808 INFO L273 TraceCheckUtils]: 59: Hoare triple {9084#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {9084#true} is VALID [2018-11-14 18:50:12,808 INFO L273 TraceCheckUtils]: 60: Hoare triple {9084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9084#true} is VALID [2018-11-14 18:50:12,808 INFO L273 TraceCheckUtils]: 61: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 18:50:12,808 INFO L273 TraceCheckUtils]: 62: Hoare triple {9084#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {9084#true} is VALID [2018-11-14 18:50:12,808 INFO L273 TraceCheckUtils]: 63: Hoare triple {9084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9084#true} is VALID [2018-11-14 18:50:12,808 INFO L273 TraceCheckUtils]: 64: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 18:50:12,809 INFO L273 TraceCheckUtils]: 65: Hoare triple {9084#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {9084#true} is VALID [2018-11-14 18:50:12,809 INFO L273 TraceCheckUtils]: 66: Hoare triple {9084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9084#true} is VALID [2018-11-14 18:50:12,809 INFO L273 TraceCheckUtils]: 67: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 18:50:12,809 INFO L273 TraceCheckUtils]: 68: Hoare triple {9084#true} assume !(~i~0 < 20); {9084#true} is VALID [2018-11-14 18:50:12,809 INFO L273 TraceCheckUtils]: 69: Hoare triple {9084#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {9084#true} is VALID [2018-11-14 18:50:12,809 INFO L273 TraceCheckUtils]: 70: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 18:50:12,809 INFO L268 TraceCheckUtils]: 71: Hoare quadruple {9084#true} {9085#false} #73#return; {9085#false} is VALID [2018-11-14 18:50:12,809 INFO L273 TraceCheckUtils]: 72: Hoare triple {9085#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {9085#false} is VALID [2018-11-14 18:50:12,810 INFO L256 TraceCheckUtils]: 73: Hoare triple {9085#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {9084#true} is VALID [2018-11-14 18:50:12,810 INFO L273 TraceCheckUtils]: 74: Hoare triple {9084#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {9084#true} is VALID [2018-11-14 18:50:12,810 INFO L273 TraceCheckUtils]: 75: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 18:50:12,810 INFO L273 TraceCheckUtils]: 76: Hoare triple {9084#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {9084#true} is VALID [2018-11-14 18:50:12,810 INFO L273 TraceCheckUtils]: 77: Hoare triple {9084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9084#true} is VALID [2018-11-14 18:50:12,810 INFO L273 TraceCheckUtils]: 78: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 18:50:12,810 INFO L273 TraceCheckUtils]: 79: Hoare triple {9084#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {9084#true} is VALID [2018-11-14 18:50:12,810 INFO L273 TraceCheckUtils]: 80: Hoare triple {9084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9084#true} is VALID [2018-11-14 18:50:12,810 INFO L273 TraceCheckUtils]: 81: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 18:50:12,811 INFO L273 TraceCheckUtils]: 82: Hoare triple {9084#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {9084#true} is VALID [2018-11-14 18:50:12,811 INFO L273 TraceCheckUtils]: 83: Hoare triple {9084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9084#true} is VALID [2018-11-14 18:50:12,811 INFO L273 TraceCheckUtils]: 84: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 18:50:12,811 INFO L273 TraceCheckUtils]: 85: Hoare triple {9084#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {9084#true} is VALID [2018-11-14 18:50:12,811 INFO L273 TraceCheckUtils]: 86: Hoare triple {9084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9084#true} is VALID [2018-11-14 18:50:12,811 INFO L273 TraceCheckUtils]: 87: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 18:50:12,811 INFO L273 TraceCheckUtils]: 88: Hoare triple {9084#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {9084#true} is VALID [2018-11-14 18:50:12,811 INFO L273 TraceCheckUtils]: 89: Hoare triple {9084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9084#true} is VALID [2018-11-14 18:50:12,811 INFO L273 TraceCheckUtils]: 90: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 18:50:12,812 INFO L273 TraceCheckUtils]: 91: Hoare triple {9084#true} assume !(~i~0 < 20); {9084#true} is VALID [2018-11-14 18:50:12,812 INFO L273 TraceCheckUtils]: 92: Hoare triple {9084#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {9084#true} is VALID [2018-11-14 18:50:12,812 INFO L273 TraceCheckUtils]: 93: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 18:50:12,812 INFO L268 TraceCheckUtils]: 94: Hoare quadruple {9084#true} {9085#false} #75#return; {9085#false} is VALID [2018-11-14 18:50:12,812 INFO L273 TraceCheckUtils]: 95: Hoare triple {9085#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {9085#false} is VALID [2018-11-14 18:50:12,812 INFO L273 TraceCheckUtils]: 96: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:50:12,812 INFO L273 TraceCheckUtils]: 97: Hoare triple {9085#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {9085#false} is VALID [2018-11-14 18:50:12,812 INFO L273 TraceCheckUtils]: 98: Hoare triple {9085#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {9085#false} is VALID [2018-11-14 18:50:12,812 INFO L273 TraceCheckUtils]: 99: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:50:12,813 INFO L273 TraceCheckUtils]: 100: Hoare triple {9085#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {9085#false} is VALID [2018-11-14 18:50:12,813 INFO L273 TraceCheckUtils]: 101: Hoare triple {9085#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {9085#false} is VALID [2018-11-14 18:50:12,813 INFO L273 TraceCheckUtils]: 102: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:50:12,813 INFO L273 TraceCheckUtils]: 103: Hoare triple {9085#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {9085#false} is VALID [2018-11-14 18:50:12,813 INFO L273 TraceCheckUtils]: 104: Hoare triple {9085#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {9085#false} is VALID [2018-11-14 18:50:12,813 INFO L273 TraceCheckUtils]: 105: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:50:12,813 INFO L273 TraceCheckUtils]: 106: Hoare triple {9085#false} assume !(~i~2 < 19); {9085#false} is VALID [2018-11-14 18:50:12,813 INFO L273 TraceCheckUtils]: 107: Hoare triple {9085#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {9085#false} is VALID [2018-11-14 18:50:12,814 INFO L256 TraceCheckUtils]: 108: Hoare triple {9085#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {9084#true} is VALID [2018-11-14 18:50:12,814 INFO L273 TraceCheckUtils]: 109: Hoare triple {9084#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {9084#true} is VALID [2018-11-14 18:50:12,814 INFO L273 TraceCheckUtils]: 110: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 18:50:12,814 INFO L273 TraceCheckUtils]: 111: Hoare triple {9084#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {9084#true} is VALID [2018-11-14 18:50:12,814 INFO L273 TraceCheckUtils]: 112: Hoare triple {9084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9084#true} is VALID [2018-11-14 18:50:12,814 INFO L273 TraceCheckUtils]: 113: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 18:50:12,814 INFO L273 TraceCheckUtils]: 114: Hoare triple {9084#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {9084#true} is VALID [2018-11-14 18:50:12,814 INFO L273 TraceCheckUtils]: 115: Hoare triple {9084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9084#true} is VALID [2018-11-14 18:50:12,814 INFO L273 TraceCheckUtils]: 116: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 18:50:12,815 INFO L273 TraceCheckUtils]: 117: Hoare triple {9084#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {9084#true} is VALID [2018-11-14 18:50:12,815 INFO L273 TraceCheckUtils]: 118: Hoare triple {9084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9084#true} is VALID [2018-11-14 18:50:12,815 INFO L273 TraceCheckUtils]: 119: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 18:50:12,815 INFO L273 TraceCheckUtils]: 120: Hoare triple {9084#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {9084#true} is VALID [2018-11-14 18:50:12,815 INFO L273 TraceCheckUtils]: 121: Hoare triple {9084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9084#true} is VALID [2018-11-14 18:50:12,815 INFO L273 TraceCheckUtils]: 122: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 18:50:12,815 INFO L273 TraceCheckUtils]: 123: Hoare triple {9084#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {9084#true} is VALID [2018-11-14 18:50:12,815 INFO L273 TraceCheckUtils]: 124: Hoare triple {9084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9084#true} is VALID [2018-11-14 18:50:12,815 INFO L273 TraceCheckUtils]: 125: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 18:50:12,816 INFO L273 TraceCheckUtils]: 126: Hoare triple {9084#true} assume !(~i~0 < 20); {9084#true} is VALID [2018-11-14 18:50:12,816 INFO L273 TraceCheckUtils]: 127: Hoare triple {9084#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {9084#true} is VALID [2018-11-14 18:50:12,816 INFO L273 TraceCheckUtils]: 128: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 18:50:12,816 INFO L268 TraceCheckUtils]: 129: Hoare quadruple {9084#true} {9085#false} #77#return; {9085#false} is VALID [2018-11-14 18:50:12,816 INFO L273 TraceCheckUtils]: 130: Hoare triple {9085#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {9085#false} is VALID [2018-11-14 18:50:12,816 INFO L273 TraceCheckUtils]: 131: Hoare triple {9085#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {9085#false} is VALID [2018-11-14 18:50:12,817 INFO L273 TraceCheckUtils]: 132: Hoare triple {9085#false} assume !false; {9085#false} is VALID [2018-11-14 18:50:12,826 INFO L134 CoverageAnalysis]: Checked inductivity of 739 backedges. 0 proven. 301 refuted. 0 times theorem prover too weak. 438 trivial. 0 not checked. [2018-11-14 18:50:12,827 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:50:12,827 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 16 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 16 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:50:12,843 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-14 18:50:12,906 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-14 18:50:12,906 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 18:50:12,942 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:50:12,943 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:50:13,199 INFO L256 TraceCheckUtils]: 0: Hoare triple {9084#true} call ULTIMATE.init(); {9084#true} is VALID [2018-11-14 18:50:13,199 INFO L273 TraceCheckUtils]: 1: Hoare triple {9084#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {9084#true} is VALID [2018-11-14 18:50:13,199 INFO L273 TraceCheckUtils]: 2: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 18:50:13,200 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {9084#true} {9084#true} #69#return; {9084#true} is VALID [2018-11-14 18:50:13,200 INFO L256 TraceCheckUtils]: 4: Hoare triple {9084#true} call #t~ret12 := main(); {9084#true} is VALID [2018-11-14 18:50:13,201 INFO L273 TraceCheckUtils]: 5: Hoare triple {9084#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {9119#(<= main_~i~1 0)} is VALID [2018-11-14 18:50:13,201 INFO L273 TraceCheckUtils]: 6: Hoare triple {9119#(<= main_~i~1 0)} assume true; {9119#(<= main_~i~1 0)} is VALID [2018-11-14 18:50:13,201 INFO L273 TraceCheckUtils]: 7: Hoare triple {9119#(<= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9119#(<= main_~i~1 0)} is VALID [2018-11-14 18:50:13,202 INFO L273 TraceCheckUtils]: 8: Hoare triple {9119#(<= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9087#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:13,202 INFO L273 TraceCheckUtils]: 9: Hoare triple {9087#(<= main_~i~1 1)} assume true; {9087#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:13,202 INFO L273 TraceCheckUtils]: 10: Hoare triple {9087#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9087#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:13,203 INFO L273 TraceCheckUtils]: 11: Hoare triple {9087#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9088#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:13,204 INFO L273 TraceCheckUtils]: 12: Hoare triple {9088#(<= main_~i~1 2)} assume true; {9088#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:13,204 INFO L273 TraceCheckUtils]: 13: Hoare triple {9088#(<= main_~i~1 2)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9088#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:13,205 INFO L273 TraceCheckUtils]: 14: Hoare triple {9088#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9089#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:13,214 INFO L273 TraceCheckUtils]: 15: Hoare triple {9089#(<= main_~i~1 3)} assume true; {9089#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:13,214 INFO L273 TraceCheckUtils]: 16: Hoare triple {9089#(<= main_~i~1 3)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9089#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:13,214 INFO L273 TraceCheckUtils]: 17: Hoare triple {9089#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9090#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:13,215 INFO L273 TraceCheckUtils]: 18: Hoare triple {9090#(<= main_~i~1 4)} assume true; {9090#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:13,215 INFO L273 TraceCheckUtils]: 19: Hoare triple {9090#(<= main_~i~1 4)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9090#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:13,216 INFO L273 TraceCheckUtils]: 20: Hoare triple {9090#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9091#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:13,216 INFO L273 TraceCheckUtils]: 21: Hoare triple {9091#(<= main_~i~1 5)} assume true; {9091#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:13,216 INFO L273 TraceCheckUtils]: 22: Hoare triple {9091#(<= main_~i~1 5)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9091#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:13,217 INFO L273 TraceCheckUtils]: 23: Hoare triple {9091#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9092#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:13,217 INFO L273 TraceCheckUtils]: 24: Hoare triple {9092#(<= main_~i~1 6)} assume true; {9092#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:13,217 INFO L273 TraceCheckUtils]: 25: Hoare triple {9092#(<= main_~i~1 6)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9092#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:13,218 INFO L273 TraceCheckUtils]: 26: Hoare triple {9092#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9093#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:13,219 INFO L273 TraceCheckUtils]: 27: Hoare triple {9093#(<= main_~i~1 7)} assume true; {9093#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:13,219 INFO L273 TraceCheckUtils]: 28: Hoare triple {9093#(<= main_~i~1 7)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9093#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:13,220 INFO L273 TraceCheckUtils]: 29: Hoare triple {9093#(<= main_~i~1 7)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9094#(<= main_~i~1 8)} is VALID [2018-11-14 18:50:13,220 INFO L273 TraceCheckUtils]: 30: Hoare triple {9094#(<= main_~i~1 8)} assume true; {9094#(<= main_~i~1 8)} is VALID [2018-11-14 18:50:13,221 INFO L273 TraceCheckUtils]: 31: Hoare triple {9094#(<= main_~i~1 8)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9094#(<= main_~i~1 8)} is VALID [2018-11-14 18:50:13,222 INFO L273 TraceCheckUtils]: 32: Hoare triple {9094#(<= main_~i~1 8)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9095#(<= main_~i~1 9)} is VALID [2018-11-14 18:50:13,222 INFO L273 TraceCheckUtils]: 33: Hoare triple {9095#(<= main_~i~1 9)} assume true; {9095#(<= main_~i~1 9)} is VALID [2018-11-14 18:50:13,223 INFO L273 TraceCheckUtils]: 34: Hoare triple {9095#(<= main_~i~1 9)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9095#(<= main_~i~1 9)} is VALID [2018-11-14 18:50:13,223 INFO L273 TraceCheckUtils]: 35: Hoare triple {9095#(<= main_~i~1 9)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9096#(<= main_~i~1 10)} is VALID [2018-11-14 18:50:13,224 INFO L273 TraceCheckUtils]: 36: Hoare triple {9096#(<= main_~i~1 10)} assume true; {9096#(<= main_~i~1 10)} is VALID [2018-11-14 18:50:13,225 INFO L273 TraceCheckUtils]: 37: Hoare triple {9096#(<= main_~i~1 10)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9096#(<= main_~i~1 10)} is VALID [2018-11-14 18:50:13,225 INFO L273 TraceCheckUtils]: 38: Hoare triple {9096#(<= main_~i~1 10)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9097#(<= main_~i~1 11)} is VALID [2018-11-14 18:50:13,226 INFO L273 TraceCheckUtils]: 39: Hoare triple {9097#(<= main_~i~1 11)} assume true; {9097#(<= main_~i~1 11)} is VALID [2018-11-14 18:50:13,226 INFO L273 TraceCheckUtils]: 40: Hoare triple {9097#(<= main_~i~1 11)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9097#(<= main_~i~1 11)} is VALID [2018-11-14 18:50:13,227 INFO L273 TraceCheckUtils]: 41: Hoare triple {9097#(<= main_~i~1 11)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9098#(<= main_~i~1 12)} is VALID [2018-11-14 18:50:13,228 INFO L273 TraceCheckUtils]: 42: Hoare triple {9098#(<= main_~i~1 12)} assume true; {9098#(<= main_~i~1 12)} is VALID [2018-11-14 18:50:13,228 INFO L273 TraceCheckUtils]: 43: Hoare triple {9098#(<= main_~i~1 12)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9098#(<= main_~i~1 12)} is VALID [2018-11-14 18:50:13,229 INFO L273 TraceCheckUtils]: 44: Hoare triple {9098#(<= main_~i~1 12)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9099#(<= main_~i~1 13)} is VALID [2018-11-14 18:50:13,229 INFO L273 TraceCheckUtils]: 45: Hoare triple {9099#(<= main_~i~1 13)} assume true; {9099#(<= main_~i~1 13)} is VALID [2018-11-14 18:50:13,230 INFO L273 TraceCheckUtils]: 46: Hoare triple {9099#(<= main_~i~1 13)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9099#(<= main_~i~1 13)} is VALID [2018-11-14 18:50:13,231 INFO L273 TraceCheckUtils]: 47: Hoare triple {9099#(<= main_~i~1 13)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9100#(<= main_~i~1 14)} is VALID [2018-11-14 18:50:13,231 INFO L273 TraceCheckUtils]: 48: Hoare triple {9100#(<= main_~i~1 14)} assume true; {9100#(<= main_~i~1 14)} is VALID [2018-11-14 18:50:13,232 INFO L273 TraceCheckUtils]: 49: Hoare triple {9100#(<= main_~i~1 14)} assume !(~i~1 < 20); {9085#false} is VALID [2018-11-14 18:50:13,232 INFO L256 TraceCheckUtils]: 50: Hoare triple {9085#false} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {9085#false} is VALID [2018-11-14 18:50:13,232 INFO L273 TraceCheckUtils]: 51: Hoare triple {9085#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {9085#false} is VALID [2018-11-14 18:50:13,232 INFO L273 TraceCheckUtils]: 52: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:50:13,233 INFO L273 TraceCheckUtils]: 53: Hoare triple {9085#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {9085#false} is VALID [2018-11-14 18:50:13,233 INFO L273 TraceCheckUtils]: 54: Hoare triple {9085#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9085#false} is VALID [2018-11-14 18:50:13,233 INFO L273 TraceCheckUtils]: 55: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:50:13,233 INFO L273 TraceCheckUtils]: 56: Hoare triple {9085#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {9085#false} is VALID [2018-11-14 18:50:13,233 INFO L273 TraceCheckUtils]: 57: Hoare triple {9085#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9085#false} is VALID [2018-11-14 18:50:13,234 INFO L273 TraceCheckUtils]: 58: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:50:13,234 INFO L273 TraceCheckUtils]: 59: Hoare triple {9085#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {9085#false} is VALID [2018-11-14 18:50:13,234 INFO L273 TraceCheckUtils]: 60: Hoare triple {9085#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9085#false} is VALID [2018-11-14 18:50:13,234 INFO L273 TraceCheckUtils]: 61: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:50:13,234 INFO L273 TraceCheckUtils]: 62: Hoare triple {9085#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {9085#false} is VALID [2018-11-14 18:50:13,235 INFO L273 TraceCheckUtils]: 63: Hoare triple {9085#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9085#false} is VALID [2018-11-14 18:50:13,235 INFO L273 TraceCheckUtils]: 64: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:50:13,235 INFO L273 TraceCheckUtils]: 65: Hoare triple {9085#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {9085#false} is VALID [2018-11-14 18:50:13,235 INFO L273 TraceCheckUtils]: 66: Hoare triple {9085#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9085#false} is VALID [2018-11-14 18:50:13,235 INFO L273 TraceCheckUtils]: 67: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:50:13,236 INFO L273 TraceCheckUtils]: 68: Hoare triple {9085#false} assume !(~i~0 < 20); {9085#false} is VALID [2018-11-14 18:50:13,236 INFO L273 TraceCheckUtils]: 69: Hoare triple {9085#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {9085#false} is VALID [2018-11-14 18:50:13,236 INFO L273 TraceCheckUtils]: 70: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:50:13,236 INFO L268 TraceCheckUtils]: 71: Hoare quadruple {9085#false} {9085#false} #73#return; {9085#false} is VALID [2018-11-14 18:50:13,236 INFO L273 TraceCheckUtils]: 72: Hoare triple {9085#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {9085#false} is VALID [2018-11-14 18:50:13,237 INFO L256 TraceCheckUtils]: 73: Hoare triple {9085#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {9085#false} is VALID [2018-11-14 18:50:13,237 INFO L273 TraceCheckUtils]: 74: Hoare triple {9085#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {9085#false} is VALID [2018-11-14 18:50:13,237 INFO L273 TraceCheckUtils]: 75: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:50:13,237 INFO L273 TraceCheckUtils]: 76: Hoare triple {9085#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {9085#false} is VALID [2018-11-14 18:50:13,237 INFO L273 TraceCheckUtils]: 77: Hoare triple {9085#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9085#false} is VALID [2018-11-14 18:50:13,237 INFO L273 TraceCheckUtils]: 78: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:50:13,237 INFO L273 TraceCheckUtils]: 79: Hoare triple {9085#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {9085#false} is VALID [2018-11-14 18:50:13,238 INFO L273 TraceCheckUtils]: 80: Hoare triple {9085#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9085#false} is VALID [2018-11-14 18:50:13,238 INFO L273 TraceCheckUtils]: 81: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:50:13,238 INFO L273 TraceCheckUtils]: 82: Hoare triple {9085#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {9085#false} is VALID [2018-11-14 18:50:13,238 INFO L273 TraceCheckUtils]: 83: Hoare triple {9085#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9085#false} is VALID [2018-11-14 18:50:13,238 INFO L273 TraceCheckUtils]: 84: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:50:13,238 INFO L273 TraceCheckUtils]: 85: Hoare triple {9085#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {9085#false} is VALID [2018-11-14 18:50:13,238 INFO L273 TraceCheckUtils]: 86: Hoare triple {9085#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9085#false} is VALID [2018-11-14 18:50:13,238 INFO L273 TraceCheckUtils]: 87: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:50:13,238 INFO L273 TraceCheckUtils]: 88: Hoare triple {9085#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {9085#false} is VALID [2018-11-14 18:50:13,239 INFO L273 TraceCheckUtils]: 89: Hoare triple {9085#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9085#false} is VALID [2018-11-14 18:50:13,239 INFO L273 TraceCheckUtils]: 90: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:50:13,239 INFO L273 TraceCheckUtils]: 91: Hoare triple {9085#false} assume !(~i~0 < 20); {9085#false} is VALID [2018-11-14 18:50:13,239 INFO L273 TraceCheckUtils]: 92: Hoare triple {9085#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {9085#false} is VALID [2018-11-14 18:50:13,239 INFO L273 TraceCheckUtils]: 93: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:50:13,239 INFO L268 TraceCheckUtils]: 94: Hoare quadruple {9085#false} {9085#false} #75#return; {9085#false} is VALID [2018-11-14 18:50:13,239 INFO L273 TraceCheckUtils]: 95: Hoare triple {9085#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {9085#false} is VALID [2018-11-14 18:50:13,239 INFO L273 TraceCheckUtils]: 96: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:50:13,239 INFO L273 TraceCheckUtils]: 97: Hoare triple {9085#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {9085#false} is VALID [2018-11-14 18:50:13,240 INFO L273 TraceCheckUtils]: 98: Hoare triple {9085#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {9085#false} is VALID [2018-11-14 18:50:13,240 INFO L273 TraceCheckUtils]: 99: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:50:13,240 INFO L273 TraceCheckUtils]: 100: Hoare triple {9085#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {9085#false} is VALID [2018-11-14 18:50:13,240 INFO L273 TraceCheckUtils]: 101: Hoare triple {9085#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {9085#false} is VALID [2018-11-14 18:50:13,240 INFO L273 TraceCheckUtils]: 102: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:50:13,240 INFO L273 TraceCheckUtils]: 103: Hoare triple {9085#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {9085#false} is VALID [2018-11-14 18:50:13,240 INFO L273 TraceCheckUtils]: 104: Hoare triple {9085#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {9085#false} is VALID [2018-11-14 18:50:13,240 INFO L273 TraceCheckUtils]: 105: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:50:13,241 INFO L273 TraceCheckUtils]: 106: Hoare triple {9085#false} assume !(~i~2 < 19); {9085#false} is VALID [2018-11-14 18:50:13,241 INFO L273 TraceCheckUtils]: 107: Hoare triple {9085#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {9085#false} is VALID [2018-11-14 18:50:13,241 INFO L256 TraceCheckUtils]: 108: Hoare triple {9085#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {9085#false} is VALID [2018-11-14 18:50:13,241 INFO L273 TraceCheckUtils]: 109: Hoare triple {9085#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {9085#false} is VALID [2018-11-14 18:50:13,241 INFO L273 TraceCheckUtils]: 110: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:50:13,241 INFO L273 TraceCheckUtils]: 111: Hoare triple {9085#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {9085#false} is VALID [2018-11-14 18:50:13,241 INFO L273 TraceCheckUtils]: 112: Hoare triple {9085#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9085#false} is VALID [2018-11-14 18:50:13,241 INFO L273 TraceCheckUtils]: 113: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:50:13,241 INFO L273 TraceCheckUtils]: 114: Hoare triple {9085#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {9085#false} is VALID [2018-11-14 18:50:13,242 INFO L273 TraceCheckUtils]: 115: Hoare triple {9085#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9085#false} is VALID [2018-11-14 18:50:13,242 INFO L273 TraceCheckUtils]: 116: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:50:13,242 INFO L273 TraceCheckUtils]: 117: Hoare triple {9085#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {9085#false} is VALID [2018-11-14 18:50:13,242 INFO L273 TraceCheckUtils]: 118: Hoare triple {9085#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9085#false} is VALID [2018-11-14 18:50:13,242 INFO L273 TraceCheckUtils]: 119: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:50:13,242 INFO L273 TraceCheckUtils]: 120: Hoare triple {9085#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {9085#false} is VALID [2018-11-14 18:50:13,242 INFO L273 TraceCheckUtils]: 121: Hoare triple {9085#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9085#false} is VALID [2018-11-14 18:50:13,242 INFO L273 TraceCheckUtils]: 122: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:50:13,243 INFO L273 TraceCheckUtils]: 123: Hoare triple {9085#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {9085#false} is VALID [2018-11-14 18:50:13,243 INFO L273 TraceCheckUtils]: 124: Hoare triple {9085#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9085#false} is VALID [2018-11-14 18:50:13,243 INFO L273 TraceCheckUtils]: 125: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:50:13,243 INFO L273 TraceCheckUtils]: 126: Hoare triple {9085#false} assume !(~i~0 < 20); {9085#false} is VALID [2018-11-14 18:50:13,243 INFO L273 TraceCheckUtils]: 127: Hoare triple {9085#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {9085#false} is VALID [2018-11-14 18:50:13,243 INFO L273 TraceCheckUtils]: 128: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:50:13,244 INFO L268 TraceCheckUtils]: 129: Hoare quadruple {9085#false} {9085#false} #77#return; {9085#false} is VALID [2018-11-14 18:50:13,244 INFO L273 TraceCheckUtils]: 130: Hoare triple {9085#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {9085#false} is VALID [2018-11-14 18:50:13,244 INFO L273 TraceCheckUtils]: 131: Hoare triple {9085#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {9085#false} is VALID [2018-11-14 18:50:13,244 INFO L273 TraceCheckUtils]: 132: Hoare triple {9085#false} assume !false; {9085#false} is VALID [2018-11-14 18:50:13,252 INFO L134 CoverageAnalysis]: Checked inductivity of 739 backedges. 0 proven. 301 refuted. 0 times theorem prover too weak. 438 trivial. 0 not checked. [2018-11-14 18:50:13,272 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:50:13,272 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 17] total 18 [2018-11-14 18:50:13,272 INFO L78 Accepts]: Start accepts. Automaton has 18 states. Word has length 133 [2018-11-14 18:50:13,273 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:50:13,273 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 18 states. [2018-11-14 18:50:13,354 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 90 edges. 90 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:50:13,354 INFO L459 AbstractCegarLoop]: Interpolant automaton has 18 states [2018-11-14 18:50:13,355 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2018-11-14 18:50:13,355 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=153, Invalid=153, Unknown=0, NotChecked=0, Total=306 [2018-11-14 18:50:13,355 INFO L87 Difference]: Start difference. First operand 92 states and 96 transitions. Second operand 18 states. [2018-11-14 18:50:14,825 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:14,825 INFO L93 Difference]: Finished difference Result 138 states and 146 transitions. [2018-11-14 18:50:14,825 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2018-11-14 18:50:14,825 INFO L78 Accepts]: Start accepts. Automaton has 18 states. Word has length 133 [2018-11-14 18:50:14,826 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:50:14,826 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 18 states. [2018-11-14 18:50:14,827 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 102 transitions. [2018-11-14 18:50:14,827 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 18 states. [2018-11-14 18:50:14,827 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 102 transitions. [2018-11-14 18:50:14,827 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states and 102 transitions. [2018-11-14 18:50:14,921 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 102 edges. 102 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:50:14,923 INFO L225 Difference]: With dead ends: 138 [2018-11-14 18:50:14,924 INFO L226 Difference]: Without dead ends: 96 [2018-11-14 18:50:14,924 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 149 GetRequests, 133 SyntacticMatches, 0 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 26 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=153, Invalid=153, Unknown=0, NotChecked=0, Total=306 [2018-11-14 18:50:14,925 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 96 states. [2018-11-14 18:50:14,949 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 96 to 95. [2018-11-14 18:50:14,949 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:50:14,950 INFO L82 GeneralOperation]: Start isEquivalent. First operand 96 states. Second operand 95 states. [2018-11-14 18:50:14,950 INFO L74 IsIncluded]: Start isIncluded. First operand 96 states. Second operand 95 states. [2018-11-14 18:50:14,950 INFO L87 Difference]: Start difference. First operand 96 states. Second operand 95 states. [2018-11-14 18:50:14,952 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:14,952 INFO L93 Difference]: Finished difference Result 96 states and 100 transitions. [2018-11-14 18:50:14,952 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 100 transitions. [2018-11-14 18:50:14,953 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:50:14,953 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:50:14,953 INFO L74 IsIncluded]: Start isIncluded. First operand 95 states. Second operand 96 states. [2018-11-14 18:50:14,953 INFO L87 Difference]: Start difference. First operand 95 states. Second operand 96 states. [2018-11-14 18:50:14,954 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:14,954 INFO L93 Difference]: Finished difference Result 96 states and 100 transitions. [2018-11-14 18:50:14,955 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 100 transitions. [2018-11-14 18:50:14,955 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:50:14,955 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:50:14,955 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:50:14,955 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:50:14,955 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 95 states. [2018-11-14 18:50:14,956 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 95 states to 95 states and 99 transitions. [2018-11-14 18:50:14,957 INFO L78 Accepts]: Start accepts. Automaton has 95 states and 99 transitions. Word has length 133 [2018-11-14 18:50:14,957 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:50:14,957 INFO L480 AbstractCegarLoop]: Abstraction has 95 states and 99 transitions. [2018-11-14 18:50:14,957 INFO L481 AbstractCegarLoop]: Interpolant automaton has 18 states. [2018-11-14 18:50:14,957 INFO L276 IsEmpty]: Start isEmpty. Operand 95 states and 99 transitions. [2018-11-14 18:50:14,958 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 137 [2018-11-14 18:50:14,958 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:50:14,958 INFO L375 BasicCegarLoop]: trace histogram [18, 16, 15, 15, 15, 15, 4, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:50:14,958 INFO L423 AbstractCegarLoop]: === Iteration 19 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:50:14,959 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:50:14,959 INFO L82 PathProgramCache]: Analyzing trace with hash 1279003789, now seen corresponding path program 15 times [2018-11-14 18:50:14,959 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:50:14,959 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:50:14,959 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:50:14,960 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 18:50:14,960 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:50:14,979 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:50:15,546 INFO L256 TraceCheckUtils]: 0: Hoare triple {10007#true} call ULTIMATE.init(); {10007#true} is VALID [2018-11-14 18:50:15,546 INFO L273 TraceCheckUtils]: 1: Hoare triple {10007#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {10007#true} is VALID [2018-11-14 18:50:15,546 INFO L273 TraceCheckUtils]: 2: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,546 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {10007#true} {10007#true} #69#return; {10007#true} is VALID [2018-11-14 18:50:15,547 INFO L256 TraceCheckUtils]: 4: Hoare triple {10007#true} call #t~ret12 := main(); {10007#true} is VALID [2018-11-14 18:50:15,547 INFO L273 TraceCheckUtils]: 5: Hoare triple {10007#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {10009#(= main_~i~1 0)} is VALID [2018-11-14 18:50:15,548 INFO L273 TraceCheckUtils]: 6: Hoare triple {10009#(= main_~i~1 0)} assume true; {10009#(= main_~i~1 0)} is VALID [2018-11-14 18:50:15,548 INFO L273 TraceCheckUtils]: 7: Hoare triple {10009#(= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10009#(= main_~i~1 0)} is VALID [2018-11-14 18:50:15,548 INFO L273 TraceCheckUtils]: 8: Hoare triple {10009#(= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10010#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:15,549 INFO L273 TraceCheckUtils]: 9: Hoare triple {10010#(<= main_~i~1 1)} assume true; {10010#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:15,549 INFO L273 TraceCheckUtils]: 10: Hoare triple {10010#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10010#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:15,549 INFO L273 TraceCheckUtils]: 11: Hoare triple {10010#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10011#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:15,550 INFO L273 TraceCheckUtils]: 12: Hoare triple {10011#(<= main_~i~1 2)} assume true; {10011#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:15,550 INFO L273 TraceCheckUtils]: 13: Hoare triple {10011#(<= main_~i~1 2)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10011#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:15,551 INFO L273 TraceCheckUtils]: 14: Hoare triple {10011#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10012#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:15,551 INFO L273 TraceCheckUtils]: 15: Hoare triple {10012#(<= main_~i~1 3)} assume true; {10012#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:15,552 INFO L273 TraceCheckUtils]: 16: Hoare triple {10012#(<= main_~i~1 3)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10012#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:15,552 INFO L273 TraceCheckUtils]: 17: Hoare triple {10012#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10013#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:15,553 INFO L273 TraceCheckUtils]: 18: Hoare triple {10013#(<= main_~i~1 4)} assume true; {10013#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:15,553 INFO L273 TraceCheckUtils]: 19: Hoare triple {10013#(<= main_~i~1 4)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10013#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:15,554 INFO L273 TraceCheckUtils]: 20: Hoare triple {10013#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10014#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:15,555 INFO L273 TraceCheckUtils]: 21: Hoare triple {10014#(<= main_~i~1 5)} assume true; {10014#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:15,555 INFO L273 TraceCheckUtils]: 22: Hoare triple {10014#(<= main_~i~1 5)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10014#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:15,556 INFO L273 TraceCheckUtils]: 23: Hoare triple {10014#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10015#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:15,556 INFO L273 TraceCheckUtils]: 24: Hoare triple {10015#(<= main_~i~1 6)} assume true; {10015#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:15,557 INFO L273 TraceCheckUtils]: 25: Hoare triple {10015#(<= main_~i~1 6)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10015#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:15,558 INFO L273 TraceCheckUtils]: 26: Hoare triple {10015#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10016#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:15,558 INFO L273 TraceCheckUtils]: 27: Hoare triple {10016#(<= main_~i~1 7)} assume true; {10016#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:15,559 INFO L273 TraceCheckUtils]: 28: Hoare triple {10016#(<= main_~i~1 7)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10016#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:15,559 INFO L273 TraceCheckUtils]: 29: Hoare triple {10016#(<= main_~i~1 7)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10017#(<= main_~i~1 8)} is VALID [2018-11-14 18:50:15,560 INFO L273 TraceCheckUtils]: 30: Hoare triple {10017#(<= main_~i~1 8)} assume true; {10017#(<= main_~i~1 8)} is VALID [2018-11-14 18:50:15,560 INFO L273 TraceCheckUtils]: 31: Hoare triple {10017#(<= main_~i~1 8)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10017#(<= main_~i~1 8)} is VALID [2018-11-14 18:50:15,561 INFO L273 TraceCheckUtils]: 32: Hoare triple {10017#(<= main_~i~1 8)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10018#(<= main_~i~1 9)} is VALID [2018-11-14 18:50:15,562 INFO L273 TraceCheckUtils]: 33: Hoare triple {10018#(<= main_~i~1 9)} assume true; {10018#(<= main_~i~1 9)} is VALID [2018-11-14 18:50:15,562 INFO L273 TraceCheckUtils]: 34: Hoare triple {10018#(<= main_~i~1 9)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10018#(<= main_~i~1 9)} is VALID [2018-11-14 18:50:15,563 INFO L273 TraceCheckUtils]: 35: Hoare triple {10018#(<= main_~i~1 9)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10019#(<= main_~i~1 10)} is VALID [2018-11-14 18:50:15,563 INFO L273 TraceCheckUtils]: 36: Hoare triple {10019#(<= main_~i~1 10)} assume true; {10019#(<= main_~i~1 10)} is VALID [2018-11-14 18:50:15,564 INFO L273 TraceCheckUtils]: 37: Hoare triple {10019#(<= main_~i~1 10)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10019#(<= main_~i~1 10)} is VALID [2018-11-14 18:50:15,565 INFO L273 TraceCheckUtils]: 38: Hoare triple {10019#(<= main_~i~1 10)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10020#(<= main_~i~1 11)} is VALID [2018-11-14 18:50:15,565 INFO L273 TraceCheckUtils]: 39: Hoare triple {10020#(<= main_~i~1 11)} assume true; {10020#(<= main_~i~1 11)} is VALID [2018-11-14 18:50:15,566 INFO L273 TraceCheckUtils]: 40: Hoare triple {10020#(<= main_~i~1 11)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10020#(<= main_~i~1 11)} is VALID [2018-11-14 18:50:15,566 INFO L273 TraceCheckUtils]: 41: Hoare triple {10020#(<= main_~i~1 11)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10021#(<= main_~i~1 12)} is VALID [2018-11-14 18:50:15,567 INFO L273 TraceCheckUtils]: 42: Hoare triple {10021#(<= main_~i~1 12)} assume true; {10021#(<= main_~i~1 12)} is VALID [2018-11-14 18:50:15,567 INFO L273 TraceCheckUtils]: 43: Hoare triple {10021#(<= main_~i~1 12)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10021#(<= main_~i~1 12)} is VALID [2018-11-14 18:50:15,568 INFO L273 TraceCheckUtils]: 44: Hoare triple {10021#(<= main_~i~1 12)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10022#(<= main_~i~1 13)} is VALID [2018-11-14 18:50:15,569 INFO L273 TraceCheckUtils]: 45: Hoare triple {10022#(<= main_~i~1 13)} assume true; {10022#(<= main_~i~1 13)} is VALID [2018-11-14 18:50:15,569 INFO L273 TraceCheckUtils]: 46: Hoare triple {10022#(<= main_~i~1 13)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10022#(<= main_~i~1 13)} is VALID [2018-11-14 18:50:15,570 INFO L273 TraceCheckUtils]: 47: Hoare triple {10022#(<= main_~i~1 13)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10023#(<= main_~i~1 14)} is VALID [2018-11-14 18:50:15,570 INFO L273 TraceCheckUtils]: 48: Hoare triple {10023#(<= main_~i~1 14)} assume true; {10023#(<= main_~i~1 14)} is VALID [2018-11-14 18:50:15,571 INFO L273 TraceCheckUtils]: 49: Hoare triple {10023#(<= main_~i~1 14)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10023#(<= main_~i~1 14)} is VALID [2018-11-14 18:50:15,572 INFO L273 TraceCheckUtils]: 50: Hoare triple {10023#(<= main_~i~1 14)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10024#(<= main_~i~1 15)} is VALID [2018-11-14 18:50:15,572 INFO L273 TraceCheckUtils]: 51: Hoare triple {10024#(<= main_~i~1 15)} assume true; {10024#(<= main_~i~1 15)} is VALID [2018-11-14 18:50:15,573 INFO L273 TraceCheckUtils]: 52: Hoare triple {10024#(<= main_~i~1 15)} assume !(~i~1 < 20); {10008#false} is VALID [2018-11-14 18:50:15,573 INFO L256 TraceCheckUtils]: 53: Hoare triple {10008#false} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {10007#true} is VALID [2018-11-14 18:50:15,573 INFO L273 TraceCheckUtils]: 54: Hoare triple {10007#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {10007#true} is VALID [2018-11-14 18:50:15,574 INFO L273 TraceCheckUtils]: 55: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,574 INFO L273 TraceCheckUtils]: 56: Hoare triple {10007#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10007#true} is VALID [2018-11-14 18:50:15,574 INFO L273 TraceCheckUtils]: 57: Hoare triple {10007#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10007#true} is VALID [2018-11-14 18:50:15,574 INFO L273 TraceCheckUtils]: 58: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,574 INFO L273 TraceCheckUtils]: 59: Hoare triple {10007#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10007#true} is VALID [2018-11-14 18:50:15,574 INFO L273 TraceCheckUtils]: 60: Hoare triple {10007#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10007#true} is VALID [2018-11-14 18:50:15,575 INFO L273 TraceCheckUtils]: 61: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,575 INFO L273 TraceCheckUtils]: 62: Hoare triple {10007#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10007#true} is VALID [2018-11-14 18:50:15,575 INFO L273 TraceCheckUtils]: 63: Hoare triple {10007#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10007#true} is VALID [2018-11-14 18:50:15,575 INFO L273 TraceCheckUtils]: 64: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,575 INFO L273 TraceCheckUtils]: 65: Hoare triple {10007#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10007#true} is VALID [2018-11-14 18:50:15,576 INFO L273 TraceCheckUtils]: 66: Hoare triple {10007#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10007#true} is VALID [2018-11-14 18:50:15,576 INFO L273 TraceCheckUtils]: 67: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,576 INFO L273 TraceCheckUtils]: 68: Hoare triple {10007#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10007#true} is VALID [2018-11-14 18:50:15,576 INFO L273 TraceCheckUtils]: 69: Hoare triple {10007#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10007#true} is VALID [2018-11-14 18:50:15,576 INFO L273 TraceCheckUtils]: 70: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,576 INFO L273 TraceCheckUtils]: 71: Hoare triple {10007#true} assume !(~i~0 < 20); {10007#true} is VALID [2018-11-14 18:50:15,576 INFO L273 TraceCheckUtils]: 72: Hoare triple {10007#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {10007#true} is VALID [2018-11-14 18:50:15,576 INFO L273 TraceCheckUtils]: 73: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,576 INFO L268 TraceCheckUtils]: 74: Hoare quadruple {10007#true} {10008#false} #73#return; {10008#false} is VALID [2018-11-14 18:50:15,577 INFO L273 TraceCheckUtils]: 75: Hoare triple {10008#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {10008#false} is VALID [2018-11-14 18:50:15,577 INFO L256 TraceCheckUtils]: 76: Hoare triple {10008#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {10007#true} is VALID [2018-11-14 18:50:15,577 INFO L273 TraceCheckUtils]: 77: Hoare triple {10007#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {10007#true} is VALID [2018-11-14 18:50:15,577 INFO L273 TraceCheckUtils]: 78: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,577 INFO L273 TraceCheckUtils]: 79: Hoare triple {10007#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10007#true} is VALID [2018-11-14 18:50:15,577 INFO L273 TraceCheckUtils]: 80: Hoare triple {10007#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10007#true} is VALID [2018-11-14 18:50:15,577 INFO L273 TraceCheckUtils]: 81: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,577 INFO L273 TraceCheckUtils]: 82: Hoare triple {10007#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10007#true} is VALID [2018-11-14 18:50:15,578 INFO L273 TraceCheckUtils]: 83: Hoare triple {10007#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10007#true} is VALID [2018-11-14 18:50:15,578 INFO L273 TraceCheckUtils]: 84: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,578 INFO L273 TraceCheckUtils]: 85: Hoare triple {10007#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10007#true} is VALID [2018-11-14 18:50:15,578 INFO L273 TraceCheckUtils]: 86: Hoare triple {10007#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10007#true} is VALID [2018-11-14 18:50:15,578 INFO L273 TraceCheckUtils]: 87: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,578 INFO L273 TraceCheckUtils]: 88: Hoare triple {10007#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10007#true} is VALID [2018-11-14 18:50:15,578 INFO L273 TraceCheckUtils]: 89: Hoare triple {10007#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10007#true} is VALID [2018-11-14 18:50:15,578 INFO L273 TraceCheckUtils]: 90: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,578 INFO L273 TraceCheckUtils]: 91: Hoare triple {10007#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10007#true} is VALID [2018-11-14 18:50:15,579 INFO L273 TraceCheckUtils]: 92: Hoare triple {10007#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10007#true} is VALID [2018-11-14 18:50:15,579 INFO L273 TraceCheckUtils]: 93: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,579 INFO L273 TraceCheckUtils]: 94: Hoare triple {10007#true} assume !(~i~0 < 20); {10007#true} is VALID [2018-11-14 18:50:15,579 INFO L273 TraceCheckUtils]: 95: Hoare triple {10007#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {10007#true} is VALID [2018-11-14 18:50:15,579 INFO L273 TraceCheckUtils]: 96: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,579 INFO L268 TraceCheckUtils]: 97: Hoare quadruple {10007#true} {10008#false} #75#return; {10008#false} is VALID [2018-11-14 18:50:15,579 INFO L273 TraceCheckUtils]: 98: Hoare triple {10008#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {10008#false} is VALID [2018-11-14 18:50:15,579 INFO L273 TraceCheckUtils]: 99: Hoare triple {10008#false} assume true; {10008#false} is VALID [2018-11-14 18:50:15,579 INFO L273 TraceCheckUtils]: 100: Hoare triple {10008#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {10008#false} is VALID [2018-11-14 18:50:15,580 INFO L273 TraceCheckUtils]: 101: Hoare triple {10008#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {10008#false} is VALID [2018-11-14 18:50:15,580 INFO L273 TraceCheckUtils]: 102: Hoare triple {10008#false} assume true; {10008#false} is VALID [2018-11-14 18:50:15,580 INFO L273 TraceCheckUtils]: 103: Hoare triple {10008#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {10008#false} is VALID [2018-11-14 18:50:15,580 INFO L273 TraceCheckUtils]: 104: Hoare triple {10008#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {10008#false} is VALID [2018-11-14 18:50:15,580 INFO L273 TraceCheckUtils]: 105: Hoare triple {10008#false} assume true; {10008#false} is VALID [2018-11-14 18:50:15,580 INFO L273 TraceCheckUtils]: 106: Hoare triple {10008#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {10008#false} is VALID [2018-11-14 18:50:15,580 INFO L273 TraceCheckUtils]: 107: Hoare triple {10008#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {10008#false} is VALID [2018-11-14 18:50:15,580 INFO L273 TraceCheckUtils]: 108: Hoare triple {10008#false} assume true; {10008#false} is VALID [2018-11-14 18:50:15,580 INFO L273 TraceCheckUtils]: 109: Hoare triple {10008#false} assume !(~i~2 < 19); {10008#false} is VALID [2018-11-14 18:50:15,581 INFO L273 TraceCheckUtils]: 110: Hoare triple {10008#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {10008#false} is VALID [2018-11-14 18:50:15,581 INFO L256 TraceCheckUtils]: 111: Hoare triple {10008#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {10007#true} is VALID [2018-11-14 18:50:15,581 INFO L273 TraceCheckUtils]: 112: Hoare triple {10007#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {10007#true} is VALID [2018-11-14 18:50:15,581 INFO L273 TraceCheckUtils]: 113: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,581 INFO L273 TraceCheckUtils]: 114: Hoare triple {10007#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10007#true} is VALID [2018-11-14 18:50:15,581 INFO L273 TraceCheckUtils]: 115: Hoare triple {10007#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10007#true} is VALID [2018-11-14 18:50:15,581 INFO L273 TraceCheckUtils]: 116: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,581 INFO L273 TraceCheckUtils]: 117: Hoare triple {10007#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10007#true} is VALID [2018-11-14 18:50:15,581 INFO L273 TraceCheckUtils]: 118: Hoare triple {10007#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10007#true} is VALID [2018-11-14 18:50:15,582 INFO L273 TraceCheckUtils]: 119: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,582 INFO L273 TraceCheckUtils]: 120: Hoare triple {10007#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10007#true} is VALID [2018-11-14 18:50:15,582 INFO L273 TraceCheckUtils]: 121: Hoare triple {10007#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10007#true} is VALID [2018-11-14 18:50:15,582 INFO L273 TraceCheckUtils]: 122: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,582 INFO L273 TraceCheckUtils]: 123: Hoare triple {10007#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10007#true} is VALID [2018-11-14 18:50:15,582 INFO L273 TraceCheckUtils]: 124: Hoare triple {10007#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10007#true} is VALID [2018-11-14 18:50:15,582 INFO L273 TraceCheckUtils]: 125: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,582 INFO L273 TraceCheckUtils]: 126: Hoare triple {10007#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10007#true} is VALID [2018-11-14 18:50:15,583 INFO L273 TraceCheckUtils]: 127: Hoare triple {10007#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10007#true} is VALID [2018-11-14 18:50:15,583 INFO L273 TraceCheckUtils]: 128: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,583 INFO L273 TraceCheckUtils]: 129: Hoare triple {10007#true} assume !(~i~0 < 20); {10007#true} is VALID [2018-11-14 18:50:15,583 INFO L273 TraceCheckUtils]: 130: Hoare triple {10007#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {10007#true} is VALID [2018-11-14 18:50:15,583 INFO L273 TraceCheckUtils]: 131: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,583 INFO L268 TraceCheckUtils]: 132: Hoare quadruple {10007#true} {10008#false} #77#return; {10008#false} is VALID [2018-11-14 18:50:15,583 INFO L273 TraceCheckUtils]: 133: Hoare triple {10008#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {10008#false} is VALID [2018-11-14 18:50:15,583 INFO L273 TraceCheckUtils]: 134: Hoare triple {10008#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {10008#false} is VALID [2018-11-14 18:50:15,583 INFO L273 TraceCheckUtils]: 135: Hoare triple {10008#false} assume !false; {10008#false} is VALID [2018-11-14 18:50:15,591 INFO L134 CoverageAnalysis]: Checked inductivity of 783 backedges. 0 proven. 345 refuted. 0 times theorem prover too weak. 438 trivial. 0 not checked. [2018-11-14 18:50:15,591 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:50:15,592 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 17 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 17 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:50:15,600 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-14 18:50:15,642 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 5 check-sat command(s) [2018-11-14 18:50:15,642 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 18:50:15,663 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:50:15,664 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:50:15,836 INFO L256 TraceCheckUtils]: 0: Hoare triple {10007#true} call ULTIMATE.init(); {10007#true} is VALID [2018-11-14 18:50:15,836 INFO L273 TraceCheckUtils]: 1: Hoare triple {10007#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {10007#true} is VALID [2018-11-14 18:50:15,837 INFO L273 TraceCheckUtils]: 2: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,837 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {10007#true} {10007#true} #69#return; {10007#true} is VALID [2018-11-14 18:50:15,837 INFO L256 TraceCheckUtils]: 4: Hoare triple {10007#true} call #t~ret12 := main(); {10007#true} is VALID [2018-11-14 18:50:15,837 INFO L273 TraceCheckUtils]: 5: Hoare triple {10007#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {10007#true} is VALID [2018-11-14 18:50:15,837 INFO L273 TraceCheckUtils]: 6: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,838 INFO L273 TraceCheckUtils]: 7: Hoare triple {10007#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10007#true} is VALID [2018-11-14 18:50:15,838 INFO L273 TraceCheckUtils]: 8: Hoare triple {10007#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10007#true} is VALID [2018-11-14 18:50:15,838 INFO L273 TraceCheckUtils]: 9: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,838 INFO L273 TraceCheckUtils]: 10: Hoare triple {10007#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10007#true} is VALID [2018-11-14 18:50:15,838 INFO L273 TraceCheckUtils]: 11: Hoare triple {10007#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10007#true} is VALID [2018-11-14 18:50:15,838 INFO L273 TraceCheckUtils]: 12: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,838 INFO L273 TraceCheckUtils]: 13: Hoare triple {10007#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10007#true} is VALID [2018-11-14 18:50:15,839 INFO L273 TraceCheckUtils]: 14: Hoare triple {10007#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10007#true} is VALID [2018-11-14 18:50:15,839 INFO L273 TraceCheckUtils]: 15: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,839 INFO L273 TraceCheckUtils]: 16: Hoare triple {10007#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10007#true} is VALID [2018-11-14 18:50:15,839 INFO L273 TraceCheckUtils]: 17: Hoare triple {10007#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10007#true} is VALID [2018-11-14 18:50:15,839 INFO L273 TraceCheckUtils]: 18: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,839 INFO L273 TraceCheckUtils]: 19: Hoare triple {10007#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10007#true} is VALID [2018-11-14 18:50:15,839 INFO L273 TraceCheckUtils]: 20: Hoare triple {10007#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10007#true} is VALID [2018-11-14 18:50:15,839 INFO L273 TraceCheckUtils]: 21: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,839 INFO L273 TraceCheckUtils]: 22: Hoare triple {10007#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10007#true} is VALID [2018-11-14 18:50:15,840 INFO L273 TraceCheckUtils]: 23: Hoare triple {10007#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10007#true} is VALID [2018-11-14 18:50:15,840 INFO L273 TraceCheckUtils]: 24: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,840 INFO L273 TraceCheckUtils]: 25: Hoare triple {10007#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10007#true} is VALID [2018-11-14 18:50:15,840 INFO L273 TraceCheckUtils]: 26: Hoare triple {10007#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10007#true} is VALID [2018-11-14 18:50:15,840 INFO L273 TraceCheckUtils]: 27: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,840 INFO L273 TraceCheckUtils]: 28: Hoare triple {10007#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10007#true} is VALID [2018-11-14 18:50:15,840 INFO L273 TraceCheckUtils]: 29: Hoare triple {10007#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10007#true} is VALID [2018-11-14 18:50:15,840 INFO L273 TraceCheckUtils]: 30: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,840 INFO L273 TraceCheckUtils]: 31: Hoare triple {10007#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10007#true} is VALID [2018-11-14 18:50:15,841 INFO L273 TraceCheckUtils]: 32: Hoare triple {10007#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10007#true} is VALID [2018-11-14 18:50:15,841 INFO L273 TraceCheckUtils]: 33: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,841 INFO L273 TraceCheckUtils]: 34: Hoare triple {10007#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10007#true} is VALID [2018-11-14 18:50:15,841 INFO L273 TraceCheckUtils]: 35: Hoare triple {10007#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10007#true} is VALID [2018-11-14 18:50:15,841 INFO L273 TraceCheckUtils]: 36: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,841 INFO L273 TraceCheckUtils]: 37: Hoare triple {10007#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10007#true} is VALID [2018-11-14 18:50:15,841 INFO L273 TraceCheckUtils]: 38: Hoare triple {10007#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10007#true} is VALID [2018-11-14 18:50:15,841 INFO L273 TraceCheckUtils]: 39: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,841 INFO L273 TraceCheckUtils]: 40: Hoare triple {10007#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10007#true} is VALID [2018-11-14 18:50:15,842 INFO L273 TraceCheckUtils]: 41: Hoare triple {10007#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10007#true} is VALID [2018-11-14 18:50:15,842 INFO L273 TraceCheckUtils]: 42: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,842 INFO L273 TraceCheckUtils]: 43: Hoare triple {10007#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10007#true} is VALID [2018-11-14 18:50:15,842 INFO L273 TraceCheckUtils]: 44: Hoare triple {10007#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10007#true} is VALID [2018-11-14 18:50:15,842 INFO L273 TraceCheckUtils]: 45: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,842 INFO L273 TraceCheckUtils]: 46: Hoare triple {10007#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10007#true} is VALID [2018-11-14 18:50:15,842 INFO L273 TraceCheckUtils]: 47: Hoare triple {10007#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10007#true} is VALID [2018-11-14 18:50:15,842 INFO L273 TraceCheckUtils]: 48: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,843 INFO L273 TraceCheckUtils]: 49: Hoare triple {10007#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10007#true} is VALID [2018-11-14 18:50:15,843 INFO L273 TraceCheckUtils]: 50: Hoare triple {10007#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10007#true} is VALID [2018-11-14 18:50:15,843 INFO L273 TraceCheckUtils]: 51: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,843 INFO L273 TraceCheckUtils]: 52: Hoare triple {10007#true} assume !(~i~1 < 20); {10007#true} is VALID [2018-11-14 18:50:15,843 INFO L256 TraceCheckUtils]: 53: Hoare triple {10007#true} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {10007#true} is VALID [2018-11-14 18:50:15,843 INFO L273 TraceCheckUtils]: 54: Hoare triple {10007#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {10007#true} is VALID [2018-11-14 18:50:15,843 INFO L273 TraceCheckUtils]: 55: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,843 INFO L273 TraceCheckUtils]: 56: Hoare triple {10007#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10007#true} is VALID [2018-11-14 18:50:15,843 INFO L273 TraceCheckUtils]: 57: Hoare triple {10007#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10007#true} is VALID [2018-11-14 18:50:15,844 INFO L273 TraceCheckUtils]: 58: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,844 INFO L273 TraceCheckUtils]: 59: Hoare triple {10007#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10007#true} is VALID [2018-11-14 18:50:15,844 INFO L273 TraceCheckUtils]: 60: Hoare triple {10007#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10007#true} is VALID [2018-11-14 18:50:15,844 INFO L273 TraceCheckUtils]: 61: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,844 INFO L273 TraceCheckUtils]: 62: Hoare triple {10007#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10007#true} is VALID [2018-11-14 18:50:15,844 INFO L273 TraceCheckUtils]: 63: Hoare triple {10007#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10007#true} is VALID [2018-11-14 18:50:15,844 INFO L273 TraceCheckUtils]: 64: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,844 INFO L273 TraceCheckUtils]: 65: Hoare triple {10007#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10007#true} is VALID [2018-11-14 18:50:15,844 INFO L273 TraceCheckUtils]: 66: Hoare triple {10007#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10007#true} is VALID [2018-11-14 18:50:15,845 INFO L273 TraceCheckUtils]: 67: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,845 INFO L273 TraceCheckUtils]: 68: Hoare triple {10007#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10007#true} is VALID [2018-11-14 18:50:15,845 INFO L273 TraceCheckUtils]: 69: Hoare triple {10007#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10007#true} is VALID [2018-11-14 18:50:15,845 INFO L273 TraceCheckUtils]: 70: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,845 INFO L273 TraceCheckUtils]: 71: Hoare triple {10007#true} assume !(~i~0 < 20); {10007#true} is VALID [2018-11-14 18:50:15,845 INFO L273 TraceCheckUtils]: 72: Hoare triple {10007#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {10007#true} is VALID [2018-11-14 18:50:15,845 INFO L273 TraceCheckUtils]: 73: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,845 INFO L268 TraceCheckUtils]: 74: Hoare quadruple {10007#true} {10007#true} #73#return; {10007#true} is VALID [2018-11-14 18:50:15,846 INFO L273 TraceCheckUtils]: 75: Hoare triple {10007#true} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {10007#true} is VALID [2018-11-14 18:50:15,846 INFO L256 TraceCheckUtils]: 76: Hoare triple {10007#true} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {10007#true} is VALID [2018-11-14 18:50:15,846 INFO L273 TraceCheckUtils]: 77: Hoare triple {10007#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {10007#true} is VALID [2018-11-14 18:50:15,846 INFO L273 TraceCheckUtils]: 78: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,846 INFO L273 TraceCheckUtils]: 79: Hoare triple {10007#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10007#true} is VALID [2018-11-14 18:50:15,846 INFO L273 TraceCheckUtils]: 80: Hoare triple {10007#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10007#true} is VALID [2018-11-14 18:50:15,846 INFO L273 TraceCheckUtils]: 81: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,846 INFO L273 TraceCheckUtils]: 82: Hoare triple {10007#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10007#true} is VALID [2018-11-14 18:50:15,846 INFO L273 TraceCheckUtils]: 83: Hoare triple {10007#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10007#true} is VALID [2018-11-14 18:50:15,847 INFO L273 TraceCheckUtils]: 84: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,847 INFO L273 TraceCheckUtils]: 85: Hoare triple {10007#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10007#true} is VALID [2018-11-14 18:50:15,847 INFO L273 TraceCheckUtils]: 86: Hoare triple {10007#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10007#true} is VALID [2018-11-14 18:50:15,847 INFO L273 TraceCheckUtils]: 87: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,847 INFO L273 TraceCheckUtils]: 88: Hoare triple {10007#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10007#true} is VALID [2018-11-14 18:50:15,847 INFO L273 TraceCheckUtils]: 89: Hoare triple {10007#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10007#true} is VALID [2018-11-14 18:50:15,847 INFO L273 TraceCheckUtils]: 90: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,847 INFO L273 TraceCheckUtils]: 91: Hoare triple {10007#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10007#true} is VALID [2018-11-14 18:50:15,847 INFO L273 TraceCheckUtils]: 92: Hoare triple {10007#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10007#true} is VALID [2018-11-14 18:50:15,848 INFO L273 TraceCheckUtils]: 93: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,848 INFO L273 TraceCheckUtils]: 94: Hoare triple {10007#true} assume !(~i~0 < 20); {10007#true} is VALID [2018-11-14 18:50:15,848 INFO L273 TraceCheckUtils]: 95: Hoare triple {10007#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {10007#true} is VALID [2018-11-14 18:50:15,848 INFO L273 TraceCheckUtils]: 96: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:50:15,848 INFO L268 TraceCheckUtils]: 97: Hoare quadruple {10007#true} {10007#true} #75#return; {10007#true} is VALID [2018-11-14 18:50:15,849 INFO L273 TraceCheckUtils]: 98: Hoare triple {10007#true} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {10322#(<= main_~i~2 0)} is VALID [2018-11-14 18:50:15,849 INFO L273 TraceCheckUtils]: 99: Hoare triple {10322#(<= main_~i~2 0)} assume true; {10322#(<= main_~i~2 0)} is VALID [2018-11-14 18:50:15,849 INFO L273 TraceCheckUtils]: 100: Hoare triple {10322#(<= main_~i~2 0)} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {10322#(<= main_~i~2 0)} is VALID [2018-11-14 18:50:15,850 INFO L273 TraceCheckUtils]: 101: Hoare triple {10322#(<= main_~i~2 0)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {10332#(<= main_~i~2 1)} is VALID [2018-11-14 18:50:15,850 INFO L273 TraceCheckUtils]: 102: Hoare triple {10332#(<= main_~i~2 1)} assume true; {10332#(<= main_~i~2 1)} is VALID [2018-11-14 18:50:15,850 INFO L273 TraceCheckUtils]: 103: Hoare triple {10332#(<= main_~i~2 1)} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {10332#(<= main_~i~2 1)} is VALID [2018-11-14 18:50:15,851 INFO L273 TraceCheckUtils]: 104: Hoare triple {10332#(<= main_~i~2 1)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {10342#(<= main_~i~2 2)} is VALID [2018-11-14 18:50:15,851 INFO L273 TraceCheckUtils]: 105: Hoare triple {10342#(<= main_~i~2 2)} assume true; {10342#(<= main_~i~2 2)} is VALID [2018-11-14 18:50:15,851 INFO L273 TraceCheckUtils]: 106: Hoare triple {10342#(<= main_~i~2 2)} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {10342#(<= main_~i~2 2)} is VALID [2018-11-14 18:50:15,852 INFO L273 TraceCheckUtils]: 107: Hoare triple {10342#(<= main_~i~2 2)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {10352#(<= main_~i~2 3)} is VALID [2018-11-14 18:50:15,852 INFO L273 TraceCheckUtils]: 108: Hoare triple {10352#(<= main_~i~2 3)} assume true; {10352#(<= main_~i~2 3)} is VALID [2018-11-14 18:50:15,853 INFO L273 TraceCheckUtils]: 109: Hoare triple {10352#(<= main_~i~2 3)} assume !(~i~2 < 19); {10008#false} is VALID [2018-11-14 18:50:15,853 INFO L273 TraceCheckUtils]: 110: Hoare triple {10008#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {10008#false} is VALID [2018-11-14 18:50:15,853 INFO L256 TraceCheckUtils]: 111: Hoare triple {10008#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {10008#false} is VALID [2018-11-14 18:50:15,853 INFO L273 TraceCheckUtils]: 112: Hoare triple {10008#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {10008#false} is VALID [2018-11-14 18:50:15,854 INFO L273 TraceCheckUtils]: 113: Hoare triple {10008#false} assume true; {10008#false} is VALID [2018-11-14 18:50:15,854 INFO L273 TraceCheckUtils]: 114: Hoare triple {10008#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10008#false} is VALID [2018-11-14 18:50:15,854 INFO L273 TraceCheckUtils]: 115: Hoare triple {10008#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10008#false} is VALID [2018-11-14 18:50:15,854 INFO L273 TraceCheckUtils]: 116: Hoare triple {10008#false} assume true; {10008#false} is VALID [2018-11-14 18:50:15,855 INFO L273 TraceCheckUtils]: 117: Hoare triple {10008#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10008#false} is VALID [2018-11-14 18:50:15,855 INFO L273 TraceCheckUtils]: 118: Hoare triple {10008#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10008#false} is VALID [2018-11-14 18:50:15,855 INFO L273 TraceCheckUtils]: 119: Hoare triple {10008#false} assume true; {10008#false} is VALID [2018-11-14 18:50:15,855 INFO L273 TraceCheckUtils]: 120: Hoare triple {10008#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10008#false} is VALID [2018-11-14 18:50:15,856 INFO L273 TraceCheckUtils]: 121: Hoare triple {10008#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10008#false} is VALID [2018-11-14 18:50:15,856 INFO L273 TraceCheckUtils]: 122: Hoare triple {10008#false} assume true; {10008#false} is VALID [2018-11-14 18:50:15,856 INFO L273 TraceCheckUtils]: 123: Hoare triple {10008#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10008#false} is VALID [2018-11-14 18:50:15,856 INFO L273 TraceCheckUtils]: 124: Hoare triple {10008#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10008#false} is VALID [2018-11-14 18:50:15,856 INFO L273 TraceCheckUtils]: 125: Hoare triple {10008#false} assume true; {10008#false} is VALID [2018-11-14 18:50:15,857 INFO L273 TraceCheckUtils]: 126: Hoare triple {10008#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10008#false} is VALID [2018-11-14 18:50:15,857 INFO L273 TraceCheckUtils]: 127: Hoare triple {10008#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10008#false} is VALID [2018-11-14 18:50:15,857 INFO L273 TraceCheckUtils]: 128: Hoare triple {10008#false} assume true; {10008#false} is VALID [2018-11-14 18:50:15,857 INFO L273 TraceCheckUtils]: 129: Hoare triple {10008#false} assume !(~i~0 < 20); {10008#false} is VALID [2018-11-14 18:50:15,857 INFO L273 TraceCheckUtils]: 130: Hoare triple {10008#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {10008#false} is VALID [2018-11-14 18:50:15,857 INFO L273 TraceCheckUtils]: 131: Hoare triple {10008#false} assume true; {10008#false} is VALID [2018-11-14 18:50:15,857 INFO L268 TraceCheckUtils]: 132: Hoare quadruple {10008#false} {10008#false} #77#return; {10008#false} is VALID [2018-11-14 18:50:15,858 INFO L273 TraceCheckUtils]: 133: Hoare triple {10008#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {10008#false} is VALID [2018-11-14 18:50:15,858 INFO L273 TraceCheckUtils]: 134: Hoare triple {10008#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {10008#false} is VALID [2018-11-14 18:50:15,858 INFO L273 TraceCheckUtils]: 135: Hoare triple {10008#false} assume !false; {10008#false} is VALID [2018-11-14 18:50:15,867 INFO L134 CoverageAnalysis]: Checked inductivity of 783 backedges. 202 proven. 15 refuted. 0 times theorem prover too weak. 566 trivial. 0 not checked. [2018-11-14 18:50:15,888 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:50:15,888 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [18, 6] total 22 [2018-11-14 18:50:15,889 INFO L78 Accepts]: Start accepts. Automaton has 22 states. Word has length 136 [2018-11-14 18:50:15,889 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:50:15,889 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 22 states. [2018-11-14 18:50:15,999 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 107 edges. 107 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:50:15,999 INFO L459 AbstractCegarLoop]: Interpolant automaton has 22 states [2018-11-14 18:50:15,999 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2018-11-14 18:50:16,000 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=167, Invalid=295, Unknown=0, NotChecked=0, Total=462 [2018-11-14 18:50:16,000 INFO L87 Difference]: Start difference. First operand 95 states and 99 transitions. Second operand 22 states. [2018-11-14 18:50:16,490 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:16,490 INFO L93 Difference]: Finished difference Result 145 states and 154 transitions. [2018-11-14 18:50:16,490 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2018-11-14 18:50:16,490 INFO L78 Accepts]: Start accepts. Automaton has 22 states. Word has length 136 [2018-11-14 18:50:16,491 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:50:16,491 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 22 states. [2018-11-14 18:50:16,492 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 118 transitions. [2018-11-14 18:50:16,492 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 22 states. [2018-11-14 18:50:16,493 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 118 transitions. [2018-11-14 18:50:16,494 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 22 states and 118 transitions. [2018-11-14 18:50:16,810 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 118 edges. 118 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:50:16,812 INFO L225 Difference]: With dead ends: 145 [2018-11-14 18:50:16,813 INFO L226 Difference]: Without dead ends: 103 [2018-11-14 18:50:16,813 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 153 GetRequests, 133 SyntacticMatches, 0 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 60 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=167, Invalid=295, Unknown=0, NotChecked=0, Total=462 [2018-11-14 18:50:16,813 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 103 states. [2018-11-14 18:50:16,857 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 103 to 101. [2018-11-14 18:50:16,857 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:50:16,857 INFO L82 GeneralOperation]: Start isEquivalent. First operand 103 states. Second operand 101 states. [2018-11-14 18:50:16,857 INFO L74 IsIncluded]: Start isIncluded. First operand 103 states. Second operand 101 states. [2018-11-14 18:50:16,858 INFO L87 Difference]: Start difference. First operand 103 states. Second operand 101 states. [2018-11-14 18:50:16,860 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:16,860 INFO L93 Difference]: Finished difference Result 103 states and 107 transitions. [2018-11-14 18:50:16,860 INFO L276 IsEmpty]: Start isEmpty. Operand 103 states and 107 transitions. [2018-11-14 18:50:16,861 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:50:16,861 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:50:16,861 INFO L74 IsIncluded]: Start isIncluded. First operand 101 states. Second operand 103 states. [2018-11-14 18:50:16,861 INFO L87 Difference]: Start difference. First operand 101 states. Second operand 103 states. [2018-11-14 18:50:16,863 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:16,864 INFO L93 Difference]: Finished difference Result 103 states and 107 transitions. [2018-11-14 18:50:16,864 INFO L276 IsEmpty]: Start isEmpty. Operand 103 states and 107 transitions. [2018-11-14 18:50:16,864 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:50:16,864 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:50:16,864 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:50:16,865 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:50:16,865 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 101 states. [2018-11-14 18:50:16,866 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 101 states to 101 states and 105 transitions. [2018-11-14 18:50:16,867 INFO L78 Accepts]: Start accepts. Automaton has 101 states and 105 transitions. Word has length 136 [2018-11-14 18:50:16,867 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:50:16,867 INFO L480 AbstractCegarLoop]: Abstraction has 101 states and 105 transitions. [2018-11-14 18:50:16,867 INFO L481 AbstractCegarLoop]: Interpolant automaton has 22 states. [2018-11-14 18:50:16,867 INFO L276 IsEmpty]: Start isEmpty. Operand 101 states and 105 transitions. [2018-11-14 18:50:16,868 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 143 [2018-11-14 18:50:16,868 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:50:16,869 INFO L375 BasicCegarLoop]: trace histogram [18, 17, 16, 16, 15, 15, 5, 4, 4, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:50:16,869 INFO L423 AbstractCegarLoop]: === Iteration 20 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:50:16,869 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:50:16,869 INFO L82 PathProgramCache]: Analyzing trace with hash 562002789, now seen corresponding path program 16 times [2018-11-14 18:50:16,869 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:50:16,869 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:50:16,870 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:50:16,870 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 18:50:16,870 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:50:16,891 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:50:17,274 INFO L256 TraceCheckUtils]: 0: Hoare triple {10974#true} call ULTIMATE.init(); {10974#true} is VALID [2018-11-14 18:50:17,275 INFO L273 TraceCheckUtils]: 1: Hoare triple {10974#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {10974#true} is VALID [2018-11-14 18:50:17,275 INFO L273 TraceCheckUtils]: 2: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,275 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {10974#true} {10974#true} #69#return; {10974#true} is VALID [2018-11-14 18:50:17,275 INFO L256 TraceCheckUtils]: 4: Hoare triple {10974#true} call #t~ret12 := main(); {10974#true} is VALID [2018-11-14 18:50:17,275 INFO L273 TraceCheckUtils]: 5: Hoare triple {10974#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {10976#(= main_~i~1 0)} is VALID [2018-11-14 18:50:17,276 INFO L273 TraceCheckUtils]: 6: Hoare triple {10976#(= main_~i~1 0)} assume true; {10976#(= main_~i~1 0)} is VALID [2018-11-14 18:50:17,276 INFO L273 TraceCheckUtils]: 7: Hoare triple {10976#(= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10976#(= main_~i~1 0)} is VALID [2018-11-14 18:50:17,277 INFO L273 TraceCheckUtils]: 8: Hoare triple {10976#(= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10977#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:17,277 INFO L273 TraceCheckUtils]: 9: Hoare triple {10977#(<= main_~i~1 1)} assume true; {10977#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:17,278 INFO L273 TraceCheckUtils]: 10: Hoare triple {10977#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10977#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:17,278 INFO L273 TraceCheckUtils]: 11: Hoare triple {10977#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10978#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:17,279 INFO L273 TraceCheckUtils]: 12: Hoare triple {10978#(<= main_~i~1 2)} assume true; {10978#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:17,279 INFO L273 TraceCheckUtils]: 13: Hoare triple {10978#(<= main_~i~1 2)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10978#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:17,280 INFO L273 TraceCheckUtils]: 14: Hoare triple {10978#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10979#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:17,281 INFO L273 TraceCheckUtils]: 15: Hoare triple {10979#(<= main_~i~1 3)} assume true; {10979#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:17,281 INFO L273 TraceCheckUtils]: 16: Hoare triple {10979#(<= main_~i~1 3)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10979#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:17,282 INFO L273 TraceCheckUtils]: 17: Hoare triple {10979#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10980#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:17,282 INFO L273 TraceCheckUtils]: 18: Hoare triple {10980#(<= main_~i~1 4)} assume true; {10980#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:17,283 INFO L273 TraceCheckUtils]: 19: Hoare triple {10980#(<= main_~i~1 4)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10980#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:17,284 INFO L273 TraceCheckUtils]: 20: Hoare triple {10980#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10981#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:17,284 INFO L273 TraceCheckUtils]: 21: Hoare triple {10981#(<= main_~i~1 5)} assume true; {10981#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:17,285 INFO L273 TraceCheckUtils]: 22: Hoare triple {10981#(<= main_~i~1 5)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10981#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:17,285 INFO L273 TraceCheckUtils]: 23: Hoare triple {10981#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10982#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:17,286 INFO L273 TraceCheckUtils]: 24: Hoare triple {10982#(<= main_~i~1 6)} assume true; {10982#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:17,286 INFO L273 TraceCheckUtils]: 25: Hoare triple {10982#(<= main_~i~1 6)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10982#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:17,287 INFO L273 TraceCheckUtils]: 26: Hoare triple {10982#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10983#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:17,288 INFO L273 TraceCheckUtils]: 27: Hoare triple {10983#(<= main_~i~1 7)} assume true; {10983#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:17,288 INFO L273 TraceCheckUtils]: 28: Hoare triple {10983#(<= main_~i~1 7)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10983#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:17,289 INFO L273 TraceCheckUtils]: 29: Hoare triple {10983#(<= main_~i~1 7)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10984#(<= main_~i~1 8)} is VALID [2018-11-14 18:50:17,289 INFO L273 TraceCheckUtils]: 30: Hoare triple {10984#(<= main_~i~1 8)} assume true; {10984#(<= main_~i~1 8)} is VALID [2018-11-14 18:50:17,290 INFO L273 TraceCheckUtils]: 31: Hoare triple {10984#(<= main_~i~1 8)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10984#(<= main_~i~1 8)} is VALID [2018-11-14 18:50:17,291 INFO L273 TraceCheckUtils]: 32: Hoare triple {10984#(<= main_~i~1 8)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10985#(<= main_~i~1 9)} is VALID [2018-11-14 18:50:17,291 INFO L273 TraceCheckUtils]: 33: Hoare triple {10985#(<= main_~i~1 9)} assume true; {10985#(<= main_~i~1 9)} is VALID [2018-11-14 18:50:17,292 INFO L273 TraceCheckUtils]: 34: Hoare triple {10985#(<= main_~i~1 9)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10985#(<= main_~i~1 9)} is VALID [2018-11-14 18:50:17,292 INFO L273 TraceCheckUtils]: 35: Hoare triple {10985#(<= main_~i~1 9)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10986#(<= main_~i~1 10)} is VALID [2018-11-14 18:50:17,293 INFO L273 TraceCheckUtils]: 36: Hoare triple {10986#(<= main_~i~1 10)} assume true; {10986#(<= main_~i~1 10)} is VALID [2018-11-14 18:50:17,294 INFO L273 TraceCheckUtils]: 37: Hoare triple {10986#(<= main_~i~1 10)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10986#(<= main_~i~1 10)} is VALID [2018-11-14 18:50:17,294 INFO L273 TraceCheckUtils]: 38: Hoare triple {10986#(<= main_~i~1 10)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10987#(<= main_~i~1 11)} is VALID [2018-11-14 18:50:17,295 INFO L273 TraceCheckUtils]: 39: Hoare triple {10987#(<= main_~i~1 11)} assume true; {10987#(<= main_~i~1 11)} is VALID [2018-11-14 18:50:17,295 INFO L273 TraceCheckUtils]: 40: Hoare triple {10987#(<= main_~i~1 11)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10987#(<= main_~i~1 11)} is VALID [2018-11-14 18:50:17,296 INFO L273 TraceCheckUtils]: 41: Hoare triple {10987#(<= main_~i~1 11)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10988#(<= main_~i~1 12)} is VALID [2018-11-14 18:50:17,297 INFO L273 TraceCheckUtils]: 42: Hoare triple {10988#(<= main_~i~1 12)} assume true; {10988#(<= main_~i~1 12)} is VALID [2018-11-14 18:50:17,297 INFO L273 TraceCheckUtils]: 43: Hoare triple {10988#(<= main_~i~1 12)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10988#(<= main_~i~1 12)} is VALID [2018-11-14 18:50:17,298 INFO L273 TraceCheckUtils]: 44: Hoare triple {10988#(<= main_~i~1 12)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10989#(<= main_~i~1 13)} is VALID [2018-11-14 18:50:17,298 INFO L273 TraceCheckUtils]: 45: Hoare triple {10989#(<= main_~i~1 13)} assume true; {10989#(<= main_~i~1 13)} is VALID [2018-11-14 18:50:17,299 INFO L273 TraceCheckUtils]: 46: Hoare triple {10989#(<= main_~i~1 13)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10989#(<= main_~i~1 13)} is VALID [2018-11-14 18:50:17,300 INFO L273 TraceCheckUtils]: 47: Hoare triple {10989#(<= main_~i~1 13)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10990#(<= main_~i~1 14)} is VALID [2018-11-14 18:50:17,300 INFO L273 TraceCheckUtils]: 48: Hoare triple {10990#(<= main_~i~1 14)} assume true; {10990#(<= main_~i~1 14)} is VALID [2018-11-14 18:50:17,301 INFO L273 TraceCheckUtils]: 49: Hoare triple {10990#(<= main_~i~1 14)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10990#(<= main_~i~1 14)} is VALID [2018-11-14 18:50:17,301 INFO L273 TraceCheckUtils]: 50: Hoare triple {10990#(<= main_~i~1 14)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10991#(<= main_~i~1 15)} is VALID [2018-11-14 18:50:17,302 INFO L273 TraceCheckUtils]: 51: Hoare triple {10991#(<= main_~i~1 15)} assume true; {10991#(<= main_~i~1 15)} is VALID [2018-11-14 18:50:17,302 INFO L273 TraceCheckUtils]: 52: Hoare triple {10991#(<= main_~i~1 15)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10991#(<= main_~i~1 15)} is VALID [2018-11-14 18:50:17,303 INFO L273 TraceCheckUtils]: 53: Hoare triple {10991#(<= main_~i~1 15)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10992#(<= main_~i~1 16)} is VALID [2018-11-14 18:50:17,304 INFO L273 TraceCheckUtils]: 54: Hoare triple {10992#(<= main_~i~1 16)} assume true; {10992#(<= main_~i~1 16)} is VALID [2018-11-14 18:50:17,304 INFO L273 TraceCheckUtils]: 55: Hoare triple {10992#(<= main_~i~1 16)} assume !(~i~1 < 20); {10975#false} is VALID [2018-11-14 18:50:17,304 INFO L256 TraceCheckUtils]: 56: Hoare triple {10975#false} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {10974#true} is VALID [2018-11-14 18:50:17,305 INFO L273 TraceCheckUtils]: 57: Hoare triple {10974#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {10974#true} is VALID [2018-11-14 18:50:17,305 INFO L273 TraceCheckUtils]: 58: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,305 INFO L273 TraceCheckUtils]: 59: Hoare triple {10974#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10974#true} is VALID [2018-11-14 18:50:17,305 INFO L273 TraceCheckUtils]: 60: Hoare triple {10974#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10974#true} is VALID [2018-11-14 18:50:17,305 INFO L273 TraceCheckUtils]: 61: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,306 INFO L273 TraceCheckUtils]: 62: Hoare triple {10974#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10974#true} is VALID [2018-11-14 18:50:17,306 INFO L273 TraceCheckUtils]: 63: Hoare triple {10974#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10974#true} is VALID [2018-11-14 18:50:17,306 INFO L273 TraceCheckUtils]: 64: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,306 INFO L273 TraceCheckUtils]: 65: Hoare triple {10974#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10974#true} is VALID [2018-11-14 18:50:17,306 INFO L273 TraceCheckUtils]: 66: Hoare triple {10974#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10974#true} is VALID [2018-11-14 18:50:17,307 INFO L273 TraceCheckUtils]: 67: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,307 INFO L273 TraceCheckUtils]: 68: Hoare triple {10974#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10974#true} is VALID [2018-11-14 18:50:17,307 INFO L273 TraceCheckUtils]: 69: Hoare triple {10974#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10974#true} is VALID [2018-11-14 18:50:17,307 INFO L273 TraceCheckUtils]: 70: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,307 INFO L273 TraceCheckUtils]: 71: Hoare triple {10974#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10974#true} is VALID [2018-11-14 18:50:17,307 INFO L273 TraceCheckUtils]: 72: Hoare triple {10974#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10974#true} is VALID [2018-11-14 18:50:17,307 INFO L273 TraceCheckUtils]: 73: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,307 INFO L273 TraceCheckUtils]: 74: Hoare triple {10974#true} assume !(~i~0 < 20); {10974#true} is VALID [2018-11-14 18:50:17,308 INFO L273 TraceCheckUtils]: 75: Hoare triple {10974#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {10974#true} is VALID [2018-11-14 18:50:17,308 INFO L273 TraceCheckUtils]: 76: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,308 INFO L268 TraceCheckUtils]: 77: Hoare quadruple {10974#true} {10975#false} #73#return; {10975#false} is VALID [2018-11-14 18:50:17,308 INFO L273 TraceCheckUtils]: 78: Hoare triple {10975#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {10975#false} is VALID [2018-11-14 18:50:17,308 INFO L256 TraceCheckUtils]: 79: Hoare triple {10975#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {10974#true} is VALID [2018-11-14 18:50:17,308 INFO L273 TraceCheckUtils]: 80: Hoare triple {10974#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {10974#true} is VALID [2018-11-14 18:50:17,308 INFO L273 TraceCheckUtils]: 81: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,308 INFO L273 TraceCheckUtils]: 82: Hoare triple {10974#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10974#true} is VALID [2018-11-14 18:50:17,309 INFO L273 TraceCheckUtils]: 83: Hoare triple {10974#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10974#true} is VALID [2018-11-14 18:50:17,309 INFO L273 TraceCheckUtils]: 84: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,309 INFO L273 TraceCheckUtils]: 85: Hoare triple {10974#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10974#true} is VALID [2018-11-14 18:50:17,309 INFO L273 TraceCheckUtils]: 86: Hoare triple {10974#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10974#true} is VALID [2018-11-14 18:50:17,309 INFO L273 TraceCheckUtils]: 87: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,309 INFO L273 TraceCheckUtils]: 88: Hoare triple {10974#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10974#true} is VALID [2018-11-14 18:50:17,309 INFO L273 TraceCheckUtils]: 89: Hoare triple {10974#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10974#true} is VALID [2018-11-14 18:50:17,309 INFO L273 TraceCheckUtils]: 90: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,309 INFO L273 TraceCheckUtils]: 91: Hoare triple {10974#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10974#true} is VALID [2018-11-14 18:50:17,310 INFO L273 TraceCheckUtils]: 92: Hoare triple {10974#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10974#true} is VALID [2018-11-14 18:50:17,310 INFO L273 TraceCheckUtils]: 93: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,310 INFO L273 TraceCheckUtils]: 94: Hoare triple {10974#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10974#true} is VALID [2018-11-14 18:50:17,310 INFO L273 TraceCheckUtils]: 95: Hoare triple {10974#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10974#true} is VALID [2018-11-14 18:50:17,310 INFO L273 TraceCheckUtils]: 96: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,310 INFO L273 TraceCheckUtils]: 97: Hoare triple {10974#true} assume !(~i~0 < 20); {10974#true} is VALID [2018-11-14 18:50:17,310 INFO L273 TraceCheckUtils]: 98: Hoare triple {10974#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {10974#true} is VALID [2018-11-14 18:50:17,310 INFO L273 TraceCheckUtils]: 99: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,310 INFO L268 TraceCheckUtils]: 100: Hoare quadruple {10974#true} {10975#false} #75#return; {10975#false} is VALID [2018-11-14 18:50:17,311 INFO L273 TraceCheckUtils]: 101: Hoare triple {10975#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {10975#false} is VALID [2018-11-14 18:50:17,311 INFO L273 TraceCheckUtils]: 102: Hoare triple {10975#false} assume true; {10975#false} is VALID [2018-11-14 18:50:17,311 INFO L273 TraceCheckUtils]: 103: Hoare triple {10975#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {10975#false} is VALID [2018-11-14 18:50:17,311 INFO L273 TraceCheckUtils]: 104: Hoare triple {10975#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {10975#false} is VALID [2018-11-14 18:50:17,311 INFO L273 TraceCheckUtils]: 105: Hoare triple {10975#false} assume true; {10975#false} is VALID [2018-11-14 18:50:17,311 INFO L273 TraceCheckUtils]: 106: Hoare triple {10975#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {10975#false} is VALID [2018-11-14 18:50:17,311 INFO L273 TraceCheckUtils]: 107: Hoare triple {10975#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {10975#false} is VALID [2018-11-14 18:50:17,311 INFO L273 TraceCheckUtils]: 108: Hoare triple {10975#false} assume true; {10975#false} is VALID [2018-11-14 18:50:17,311 INFO L273 TraceCheckUtils]: 109: Hoare triple {10975#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {10975#false} is VALID [2018-11-14 18:50:17,312 INFO L273 TraceCheckUtils]: 110: Hoare triple {10975#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {10975#false} is VALID [2018-11-14 18:50:17,312 INFO L273 TraceCheckUtils]: 111: Hoare triple {10975#false} assume true; {10975#false} is VALID [2018-11-14 18:50:17,312 INFO L273 TraceCheckUtils]: 112: Hoare triple {10975#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {10975#false} is VALID [2018-11-14 18:50:17,312 INFO L273 TraceCheckUtils]: 113: Hoare triple {10975#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {10975#false} is VALID [2018-11-14 18:50:17,312 INFO L273 TraceCheckUtils]: 114: Hoare triple {10975#false} assume true; {10975#false} is VALID [2018-11-14 18:50:17,312 INFO L273 TraceCheckUtils]: 115: Hoare triple {10975#false} assume !(~i~2 < 19); {10975#false} is VALID [2018-11-14 18:50:17,312 INFO L273 TraceCheckUtils]: 116: Hoare triple {10975#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {10975#false} is VALID [2018-11-14 18:50:17,312 INFO L256 TraceCheckUtils]: 117: Hoare triple {10975#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {10974#true} is VALID [2018-11-14 18:50:17,313 INFO L273 TraceCheckUtils]: 118: Hoare triple {10974#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {10974#true} is VALID [2018-11-14 18:50:17,313 INFO L273 TraceCheckUtils]: 119: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,313 INFO L273 TraceCheckUtils]: 120: Hoare triple {10974#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10974#true} is VALID [2018-11-14 18:50:17,313 INFO L273 TraceCheckUtils]: 121: Hoare triple {10974#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10974#true} is VALID [2018-11-14 18:50:17,313 INFO L273 TraceCheckUtils]: 122: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,313 INFO L273 TraceCheckUtils]: 123: Hoare triple {10974#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10974#true} is VALID [2018-11-14 18:50:17,313 INFO L273 TraceCheckUtils]: 124: Hoare triple {10974#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10974#true} is VALID [2018-11-14 18:50:17,313 INFO L273 TraceCheckUtils]: 125: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,313 INFO L273 TraceCheckUtils]: 126: Hoare triple {10974#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10974#true} is VALID [2018-11-14 18:50:17,314 INFO L273 TraceCheckUtils]: 127: Hoare triple {10974#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10974#true} is VALID [2018-11-14 18:50:17,314 INFO L273 TraceCheckUtils]: 128: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,314 INFO L273 TraceCheckUtils]: 129: Hoare triple {10974#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10974#true} is VALID [2018-11-14 18:50:17,314 INFO L273 TraceCheckUtils]: 130: Hoare triple {10974#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10974#true} is VALID [2018-11-14 18:50:17,314 INFO L273 TraceCheckUtils]: 131: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,314 INFO L273 TraceCheckUtils]: 132: Hoare triple {10974#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10974#true} is VALID [2018-11-14 18:50:17,314 INFO L273 TraceCheckUtils]: 133: Hoare triple {10974#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10974#true} is VALID [2018-11-14 18:50:17,314 INFO L273 TraceCheckUtils]: 134: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,314 INFO L273 TraceCheckUtils]: 135: Hoare triple {10974#true} assume !(~i~0 < 20); {10974#true} is VALID [2018-11-14 18:50:17,315 INFO L273 TraceCheckUtils]: 136: Hoare triple {10974#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {10974#true} is VALID [2018-11-14 18:50:17,315 INFO L273 TraceCheckUtils]: 137: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,315 INFO L268 TraceCheckUtils]: 138: Hoare quadruple {10974#true} {10975#false} #77#return; {10975#false} is VALID [2018-11-14 18:50:17,315 INFO L273 TraceCheckUtils]: 139: Hoare triple {10975#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {10975#false} is VALID [2018-11-14 18:50:17,315 INFO L273 TraceCheckUtils]: 140: Hoare triple {10975#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {10975#false} is VALID [2018-11-14 18:50:17,315 INFO L273 TraceCheckUtils]: 141: Hoare triple {10975#false} assume !false; {10975#false} is VALID [2018-11-14 18:50:17,324 INFO L134 CoverageAnalysis]: Checked inductivity of 841 backedges. 0 proven. 392 refuted. 0 times theorem prover too weak. 449 trivial. 0 not checked. [2018-11-14 18:50:17,324 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:50:17,324 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 18 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 18 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:50:17,333 INFO L103 rtionOrderModulation]: Keeping assertion order TERMS_WITH_SMALL_CONSTANTS_FIRST [2018-11-14 18:50:17,385 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2018-11-14 18:50:17,386 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 18:50:17,423 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:50:17,424 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:50:17,667 INFO L256 TraceCheckUtils]: 0: Hoare triple {10974#true} call ULTIMATE.init(); {10974#true} is VALID [2018-11-14 18:50:17,667 INFO L273 TraceCheckUtils]: 1: Hoare triple {10974#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {10974#true} is VALID [2018-11-14 18:50:17,667 INFO L273 TraceCheckUtils]: 2: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,668 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {10974#true} {10974#true} #69#return; {10974#true} is VALID [2018-11-14 18:50:17,668 INFO L256 TraceCheckUtils]: 4: Hoare triple {10974#true} call #t~ret12 := main(); {10974#true} is VALID [2018-11-14 18:50:17,668 INFO L273 TraceCheckUtils]: 5: Hoare triple {10974#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {10974#true} is VALID [2018-11-14 18:50:17,668 INFO L273 TraceCheckUtils]: 6: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,668 INFO L273 TraceCheckUtils]: 7: Hoare triple {10974#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10974#true} is VALID [2018-11-14 18:50:17,669 INFO L273 TraceCheckUtils]: 8: Hoare triple {10974#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10974#true} is VALID [2018-11-14 18:50:17,669 INFO L273 TraceCheckUtils]: 9: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,669 INFO L273 TraceCheckUtils]: 10: Hoare triple {10974#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10974#true} is VALID [2018-11-14 18:50:17,669 INFO L273 TraceCheckUtils]: 11: Hoare triple {10974#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10974#true} is VALID [2018-11-14 18:50:17,669 INFO L273 TraceCheckUtils]: 12: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,670 INFO L273 TraceCheckUtils]: 13: Hoare triple {10974#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10974#true} is VALID [2018-11-14 18:50:17,670 INFO L273 TraceCheckUtils]: 14: Hoare triple {10974#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10974#true} is VALID [2018-11-14 18:50:17,670 INFO L273 TraceCheckUtils]: 15: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,670 INFO L273 TraceCheckUtils]: 16: Hoare triple {10974#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10974#true} is VALID [2018-11-14 18:50:17,670 INFO L273 TraceCheckUtils]: 17: Hoare triple {10974#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10974#true} is VALID [2018-11-14 18:50:17,670 INFO L273 TraceCheckUtils]: 18: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,670 INFO L273 TraceCheckUtils]: 19: Hoare triple {10974#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10974#true} is VALID [2018-11-14 18:50:17,670 INFO L273 TraceCheckUtils]: 20: Hoare triple {10974#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10974#true} is VALID [2018-11-14 18:50:17,670 INFO L273 TraceCheckUtils]: 21: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,671 INFO L273 TraceCheckUtils]: 22: Hoare triple {10974#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10974#true} is VALID [2018-11-14 18:50:17,671 INFO L273 TraceCheckUtils]: 23: Hoare triple {10974#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10974#true} is VALID [2018-11-14 18:50:17,671 INFO L273 TraceCheckUtils]: 24: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,671 INFO L273 TraceCheckUtils]: 25: Hoare triple {10974#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10974#true} is VALID [2018-11-14 18:50:17,671 INFO L273 TraceCheckUtils]: 26: Hoare triple {10974#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10974#true} is VALID [2018-11-14 18:50:17,671 INFO L273 TraceCheckUtils]: 27: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,671 INFO L273 TraceCheckUtils]: 28: Hoare triple {10974#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10974#true} is VALID [2018-11-14 18:50:17,671 INFO L273 TraceCheckUtils]: 29: Hoare triple {10974#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10974#true} is VALID [2018-11-14 18:50:17,671 INFO L273 TraceCheckUtils]: 30: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,672 INFO L273 TraceCheckUtils]: 31: Hoare triple {10974#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10974#true} is VALID [2018-11-14 18:50:17,672 INFO L273 TraceCheckUtils]: 32: Hoare triple {10974#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10974#true} is VALID [2018-11-14 18:50:17,672 INFO L273 TraceCheckUtils]: 33: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,672 INFO L273 TraceCheckUtils]: 34: Hoare triple {10974#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10974#true} is VALID [2018-11-14 18:50:17,672 INFO L273 TraceCheckUtils]: 35: Hoare triple {10974#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10974#true} is VALID [2018-11-14 18:50:17,672 INFO L273 TraceCheckUtils]: 36: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,672 INFO L273 TraceCheckUtils]: 37: Hoare triple {10974#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10974#true} is VALID [2018-11-14 18:50:17,672 INFO L273 TraceCheckUtils]: 38: Hoare triple {10974#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10974#true} is VALID [2018-11-14 18:50:17,672 INFO L273 TraceCheckUtils]: 39: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,673 INFO L273 TraceCheckUtils]: 40: Hoare triple {10974#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10974#true} is VALID [2018-11-14 18:50:17,673 INFO L273 TraceCheckUtils]: 41: Hoare triple {10974#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10974#true} is VALID [2018-11-14 18:50:17,673 INFO L273 TraceCheckUtils]: 42: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,673 INFO L273 TraceCheckUtils]: 43: Hoare triple {10974#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10974#true} is VALID [2018-11-14 18:50:17,673 INFO L273 TraceCheckUtils]: 44: Hoare triple {10974#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10974#true} is VALID [2018-11-14 18:50:17,673 INFO L273 TraceCheckUtils]: 45: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,673 INFO L273 TraceCheckUtils]: 46: Hoare triple {10974#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10974#true} is VALID [2018-11-14 18:50:17,673 INFO L273 TraceCheckUtils]: 47: Hoare triple {10974#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10974#true} is VALID [2018-11-14 18:50:17,673 INFO L273 TraceCheckUtils]: 48: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,674 INFO L273 TraceCheckUtils]: 49: Hoare triple {10974#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10974#true} is VALID [2018-11-14 18:50:17,674 INFO L273 TraceCheckUtils]: 50: Hoare triple {10974#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10974#true} is VALID [2018-11-14 18:50:17,674 INFO L273 TraceCheckUtils]: 51: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,674 INFO L273 TraceCheckUtils]: 52: Hoare triple {10974#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10974#true} is VALID [2018-11-14 18:50:17,674 INFO L273 TraceCheckUtils]: 53: Hoare triple {10974#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10974#true} is VALID [2018-11-14 18:50:17,674 INFO L273 TraceCheckUtils]: 54: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,674 INFO L273 TraceCheckUtils]: 55: Hoare triple {10974#true} assume !(~i~1 < 20); {10974#true} is VALID [2018-11-14 18:50:17,674 INFO L256 TraceCheckUtils]: 56: Hoare triple {10974#true} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {10974#true} is VALID [2018-11-14 18:50:17,674 INFO L273 TraceCheckUtils]: 57: Hoare triple {10974#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {10974#true} is VALID [2018-11-14 18:50:17,675 INFO L273 TraceCheckUtils]: 58: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,675 INFO L273 TraceCheckUtils]: 59: Hoare triple {10974#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10974#true} is VALID [2018-11-14 18:50:17,675 INFO L273 TraceCheckUtils]: 60: Hoare triple {10974#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10974#true} is VALID [2018-11-14 18:50:17,675 INFO L273 TraceCheckUtils]: 61: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,675 INFO L273 TraceCheckUtils]: 62: Hoare triple {10974#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10974#true} is VALID [2018-11-14 18:50:17,675 INFO L273 TraceCheckUtils]: 63: Hoare triple {10974#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10974#true} is VALID [2018-11-14 18:50:17,675 INFO L273 TraceCheckUtils]: 64: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,675 INFO L273 TraceCheckUtils]: 65: Hoare triple {10974#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10974#true} is VALID [2018-11-14 18:50:17,676 INFO L273 TraceCheckUtils]: 66: Hoare triple {10974#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10974#true} is VALID [2018-11-14 18:50:17,676 INFO L273 TraceCheckUtils]: 67: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,676 INFO L273 TraceCheckUtils]: 68: Hoare triple {10974#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10974#true} is VALID [2018-11-14 18:50:17,676 INFO L273 TraceCheckUtils]: 69: Hoare triple {10974#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10974#true} is VALID [2018-11-14 18:50:17,676 INFO L273 TraceCheckUtils]: 70: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,676 INFO L273 TraceCheckUtils]: 71: Hoare triple {10974#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10974#true} is VALID [2018-11-14 18:50:17,676 INFO L273 TraceCheckUtils]: 72: Hoare triple {10974#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10974#true} is VALID [2018-11-14 18:50:17,676 INFO L273 TraceCheckUtils]: 73: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,676 INFO L273 TraceCheckUtils]: 74: Hoare triple {10974#true} assume !(~i~0 < 20); {10974#true} is VALID [2018-11-14 18:50:17,677 INFO L273 TraceCheckUtils]: 75: Hoare triple {10974#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {10974#true} is VALID [2018-11-14 18:50:17,677 INFO L273 TraceCheckUtils]: 76: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,677 INFO L268 TraceCheckUtils]: 77: Hoare quadruple {10974#true} {10974#true} #73#return; {10974#true} is VALID [2018-11-14 18:50:17,677 INFO L273 TraceCheckUtils]: 78: Hoare triple {10974#true} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {10974#true} is VALID [2018-11-14 18:50:17,677 INFO L256 TraceCheckUtils]: 79: Hoare triple {10974#true} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {10974#true} is VALID [2018-11-14 18:50:17,677 INFO L273 TraceCheckUtils]: 80: Hoare triple {10974#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {10974#true} is VALID [2018-11-14 18:50:17,677 INFO L273 TraceCheckUtils]: 81: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,677 INFO L273 TraceCheckUtils]: 82: Hoare triple {10974#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10974#true} is VALID [2018-11-14 18:50:17,677 INFO L273 TraceCheckUtils]: 83: Hoare triple {10974#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10974#true} is VALID [2018-11-14 18:50:17,678 INFO L273 TraceCheckUtils]: 84: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,678 INFO L273 TraceCheckUtils]: 85: Hoare triple {10974#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10974#true} is VALID [2018-11-14 18:50:17,678 INFO L273 TraceCheckUtils]: 86: Hoare triple {10974#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10974#true} is VALID [2018-11-14 18:50:17,678 INFO L273 TraceCheckUtils]: 87: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,678 INFO L273 TraceCheckUtils]: 88: Hoare triple {10974#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10974#true} is VALID [2018-11-14 18:50:17,678 INFO L273 TraceCheckUtils]: 89: Hoare triple {10974#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10974#true} is VALID [2018-11-14 18:50:17,678 INFO L273 TraceCheckUtils]: 90: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,678 INFO L273 TraceCheckUtils]: 91: Hoare triple {10974#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10974#true} is VALID [2018-11-14 18:50:17,679 INFO L273 TraceCheckUtils]: 92: Hoare triple {10974#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10974#true} is VALID [2018-11-14 18:50:17,679 INFO L273 TraceCheckUtils]: 93: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,679 INFO L273 TraceCheckUtils]: 94: Hoare triple {10974#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {10974#true} is VALID [2018-11-14 18:50:17,679 INFO L273 TraceCheckUtils]: 95: Hoare triple {10974#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10974#true} is VALID [2018-11-14 18:50:17,679 INFO L273 TraceCheckUtils]: 96: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,679 INFO L273 TraceCheckUtils]: 97: Hoare triple {10974#true} assume !(~i~0 < 20); {10974#true} is VALID [2018-11-14 18:50:17,679 INFO L273 TraceCheckUtils]: 98: Hoare triple {10974#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {10974#true} is VALID [2018-11-14 18:50:17,680 INFO L273 TraceCheckUtils]: 99: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,680 INFO L268 TraceCheckUtils]: 100: Hoare quadruple {10974#true} {10974#true} #75#return; {10974#true} is VALID [2018-11-14 18:50:17,680 INFO L273 TraceCheckUtils]: 101: Hoare triple {10974#true} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {10974#true} is VALID [2018-11-14 18:50:17,680 INFO L273 TraceCheckUtils]: 102: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,680 INFO L273 TraceCheckUtils]: 103: Hoare triple {10974#true} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {10974#true} is VALID [2018-11-14 18:50:17,680 INFO L273 TraceCheckUtils]: 104: Hoare triple {10974#true} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {10974#true} is VALID [2018-11-14 18:50:17,681 INFO L273 TraceCheckUtils]: 105: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,681 INFO L273 TraceCheckUtils]: 106: Hoare triple {10974#true} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {10974#true} is VALID [2018-11-14 18:50:17,681 INFO L273 TraceCheckUtils]: 107: Hoare triple {10974#true} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {10974#true} is VALID [2018-11-14 18:50:17,681 INFO L273 TraceCheckUtils]: 108: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,681 INFO L273 TraceCheckUtils]: 109: Hoare triple {10974#true} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {10974#true} is VALID [2018-11-14 18:50:17,682 INFO L273 TraceCheckUtils]: 110: Hoare triple {10974#true} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {10974#true} is VALID [2018-11-14 18:50:17,682 INFO L273 TraceCheckUtils]: 111: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,682 INFO L273 TraceCheckUtils]: 112: Hoare triple {10974#true} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {10974#true} is VALID [2018-11-14 18:50:17,682 INFO L273 TraceCheckUtils]: 113: Hoare triple {10974#true} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {10974#true} is VALID [2018-11-14 18:50:17,682 INFO L273 TraceCheckUtils]: 114: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:50:17,682 INFO L273 TraceCheckUtils]: 115: Hoare triple {10974#true} assume !(~i~2 < 19); {10974#true} is VALID [2018-11-14 18:50:17,683 INFO L273 TraceCheckUtils]: 116: Hoare triple {10974#true} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {10974#true} is VALID [2018-11-14 18:50:17,683 INFO L256 TraceCheckUtils]: 117: Hoare triple {10974#true} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {10974#true} is VALID [2018-11-14 18:50:17,698 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#(<= avg_~i~0 0)} is VALID [2018-11-14 18:50:17,711 INFO L273 TraceCheckUtils]: 119: Hoare triple {11350#(<= avg_~i~0 0)} assume true; {11350#(<= avg_~i~0 0)} is VALID [2018-11-14 18:50:17,719 INFO L273 TraceCheckUtils]: 120: Hoare triple {11350#(<= avg_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {11350#(<= avg_~i~0 0)} is VALID [2018-11-14 18:50:17,735 INFO L273 TraceCheckUtils]: 121: Hoare triple {11350#(<= avg_~i~0 0)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11360#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:17,744 INFO L273 TraceCheckUtils]: 122: Hoare triple {11360#(<= avg_~i~0 1)} assume true; {11360#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:17,758 INFO L273 TraceCheckUtils]: 123: Hoare triple {11360#(<= avg_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {11360#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:17,767 INFO L273 TraceCheckUtils]: 124: Hoare triple {11360#(<= avg_~i~0 1)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11370#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:17,781 INFO L273 TraceCheckUtils]: 125: Hoare triple {11370#(<= avg_~i~0 2)} assume true; {11370#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:17,789 INFO L273 TraceCheckUtils]: 126: Hoare triple {11370#(<= avg_~i~0 2)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {11370#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:17,802 INFO L273 TraceCheckUtils]: 127: Hoare triple {11370#(<= avg_~i~0 2)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11380#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:17,818 INFO L273 TraceCheckUtils]: 128: Hoare triple {11380#(<= avg_~i~0 3)} assume true; {11380#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:17,826 INFO L273 TraceCheckUtils]: 129: Hoare triple {11380#(<= avg_~i~0 3)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {11380#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:17,839 INFO L273 TraceCheckUtils]: 130: Hoare triple {11380#(<= avg_~i~0 3)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11390#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:17,852 INFO L273 TraceCheckUtils]: 131: Hoare triple {11390#(<= avg_~i~0 4)} assume true; {11390#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:17,864 INFO L273 TraceCheckUtils]: 132: Hoare triple {11390#(<= avg_~i~0 4)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {11390#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:17,882 INFO L273 TraceCheckUtils]: 133: Hoare triple {11390#(<= avg_~i~0 4)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11400#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:17,891 INFO L273 TraceCheckUtils]: 134: Hoare triple {11400#(<= avg_~i~0 5)} assume true; {11400#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:17,905 INFO L273 TraceCheckUtils]: 135: Hoare triple {11400#(<= avg_~i~0 5)} assume !(~i~0 < 20); {10975#false} is VALID [2018-11-14 18:50:17,905 INFO L273 TraceCheckUtils]: 136: Hoare triple {10975#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {10975#false} is VALID [2018-11-14 18:50:17,905 INFO L273 TraceCheckUtils]: 137: Hoare triple {10975#false} assume true; {10975#false} is VALID [2018-11-14 18:50:17,906 INFO L268 TraceCheckUtils]: 138: Hoare quadruple {10975#false} {10974#true} #77#return; {10975#false} is VALID [2018-11-14 18:50:17,906 INFO L273 TraceCheckUtils]: 139: Hoare triple {10975#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {10975#false} is VALID [2018-11-14 18:50:17,906 INFO L273 TraceCheckUtils]: 140: Hoare triple {10975#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {10975#false} is VALID [2018-11-14 18:50:17,906 INFO L273 TraceCheckUtils]: 141: Hoare triple {10975#false} assume !false; {10975#false} is VALID [2018-11-14 18:50:17,917 INFO L134 CoverageAnalysis]: Checked inductivity of 841 backedges. 200 proven. 40 refuted. 0 times theorem prover too weak. 601 trivial. 0 not checked. [2018-11-14 18:50:17,937 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:50:17,937 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [19, 8] total 25 [2018-11-14 18:50:17,938 INFO L78 Accepts]: Start accepts. Automaton has 25 states. Word has length 142 [2018-11-14 18:50:17,938 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:50:17,938 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 25 states. [2018-11-14 18:50:18,048 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 117 edges. 117 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:50:18,049 INFO L459 AbstractCegarLoop]: Interpolant automaton has 25 states [2018-11-14 18:50:18,049 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 25 interpolants. [2018-11-14 18:50:18,050 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=198, Invalid=402, Unknown=0, NotChecked=0, Total=600 [2018-11-14 18:50:18,050 INFO L87 Difference]: Start difference. First operand 101 states and 105 transitions. Second operand 25 states. [2018-11-14 18:50:18,718 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:18,719 INFO L93 Difference]: Finished difference Result 154 states and 166 transitions. [2018-11-14 18:50:18,719 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 25 states. [2018-11-14 18:50:18,719 INFO L78 Accepts]: Start accepts. Automaton has 25 states. Word has length 142 [2018-11-14 18:50:18,719 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:50:18,719 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 25 states. [2018-11-14 18:50:18,721 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 130 transitions. [2018-11-14 18:50:18,721 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 25 states. [2018-11-14 18:50:18,722 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 130 transitions. [2018-11-14 18:50:18,722 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 25 states and 130 transitions. [2018-11-14 18:50:18,888 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 130 edges. 130 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:50:18,890 INFO L225 Difference]: With dead ends: 154 [2018-11-14 18:50:18,891 INFO L226 Difference]: Without dead ends: 109 [2018-11-14 18:50:18,891 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 160 GetRequests, 137 SyntacticMatches, 0 SemanticMatches, 23 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 96 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=198, Invalid=402, Unknown=0, NotChecked=0, Total=600 [2018-11-14 18:50:18,892 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 109 states. [2018-11-14 18:50:18,918 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 109 to 107. [2018-11-14 18:50:18,918 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:50:18,918 INFO L82 GeneralOperation]: Start isEquivalent. First operand 109 states. Second operand 107 states. [2018-11-14 18:50:18,918 INFO L74 IsIncluded]: Start isIncluded. First operand 109 states. Second operand 107 states. [2018-11-14 18:50:18,918 INFO L87 Difference]: Start difference. First operand 109 states. Second operand 107 states. [2018-11-14 18:50:18,921 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:18,921 INFO L93 Difference]: Finished difference Result 109 states and 113 transitions. [2018-11-14 18:50:18,921 INFO L276 IsEmpty]: Start isEmpty. Operand 109 states and 113 transitions. [2018-11-14 18:50:18,922 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:50:18,922 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:50:18,922 INFO L74 IsIncluded]: Start isIncluded. First operand 107 states. Second operand 109 states. [2018-11-14 18:50:18,922 INFO L87 Difference]: Start difference. First operand 107 states. Second operand 109 states. [2018-11-14 18:50:18,924 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:18,924 INFO L93 Difference]: Finished difference Result 109 states and 113 transitions. [2018-11-14 18:50:18,924 INFO L276 IsEmpty]: Start isEmpty. Operand 109 states and 113 transitions. [2018-11-14 18:50:18,925 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:50:18,925 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:50:18,925 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:50:18,925 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:50:18,925 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 107 states. [2018-11-14 18:50:18,927 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 107 states to 107 states and 111 transitions. [2018-11-14 18:50:18,927 INFO L78 Accepts]: Start accepts. Automaton has 107 states and 111 transitions. Word has length 142 [2018-11-14 18:50:18,928 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:50:18,928 INFO L480 AbstractCegarLoop]: Abstraction has 107 states and 111 transitions. [2018-11-14 18:50:18,928 INFO L481 AbstractCegarLoop]: Interpolant automaton has 25 states. [2018-11-14 18:50:18,928 INFO L276 IsEmpty]: Start isEmpty. Operand 107 states and 111 transitions. [2018-11-14 18:50:18,929 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 155 [2018-11-14 18:50:18,929 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:50:18,929 INFO L375 BasicCegarLoop]: trace histogram [21, 18, 18, 18, 17, 17, 5, 4, 4, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:50:18,930 INFO L423 AbstractCegarLoop]: === Iteration 21 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:50:18,930 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:50:18,930 INFO L82 PathProgramCache]: Analyzing trace with hash 1450365401, now seen corresponding path program 17 times [2018-11-14 18:50:18,930 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:50:18,930 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:50:18,931 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:50:18,931 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 18:50:18,931 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:50:18,955 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:50:20,512 INFO L256 TraceCheckUtils]: 0: Hoare triple {11994#true} call ULTIMATE.init(); {11994#true} is VALID [2018-11-14 18:50:20,512 INFO L273 TraceCheckUtils]: 1: Hoare triple {11994#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {11994#true} is VALID [2018-11-14 18:50:20,512 INFO L273 TraceCheckUtils]: 2: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:50:20,513 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {11994#true} {11994#true} #69#return; {11994#true} is VALID [2018-11-14 18:50:20,513 INFO L256 TraceCheckUtils]: 4: Hoare triple {11994#true} call #t~ret12 := main(); {11994#true} is VALID [2018-11-14 18:50:20,513 INFO L273 TraceCheckUtils]: 5: Hoare triple {11994#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {11996#(= main_~i~1 0)} is VALID [2018-11-14 18:50:20,513 INFO L273 TraceCheckUtils]: 6: Hoare triple {11996#(= main_~i~1 0)} assume true; {11996#(= main_~i~1 0)} is VALID [2018-11-14 18:50:20,514 INFO L273 TraceCheckUtils]: 7: Hoare triple {11996#(= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {11996#(= main_~i~1 0)} is VALID [2018-11-14 18:50:20,514 INFO L273 TraceCheckUtils]: 8: Hoare triple {11996#(= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {11997#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:20,515 INFO L273 TraceCheckUtils]: 9: Hoare triple {11997#(<= main_~i~1 1)} assume true; {11997#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:20,515 INFO L273 TraceCheckUtils]: 10: Hoare triple {11997#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {11997#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:20,516 INFO L273 TraceCheckUtils]: 11: Hoare triple {11997#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {11998#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:20,516 INFO L273 TraceCheckUtils]: 12: Hoare triple {11998#(<= main_~i~1 2)} assume true; {11998#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:20,516 INFO L273 TraceCheckUtils]: 13: Hoare triple {11998#(<= main_~i~1 2)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {11998#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:20,517 INFO L273 TraceCheckUtils]: 14: Hoare triple {11998#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {11999#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:20,517 INFO L273 TraceCheckUtils]: 15: Hoare triple {11999#(<= main_~i~1 3)} assume true; {11999#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:20,518 INFO L273 TraceCheckUtils]: 16: Hoare triple {11999#(<= main_~i~1 3)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {11999#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:20,518 INFO L273 TraceCheckUtils]: 17: Hoare triple {11999#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {12000#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:20,519 INFO L273 TraceCheckUtils]: 18: Hoare triple {12000#(<= main_~i~1 4)} assume true; {12000#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:20,519 INFO L273 TraceCheckUtils]: 19: Hoare triple {12000#(<= main_~i~1 4)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {12000#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:20,520 INFO L273 TraceCheckUtils]: 20: Hoare triple {12000#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {12001#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:20,521 INFO L273 TraceCheckUtils]: 21: Hoare triple {12001#(<= main_~i~1 5)} assume true; {12001#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:20,539 INFO L273 TraceCheckUtils]: 22: Hoare triple {12001#(<= main_~i~1 5)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {12001#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:20,548 INFO L273 TraceCheckUtils]: 23: Hoare triple {12001#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {12002#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:20,553 INFO L273 TraceCheckUtils]: 24: Hoare triple {12002#(<= main_~i~1 6)} assume true; {12002#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:20,554 INFO L273 TraceCheckUtils]: 25: Hoare triple {12002#(<= main_~i~1 6)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {12002#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:20,554 INFO L273 TraceCheckUtils]: 26: Hoare triple {12002#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {12003#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:20,554 INFO L273 TraceCheckUtils]: 27: Hoare triple {12003#(<= main_~i~1 7)} assume true; {12003#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:20,555 INFO L273 TraceCheckUtils]: 28: Hoare triple {12003#(<= main_~i~1 7)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {12003#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:20,555 INFO L273 TraceCheckUtils]: 29: Hoare triple {12003#(<= main_~i~1 7)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {12004#(<= main_~i~1 8)} is VALID [2018-11-14 18:50:20,555 INFO L273 TraceCheckUtils]: 30: Hoare triple {12004#(<= main_~i~1 8)} assume true; {12004#(<= main_~i~1 8)} is VALID [2018-11-14 18:50:20,556 INFO L273 TraceCheckUtils]: 31: Hoare triple {12004#(<= main_~i~1 8)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {12004#(<= main_~i~1 8)} is VALID [2018-11-14 18:50:20,556 INFO L273 TraceCheckUtils]: 32: Hoare triple {12004#(<= main_~i~1 8)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {12005#(<= main_~i~1 9)} is VALID [2018-11-14 18:50:20,557 INFO L273 TraceCheckUtils]: 33: Hoare triple {12005#(<= main_~i~1 9)} assume true; {12005#(<= main_~i~1 9)} is VALID [2018-11-14 18:50:20,557 INFO L273 TraceCheckUtils]: 34: Hoare triple {12005#(<= main_~i~1 9)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {12005#(<= main_~i~1 9)} is VALID [2018-11-14 18:50:20,558 INFO L273 TraceCheckUtils]: 35: Hoare triple {12005#(<= main_~i~1 9)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {12006#(<= main_~i~1 10)} is VALID [2018-11-14 18:50:20,558 INFO L273 TraceCheckUtils]: 36: Hoare triple {12006#(<= main_~i~1 10)} assume true; {12006#(<= main_~i~1 10)} is VALID [2018-11-14 18:50:20,559 INFO L273 TraceCheckUtils]: 37: Hoare triple {12006#(<= main_~i~1 10)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {12006#(<= main_~i~1 10)} is VALID [2018-11-14 18:50:20,559 INFO L273 TraceCheckUtils]: 38: Hoare triple {12006#(<= main_~i~1 10)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {12007#(<= main_~i~1 11)} is VALID [2018-11-14 18:50:20,560 INFO L273 TraceCheckUtils]: 39: Hoare triple {12007#(<= main_~i~1 11)} assume true; {12007#(<= main_~i~1 11)} is VALID [2018-11-14 18:50:20,560 INFO L273 TraceCheckUtils]: 40: Hoare triple {12007#(<= main_~i~1 11)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {12007#(<= main_~i~1 11)} is VALID [2018-11-14 18:50:20,561 INFO L273 TraceCheckUtils]: 41: Hoare triple {12007#(<= main_~i~1 11)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {12008#(<= main_~i~1 12)} is VALID [2018-11-14 18:50:20,562 INFO L273 TraceCheckUtils]: 42: Hoare triple {12008#(<= main_~i~1 12)} assume true; {12008#(<= main_~i~1 12)} is VALID [2018-11-14 18:50:20,562 INFO L273 TraceCheckUtils]: 43: Hoare triple {12008#(<= main_~i~1 12)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {12008#(<= main_~i~1 12)} is VALID [2018-11-14 18:50:20,563 INFO L273 TraceCheckUtils]: 44: Hoare triple {12008#(<= main_~i~1 12)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {12009#(<= main_~i~1 13)} is VALID [2018-11-14 18:50:20,563 INFO L273 TraceCheckUtils]: 45: Hoare triple {12009#(<= main_~i~1 13)} assume true; {12009#(<= main_~i~1 13)} is VALID [2018-11-14 18:50:20,564 INFO L273 TraceCheckUtils]: 46: Hoare triple {12009#(<= main_~i~1 13)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {12009#(<= main_~i~1 13)} is VALID [2018-11-14 18:50:20,565 INFO L273 TraceCheckUtils]: 47: Hoare triple {12009#(<= main_~i~1 13)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {12010#(<= main_~i~1 14)} is VALID [2018-11-14 18:50:20,565 INFO L273 TraceCheckUtils]: 48: Hoare triple {12010#(<= main_~i~1 14)} assume true; {12010#(<= main_~i~1 14)} is VALID [2018-11-14 18:50:20,566 INFO L273 TraceCheckUtils]: 49: Hoare triple {12010#(<= main_~i~1 14)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {12010#(<= main_~i~1 14)} is VALID [2018-11-14 18:50:20,566 INFO L273 TraceCheckUtils]: 50: Hoare triple {12010#(<= main_~i~1 14)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {12011#(<= main_~i~1 15)} is VALID [2018-11-14 18:50:20,567 INFO L273 TraceCheckUtils]: 51: Hoare triple {12011#(<= main_~i~1 15)} assume true; {12011#(<= main_~i~1 15)} is VALID [2018-11-14 18:50:20,567 INFO L273 TraceCheckUtils]: 52: Hoare triple {12011#(<= main_~i~1 15)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {12011#(<= main_~i~1 15)} is VALID [2018-11-14 18:50:20,568 INFO L273 TraceCheckUtils]: 53: Hoare triple {12011#(<= main_~i~1 15)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {12012#(<= main_~i~1 16)} is VALID [2018-11-14 18:50:20,569 INFO L273 TraceCheckUtils]: 54: Hoare triple {12012#(<= main_~i~1 16)} assume true; {12012#(<= main_~i~1 16)} is VALID [2018-11-14 18:50:20,569 INFO L273 TraceCheckUtils]: 55: Hoare triple {12012#(<= main_~i~1 16)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {12012#(<= main_~i~1 16)} is VALID [2018-11-14 18:50:20,570 INFO L273 TraceCheckUtils]: 56: Hoare triple {12012#(<= main_~i~1 16)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {12013#(<= main_~i~1 17)} is VALID [2018-11-14 18:50:20,570 INFO L273 TraceCheckUtils]: 57: Hoare triple {12013#(<= main_~i~1 17)} assume true; {12013#(<= main_~i~1 17)} is VALID [2018-11-14 18:50:20,571 INFO L273 TraceCheckUtils]: 58: Hoare triple {12013#(<= main_~i~1 17)} assume !(~i~1 < 20); {11995#false} is VALID [2018-11-14 18:50:20,571 INFO L256 TraceCheckUtils]: 59: Hoare triple {11995#false} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {11994#true} is VALID [2018-11-14 18:50:20,572 INFO L273 TraceCheckUtils]: 60: Hoare triple {11994#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {11994#true} is VALID [2018-11-14 18:50:20,572 INFO L273 TraceCheckUtils]: 61: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:50:20,572 INFO L273 TraceCheckUtils]: 62: Hoare triple {11994#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {11994#true} is VALID [2018-11-14 18:50:20,572 INFO L273 TraceCheckUtils]: 63: Hoare triple {11994#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11994#true} is VALID [2018-11-14 18:50:20,572 INFO L273 TraceCheckUtils]: 64: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:50:20,572 INFO L273 TraceCheckUtils]: 65: Hoare triple {11994#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {11994#true} is VALID [2018-11-14 18:50:20,573 INFO L273 TraceCheckUtils]: 66: Hoare triple {11994#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11994#true} is VALID [2018-11-14 18:50:20,573 INFO L273 TraceCheckUtils]: 67: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:50:20,573 INFO L273 TraceCheckUtils]: 68: Hoare triple {11994#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {11994#true} is VALID [2018-11-14 18:50:20,573 INFO L273 TraceCheckUtils]: 69: Hoare triple {11994#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11994#true} is VALID [2018-11-14 18:50:20,573 INFO L273 TraceCheckUtils]: 70: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:50:20,574 INFO L273 TraceCheckUtils]: 71: Hoare triple {11994#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {11994#true} is VALID [2018-11-14 18:50:20,574 INFO L273 TraceCheckUtils]: 72: Hoare triple {11994#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11994#true} is VALID [2018-11-14 18:50:20,574 INFO L273 TraceCheckUtils]: 73: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:50:20,574 INFO L273 TraceCheckUtils]: 74: Hoare triple {11994#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {11994#true} is VALID [2018-11-14 18:50:20,574 INFO L273 TraceCheckUtils]: 75: Hoare triple {11994#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11994#true} is VALID [2018-11-14 18:50:20,575 INFO L273 TraceCheckUtils]: 76: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:50:20,575 INFO L273 TraceCheckUtils]: 77: Hoare triple {11994#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {11994#true} is VALID [2018-11-14 18:50:20,575 INFO L273 TraceCheckUtils]: 78: Hoare triple {11994#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11994#true} is VALID [2018-11-14 18:50:20,575 INFO L273 TraceCheckUtils]: 79: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:50:20,575 INFO L273 TraceCheckUtils]: 80: Hoare triple {11994#true} assume !(~i~0 < 20); {11994#true} is VALID [2018-11-14 18:50:20,575 INFO L273 TraceCheckUtils]: 81: Hoare triple {11994#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {11994#true} is VALID [2018-11-14 18:50:20,576 INFO L273 TraceCheckUtils]: 82: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:50:20,576 INFO L268 TraceCheckUtils]: 83: Hoare quadruple {11994#true} {11995#false} #73#return; {11995#false} is VALID [2018-11-14 18:50:20,576 INFO L273 TraceCheckUtils]: 84: Hoare triple {11995#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {11995#false} is VALID [2018-11-14 18:50:20,576 INFO L256 TraceCheckUtils]: 85: Hoare triple {11995#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {11994#true} is VALID [2018-11-14 18:50:20,576 INFO L273 TraceCheckUtils]: 86: Hoare triple {11994#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {11994#true} is VALID [2018-11-14 18:50:20,576 INFO L273 TraceCheckUtils]: 87: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:50:20,576 INFO L273 TraceCheckUtils]: 88: Hoare triple {11994#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {11994#true} is VALID [2018-11-14 18:50:20,577 INFO L273 TraceCheckUtils]: 89: Hoare triple {11994#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11994#true} is VALID [2018-11-14 18:50:20,577 INFO L273 TraceCheckUtils]: 90: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:50:20,577 INFO L273 TraceCheckUtils]: 91: Hoare triple {11994#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {11994#true} is VALID [2018-11-14 18:50:20,577 INFO L273 TraceCheckUtils]: 92: Hoare triple {11994#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11994#true} is VALID [2018-11-14 18:50:20,577 INFO L273 TraceCheckUtils]: 93: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:50:20,577 INFO L273 TraceCheckUtils]: 94: Hoare triple {11994#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {11994#true} is VALID [2018-11-14 18:50:20,577 INFO L273 TraceCheckUtils]: 95: Hoare triple {11994#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11994#true} is VALID [2018-11-14 18:50:20,577 INFO L273 TraceCheckUtils]: 96: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:50:20,577 INFO L273 TraceCheckUtils]: 97: Hoare triple {11994#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {11994#true} is VALID [2018-11-14 18:50:20,578 INFO L273 TraceCheckUtils]: 98: Hoare triple {11994#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11994#true} is VALID [2018-11-14 18:50:20,578 INFO L273 TraceCheckUtils]: 99: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:50:20,578 INFO L273 TraceCheckUtils]: 100: Hoare triple {11994#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {11994#true} is VALID [2018-11-14 18:50:20,578 INFO L273 TraceCheckUtils]: 101: Hoare triple {11994#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11994#true} is VALID [2018-11-14 18:50:20,578 INFO L273 TraceCheckUtils]: 102: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:50:20,578 INFO L273 TraceCheckUtils]: 103: Hoare triple {11994#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {11994#true} is VALID [2018-11-14 18:50:20,578 INFO L273 TraceCheckUtils]: 104: Hoare triple {11994#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11994#true} is VALID [2018-11-14 18:50:20,578 INFO L273 TraceCheckUtils]: 105: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:50:20,578 INFO L273 TraceCheckUtils]: 106: Hoare triple {11994#true} assume !(~i~0 < 20); {11994#true} is VALID [2018-11-14 18:50:20,579 INFO L273 TraceCheckUtils]: 107: Hoare triple {11994#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {11994#true} is VALID [2018-11-14 18:50:20,579 INFO L273 TraceCheckUtils]: 108: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:50:20,579 INFO L268 TraceCheckUtils]: 109: Hoare quadruple {11994#true} {11995#false} #75#return; {11995#false} is VALID [2018-11-14 18:50:20,579 INFO L273 TraceCheckUtils]: 110: Hoare triple {11995#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {11995#false} is VALID [2018-11-14 18:50:20,579 INFO L273 TraceCheckUtils]: 111: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:50:20,579 INFO L273 TraceCheckUtils]: 112: Hoare triple {11995#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {11995#false} is VALID [2018-11-14 18:50:20,579 INFO L273 TraceCheckUtils]: 113: Hoare triple {11995#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {11995#false} is VALID [2018-11-14 18:50:20,579 INFO L273 TraceCheckUtils]: 114: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:50:20,579 INFO L273 TraceCheckUtils]: 115: Hoare triple {11995#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {11995#false} is VALID [2018-11-14 18:50:20,580 INFO L273 TraceCheckUtils]: 116: Hoare triple {11995#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {11995#false} is VALID [2018-11-14 18:50:20,580 INFO L273 TraceCheckUtils]: 117: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:50:20,580 INFO L273 TraceCheckUtils]: 118: Hoare triple {11995#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {11995#false} is VALID [2018-11-14 18:50:20,580 INFO L273 TraceCheckUtils]: 119: Hoare triple {11995#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {11995#false} is VALID [2018-11-14 18:50:20,580 INFO L273 TraceCheckUtils]: 120: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:50:20,580 INFO L273 TraceCheckUtils]: 121: Hoare triple {11995#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {11995#false} is VALID [2018-11-14 18:50:20,580 INFO L273 TraceCheckUtils]: 122: Hoare triple {11995#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {11995#false} is VALID [2018-11-14 18:50:20,580 INFO L273 TraceCheckUtils]: 123: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:50:20,580 INFO L273 TraceCheckUtils]: 124: Hoare triple {11995#false} assume !(~i~2 < 19); {11995#false} is VALID [2018-11-14 18:50:20,580 INFO L273 TraceCheckUtils]: 125: Hoare triple {11995#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {11995#false} is VALID [2018-11-14 18:50:20,581 INFO L256 TraceCheckUtils]: 126: Hoare triple {11995#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {11994#true} is VALID [2018-11-14 18:50:20,581 INFO L273 TraceCheckUtils]: 127: Hoare triple {11994#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {11994#true} is VALID [2018-11-14 18:50:20,581 INFO L273 TraceCheckUtils]: 128: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:50:20,581 INFO L273 TraceCheckUtils]: 129: Hoare triple {11994#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {11994#true} is VALID [2018-11-14 18:50:20,581 INFO L273 TraceCheckUtils]: 130: Hoare triple {11994#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11994#true} is VALID [2018-11-14 18:50:20,581 INFO L273 TraceCheckUtils]: 131: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:50:20,581 INFO L273 TraceCheckUtils]: 132: Hoare triple {11994#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {11994#true} is VALID [2018-11-14 18:50:20,581 INFO L273 TraceCheckUtils]: 133: Hoare triple {11994#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11994#true} is VALID [2018-11-14 18:50:20,582 INFO L273 TraceCheckUtils]: 134: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:50:20,582 INFO L273 TraceCheckUtils]: 135: Hoare triple {11994#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {11994#true} is VALID [2018-11-14 18:50:20,582 INFO L273 TraceCheckUtils]: 136: Hoare triple {11994#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11994#true} is VALID [2018-11-14 18:50:20,582 INFO L273 TraceCheckUtils]: 137: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:50:20,582 INFO L273 TraceCheckUtils]: 138: Hoare triple {11994#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {11994#true} is VALID [2018-11-14 18:50:20,582 INFO L273 TraceCheckUtils]: 139: Hoare triple {11994#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11994#true} is VALID [2018-11-14 18:50:20,582 INFO L273 TraceCheckUtils]: 140: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:50:20,582 INFO L273 TraceCheckUtils]: 141: Hoare triple {11994#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {11994#true} is VALID [2018-11-14 18:50:20,582 INFO L273 TraceCheckUtils]: 142: Hoare triple {11994#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11994#true} is VALID [2018-11-14 18:50:20,583 INFO L273 TraceCheckUtils]: 143: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:50:20,583 INFO L273 TraceCheckUtils]: 144: Hoare triple {11994#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {11994#true} is VALID [2018-11-14 18:50:20,583 INFO L273 TraceCheckUtils]: 145: Hoare triple {11994#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11994#true} is VALID [2018-11-14 18:50:20,583 INFO L273 TraceCheckUtils]: 146: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:50:20,583 INFO L273 TraceCheckUtils]: 147: Hoare triple {11994#true} assume !(~i~0 < 20); {11994#true} is VALID [2018-11-14 18:50:20,583 INFO L273 TraceCheckUtils]: 148: Hoare triple {11994#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {11994#true} is VALID [2018-11-14 18:50:20,583 INFO L273 TraceCheckUtils]: 149: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:50:20,583 INFO L268 TraceCheckUtils]: 150: Hoare quadruple {11994#true} {11995#false} #77#return; {11995#false} is VALID [2018-11-14 18:50:20,583 INFO L273 TraceCheckUtils]: 151: Hoare triple {11995#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {11995#false} is VALID [2018-11-14 18:50:20,584 INFO L273 TraceCheckUtils]: 152: Hoare triple {11995#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {11995#false} is VALID [2018-11-14 18:50:20,584 INFO L273 TraceCheckUtils]: 153: Hoare triple {11995#false} assume !false; {11995#false} is VALID [2018-11-14 18:50:20,596 INFO L134 CoverageAnalysis]: Checked inductivity of 1053 backedges. 0 proven. 442 refuted. 0 times theorem prover too weak. 611 trivial. 0 not checked. [2018-11-14 18:50:20,597 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:50:20,597 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 19 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 19 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:50:20,612 INFO L103 rtionOrderModulation]: Keeping assertion order INSIDE_LOOP_FIRST1 [2018-11-14 18:50:21,357 INFO L249 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 17 check-sat command(s) [2018-11-14 18:50:21,358 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 18:50:21,390 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:50:21,392 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:50:21,598 INFO L256 TraceCheckUtils]: 0: Hoare triple {11994#true} call ULTIMATE.init(); {11994#true} is VALID [2018-11-14 18:50:21,599 INFO L273 TraceCheckUtils]: 1: Hoare triple {11994#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {11994#true} is VALID [2018-11-14 18:50:21,599 INFO L273 TraceCheckUtils]: 2: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:50:21,599 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {11994#true} {11994#true} #69#return; {11994#true} is VALID [2018-11-14 18:50:21,599 INFO L256 TraceCheckUtils]: 4: Hoare triple {11994#true} call #t~ret12 := main(); {11994#true} is VALID [2018-11-14 18:50:21,599 INFO L273 TraceCheckUtils]: 5: Hoare triple {11994#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {11994#true} is VALID [2018-11-14 18:50:21,600 INFO L273 TraceCheckUtils]: 6: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:50:21,600 INFO L273 TraceCheckUtils]: 7: Hoare triple {11994#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {11994#true} is VALID [2018-11-14 18:50:21,600 INFO L273 TraceCheckUtils]: 8: Hoare triple {11994#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {11994#true} is VALID [2018-11-14 18:50:21,600 INFO L273 TraceCheckUtils]: 9: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:50:21,600 INFO L273 TraceCheckUtils]: 10: Hoare triple {11994#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {11994#true} is VALID [2018-11-14 18:50:21,601 INFO L273 TraceCheckUtils]: 11: Hoare triple {11994#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {11994#true} is VALID [2018-11-14 18:50:21,601 INFO L273 TraceCheckUtils]: 12: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:50:21,601 INFO L273 TraceCheckUtils]: 13: Hoare triple {11994#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {11994#true} is VALID [2018-11-14 18:50:21,601 INFO L273 TraceCheckUtils]: 14: Hoare triple {11994#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {11994#true} is VALID [2018-11-14 18:50:21,601 INFO L273 TraceCheckUtils]: 15: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:50:21,601 INFO L273 TraceCheckUtils]: 16: Hoare triple {11994#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {11994#true} is VALID [2018-11-14 18:50:21,601 INFO L273 TraceCheckUtils]: 17: Hoare triple {11994#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {11994#true} is VALID [2018-11-14 18:50:21,601 INFO L273 TraceCheckUtils]: 18: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:50:21,602 INFO L273 TraceCheckUtils]: 19: Hoare triple {11994#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {11994#true} is VALID [2018-11-14 18:50:21,602 INFO L273 TraceCheckUtils]: 20: Hoare triple {11994#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {11994#true} is VALID [2018-11-14 18:50:21,602 INFO L273 TraceCheckUtils]: 21: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:50:21,602 INFO L273 TraceCheckUtils]: 22: Hoare triple {11994#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {11994#true} is VALID [2018-11-14 18:50:21,602 INFO L273 TraceCheckUtils]: 23: Hoare triple {11994#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {11994#true} is VALID [2018-11-14 18:50:21,602 INFO L273 TraceCheckUtils]: 24: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:50:21,602 INFO L273 TraceCheckUtils]: 25: Hoare triple {11994#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {11994#true} is VALID [2018-11-14 18:50:21,602 INFO L273 TraceCheckUtils]: 26: Hoare triple {11994#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {11994#true} is VALID [2018-11-14 18:50:21,602 INFO L273 TraceCheckUtils]: 27: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:50:21,603 INFO L273 TraceCheckUtils]: 28: Hoare triple {11994#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {11994#true} is VALID [2018-11-14 18:50:21,603 INFO L273 TraceCheckUtils]: 29: Hoare triple {11994#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {11994#true} is VALID [2018-11-14 18:50:21,603 INFO L273 TraceCheckUtils]: 30: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:50:21,603 INFO L273 TraceCheckUtils]: 31: Hoare triple {11994#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {11994#true} is VALID [2018-11-14 18:50:21,603 INFO L273 TraceCheckUtils]: 32: Hoare triple {11994#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {11994#true} is VALID [2018-11-14 18:50:21,603 INFO L273 TraceCheckUtils]: 33: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:50:21,603 INFO L273 TraceCheckUtils]: 34: Hoare triple {11994#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {11994#true} is VALID [2018-11-14 18:50:21,603 INFO L273 TraceCheckUtils]: 35: Hoare triple {11994#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {11994#true} is VALID [2018-11-14 18:50:21,603 INFO L273 TraceCheckUtils]: 36: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:50:21,604 INFO L273 TraceCheckUtils]: 37: Hoare triple {11994#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {11994#true} is VALID [2018-11-14 18:50:21,604 INFO L273 TraceCheckUtils]: 38: Hoare triple {11994#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {11994#true} is VALID [2018-11-14 18:50:21,604 INFO L273 TraceCheckUtils]: 39: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:50:21,604 INFO L273 TraceCheckUtils]: 40: Hoare triple {11994#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {11994#true} is VALID [2018-11-14 18:50:21,604 INFO L273 TraceCheckUtils]: 41: Hoare triple {11994#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {11994#true} is VALID [2018-11-14 18:50:21,604 INFO L273 TraceCheckUtils]: 42: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:50:21,604 INFO L273 TraceCheckUtils]: 43: Hoare triple {11994#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {11994#true} is VALID [2018-11-14 18:50:21,604 INFO L273 TraceCheckUtils]: 44: Hoare triple {11994#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {11994#true} is VALID [2018-11-14 18:50:21,604 INFO L273 TraceCheckUtils]: 45: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:50:21,604 INFO L273 TraceCheckUtils]: 46: Hoare triple {11994#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {11994#true} is VALID [2018-11-14 18:50:21,605 INFO L273 TraceCheckUtils]: 47: Hoare triple {11994#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {11994#true} is VALID [2018-11-14 18:50:21,605 INFO L273 TraceCheckUtils]: 48: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:50:21,605 INFO L273 TraceCheckUtils]: 49: Hoare triple {11994#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {11994#true} is VALID [2018-11-14 18:50:21,605 INFO L273 TraceCheckUtils]: 50: Hoare triple {11994#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {11994#true} is VALID [2018-11-14 18:50:21,605 INFO L273 TraceCheckUtils]: 51: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:50:21,605 INFO L273 TraceCheckUtils]: 52: Hoare triple {11994#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {11994#true} is VALID [2018-11-14 18:50:21,605 INFO L273 TraceCheckUtils]: 53: Hoare triple {11994#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {11994#true} is VALID [2018-11-14 18:50:21,605 INFO L273 TraceCheckUtils]: 54: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:50:21,606 INFO L273 TraceCheckUtils]: 55: Hoare triple {11994#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {11994#true} is VALID [2018-11-14 18:50:21,606 INFO L273 TraceCheckUtils]: 56: Hoare triple {11994#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {11994#true} is VALID [2018-11-14 18:50:21,606 INFO L273 TraceCheckUtils]: 57: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:50:21,606 INFO L273 TraceCheckUtils]: 58: Hoare triple {11994#true} assume !(~i~1 < 20); {11994#true} is VALID [2018-11-14 18:50:21,606 INFO L256 TraceCheckUtils]: 59: Hoare triple {11994#true} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {11994#true} is VALID [2018-11-14 18:50:21,606 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#(<= avg_~i~0 0)} is VALID [2018-11-14 18:50:21,607 INFO L273 TraceCheckUtils]: 61: Hoare triple {12197#(<= avg_~i~0 0)} assume true; {12197#(<= avg_~i~0 0)} is VALID [2018-11-14 18:50:21,607 INFO L273 TraceCheckUtils]: 62: Hoare triple {12197#(<= avg_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {12197#(<= avg_~i~0 0)} is VALID [2018-11-14 18:50:21,607 INFO L273 TraceCheckUtils]: 63: Hoare triple {12197#(<= avg_~i~0 0)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {12207#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:21,608 INFO L273 TraceCheckUtils]: 64: Hoare triple {12207#(<= avg_~i~0 1)} assume true; {12207#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:21,608 INFO L273 TraceCheckUtils]: 65: Hoare triple {12207#(<= avg_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {12207#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:21,609 INFO L273 TraceCheckUtils]: 66: Hoare triple {12207#(<= avg_~i~0 1)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {12217#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:21,609 INFO L273 TraceCheckUtils]: 67: Hoare triple {12217#(<= avg_~i~0 2)} assume true; {12217#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:21,609 INFO L273 TraceCheckUtils]: 68: Hoare triple {12217#(<= avg_~i~0 2)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {12217#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:21,610 INFO L273 TraceCheckUtils]: 69: Hoare triple {12217#(<= avg_~i~0 2)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {12227#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:21,610 INFO L273 TraceCheckUtils]: 70: Hoare triple {12227#(<= avg_~i~0 3)} assume true; {12227#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:21,610 INFO L273 TraceCheckUtils]: 71: Hoare triple {12227#(<= avg_~i~0 3)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {12227#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:21,611 INFO L273 TraceCheckUtils]: 72: Hoare triple {12227#(<= avg_~i~0 3)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {12237#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:21,611 INFO L273 TraceCheckUtils]: 73: Hoare triple {12237#(<= avg_~i~0 4)} assume true; {12237#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:21,611 INFO L273 TraceCheckUtils]: 74: Hoare triple {12237#(<= avg_~i~0 4)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {12237#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:21,612 INFO L273 TraceCheckUtils]: 75: Hoare triple {12237#(<= avg_~i~0 4)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {12247#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:21,613 INFO L273 TraceCheckUtils]: 76: Hoare triple {12247#(<= avg_~i~0 5)} assume true; {12247#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:21,613 INFO L273 TraceCheckUtils]: 77: Hoare triple {12247#(<= avg_~i~0 5)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {12247#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:21,614 INFO L273 TraceCheckUtils]: 78: Hoare triple {12247#(<= avg_~i~0 5)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {12257#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:21,614 INFO L273 TraceCheckUtils]: 79: Hoare triple {12257#(<= avg_~i~0 6)} assume true; {12257#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:21,615 INFO L273 TraceCheckUtils]: 80: Hoare triple {12257#(<= avg_~i~0 6)} assume !(~i~0 < 20); {11995#false} is VALID [2018-11-14 18:50:21,615 INFO L273 TraceCheckUtils]: 81: Hoare triple {11995#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {11995#false} is VALID [2018-11-14 18:50:21,615 INFO L273 TraceCheckUtils]: 82: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:50:21,615 INFO L268 TraceCheckUtils]: 83: Hoare quadruple {11995#false} {11994#true} #73#return; {11995#false} is VALID [2018-11-14 18:50:21,616 INFO L273 TraceCheckUtils]: 84: Hoare triple {11995#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {11995#false} is VALID [2018-11-14 18:50:21,616 INFO L256 TraceCheckUtils]: 85: Hoare triple {11995#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {11995#false} is VALID [2018-11-14 18:50:21,616 INFO L273 TraceCheckUtils]: 86: Hoare triple {11995#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {11995#false} is VALID [2018-11-14 18:50:21,616 INFO L273 TraceCheckUtils]: 87: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:50:21,616 INFO L273 TraceCheckUtils]: 88: Hoare triple {11995#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {11995#false} is VALID [2018-11-14 18:50:21,616 INFO L273 TraceCheckUtils]: 89: Hoare triple {11995#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11995#false} is VALID [2018-11-14 18:50:21,617 INFO L273 TraceCheckUtils]: 90: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:50:21,617 INFO L273 TraceCheckUtils]: 91: Hoare triple {11995#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {11995#false} is VALID [2018-11-14 18:50:21,617 INFO L273 TraceCheckUtils]: 92: Hoare triple {11995#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11995#false} is VALID [2018-11-14 18:50:21,617 INFO L273 TraceCheckUtils]: 93: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:50:21,617 INFO L273 TraceCheckUtils]: 94: Hoare triple {11995#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {11995#false} is VALID [2018-11-14 18:50:21,617 INFO L273 TraceCheckUtils]: 95: Hoare triple {11995#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11995#false} is VALID [2018-11-14 18:50:21,618 INFO L273 TraceCheckUtils]: 96: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:50:21,618 INFO L273 TraceCheckUtils]: 97: Hoare triple {11995#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {11995#false} is VALID [2018-11-14 18:50:21,618 INFO L273 TraceCheckUtils]: 98: Hoare triple {11995#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11995#false} is VALID [2018-11-14 18:50:21,618 INFO L273 TraceCheckUtils]: 99: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:50:21,618 INFO L273 TraceCheckUtils]: 100: Hoare triple {11995#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {11995#false} is VALID [2018-11-14 18:50:21,618 INFO L273 TraceCheckUtils]: 101: Hoare triple {11995#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11995#false} is VALID [2018-11-14 18:50:21,618 INFO L273 TraceCheckUtils]: 102: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:50:21,619 INFO L273 TraceCheckUtils]: 103: Hoare triple {11995#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {11995#false} is VALID [2018-11-14 18:50:21,619 INFO L273 TraceCheckUtils]: 104: Hoare triple {11995#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11995#false} is VALID [2018-11-14 18:50:21,619 INFO L273 TraceCheckUtils]: 105: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:50:21,619 INFO L273 TraceCheckUtils]: 106: Hoare triple {11995#false} assume !(~i~0 < 20); {11995#false} is VALID [2018-11-14 18:50:21,619 INFO L273 TraceCheckUtils]: 107: Hoare triple {11995#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {11995#false} is VALID [2018-11-14 18:50:21,619 INFO L273 TraceCheckUtils]: 108: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:50:21,619 INFO L268 TraceCheckUtils]: 109: Hoare quadruple {11995#false} {11995#false} #75#return; {11995#false} is VALID [2018-11-14 18:50:21,619 INFO L273 TraceCheckUtils]: 110: Hoare triple {11995#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {11995#false} is VALID [2018-11-14 18:50:21,619 INFO L273 TraceCheckUtils]: 111: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:50:21,619 INFO L273 TraceCheckUtils]: 112: Hoare triple {11995#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {11995#false} is VALID [2018-11-14 18:50:21,620 INFO L273 TraceCheckUtils]: 113: Hoare triple {11995#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {11995#false} is VALID [2018-11-14 18:50:21,620 INFO L273 TraceCheckUtils]: 114: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:50:21,620 INFO L273 TraceCheckUtils]: 115: Hoare triple {11995#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {11995#false} is VALID [2018-11-14 18:50:21,620 INFO L273 TraceCheckUtils]: 116: Hoare triple {11995#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {11995#false} is VALID [2018-11-14 18:50:21,620 INFO L273 TraceCheckUtils]: 117: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:50:21,620 INFO L273 TraceCheckUtils]: 118: Hoare triple {11995#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {11995#false} is VALID [2018-11-14 18:50:21,620 INFO L273 TraceCheckUtils]: 119: Hoare triple {11995#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {11995#false} is VALID [2018-11-14 18:50:21,620 INFO L273 TraceCheckUtils]: 120: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:50:21,620 INFO L273 TraceCheckUtils]: 121: Hoare triple {11995#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {11995#false} is VALID [2018-11-14 18:50:21,621 INFO L273 TraceCheckUtils]: 122: Hoare triple {11995#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {11995#false} is VALID [2018-11-14 18:50:21,621 INFO L273 TraceCheckUtils]: 123: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:50:21,621 INFO L273 TraceCheckUtils]: 124: Hoare triple {11995#false} assume !(~i~2 < 19); {11995#false} is VALID [2018-11-14 18:50:21,621 INFO L273 TraceCheckUtils]: 125: Hoare triple {11995#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {11995#false} is VALID [2018-11-14 18:50:21,621 INFO L256 TraceCheckUtils]: 126: Hoare triple {11995#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {11995#false} is VALID [2018-11-14 18:50:21,621 INFO L273 TraceCheckUtils]: 127: Hoare triple {11995#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {11995#false} is VALID [2018-11-14 18:50:21,621 INFO L273 TraceCheckUtils]: 128: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:50:21,621 INFO L273 TraceCheckUtils]: 129: Hoare triple {11995#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {11995#false} is VALID [2018-11-14 18:50:21,621 INFO L273 TraceCheckUtils]: 130: Hoare triple {11995#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11995#false} is VALID [2018-11-14 18:50:21,622 INFO L273 TraceCheckUtils]: 131: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:50:21,622 INFO L273 TraceCheckUtils]: 132: Hoare triple {11995#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {11995#false} is VALID [2018-11-14 18:50:21,622 INFO L273 TraceCheckUtils]: 133: Hoare triple {11995#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11995#false} is VALID [2018-11-14 18:50:21,622 INFO L273 TraceCheckUtils]: 134: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:50:21,622 INFO L273 TraceCheckUtils]: 135: Hoare triple {11995#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {11995#false} is VALID [2018-11-14 18:50:21,622 INFO L273 TraceCheckUtils]: 136: Hoare triple {11995#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11995#false} is VALID [2018-11-14 18:50:21,622 INFO L273 TraceCheckUtils]: 137: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:50:21,622 INFO L273 TraceCheckUtils]: 138: Hoare triple {11995#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {11995#false} is VALID [2018-11-14 18:50:21,622 INFO L273 TraceCheckUtils]: 139: Hoare triple {11995#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11995#false} is VALID [2018-11-14 18:50:21,623 INFO L273 TraceCheckUtils]: 140: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:50:21,623 INFO L273 TraceCheckUtils]: 141: Hoare triple {11995#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {11995#false} is VALID [2018-11-14 18:50:21,623 INFO L273 TraceCheckUtils]: 142: Hoare triple {11995#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11995#false} is VALID [2018-11-14 18:50:21,623 INFO L273 TraceCheckUtils]: 143: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:50:21,623 INFO L273 TraceCheckUtils]: 144: Hoare triple {11995#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {11995#false} is VALID [2018-11-14 18:50:21,623 INFO L273 TraceCheckUtils]: 145: Hoare triple {11995#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11995#false} is VALID [2018-11-14 18:50:21,623 INFO L273 TraceCheckUtils]: 146: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:50:21,623 INFO L273 TraceCheckUtils]: 147: Hoare triple {11995#false} assume !(~i~0 < 20); {11995#false} is VALID [2018-11-14 18:50:21,623 INFO L273 TraceCheckUtils]: 148: Hoare triple {11995#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {11995#false} is VALID [2018-11-14 18:50:21,624 INFO L273 TraceCheckUtils]: 149: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:50:21,624 INFO L268 TraceCheckUtils]: 150: Hoare quadruple {11995#false} {11995#false} #77#return; {11995#false} is VALID [2018-11-14 18:50:21,624 INFO L273 TraceCheckUtils]: 151: Hoare triple {11995#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {11995#false} is VALID [2018-11-14 18:50:21,624 INFO L273 TraceCheckUtils]: 152: Hoare triple {11995#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {11995#false} is VALID [2018-11-14 18:50:21,624 INFO L273 TraceCheckUtils]: 153: Hoare triple {11995#false} assume !false; {11995#false} is VALID [2018-11-14 18:50:21,633 INFO L134 CoverageAnalysis]: Checked inductivity of 1053 backedges. 270 proven. 57 refuted. 0 times theorem prover too weak. 726 trivial. 0 not checked. [2018-11-14 18:50:21,655 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:50:21,655 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [20, 9] total 27 [2018-11-14 18:50:21,656 INFO L78 Accepts]: Start accepts. Automaton has 27 states. Word has length 154 [2018-11-14 18:50:21,656 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:50:21,656 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 27 states. [2018-11-14 18:50:21,768 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 121 edges. 121 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:50:21,768 INFO L459 AbstractCegarLoop]: Interpolant automaton has 27 states [2018-11-14 18:50:21,768 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 27 interpolants. [2018-11-14 18:50:21,769 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=225, Invalid=477, Unknown=0, NotChecked=0, Total=702 [2018-11-14 18:50:21,769 INFO L87 Difference]: Start difference. First operand 107 states and 111 transitions. Second operand 27 states. [2018-11-14 18:50:22,607 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:22,608 INFO L93 Difference]: Finished difference Result 163 states and 175 transitions. [2018-11-14 18:50:22,608 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 27 states. [2018-11-14 18:50:22,608 INFO L78 Accepts]: Start accepts. Automaton has 27 states. Word has length 154 [2018-11-14 18:50:22,608 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:50:22,608 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 27 states. [2018-11-14 18:50:22,610 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 136 transitions. [2018-11-14 18:50:22,610 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 27 states. [2018-11-14 18:50:22,611 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 136 transitions. [2018-11-14 18:50:22,611 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 27 states and 136 transitions. [2018-11-14 18:50:22,765 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 136 edges. 136 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:50:22,767 INFO L225 Difference]: With dead ends: 163 [2018-11-14 18:50:22,767 INFO L226 Difference]: Without dead ends: 115 [2018-11-14 18:50:22,768 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 18:50:22,768 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 115 states. [2018-11-14 18:50:22,865 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 115 to 113. [2018-11-14 18:50:22,865 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:50:22,865 INFO L82 GeneralOperation]: Start isEquivalent. First operand 115 states. Second operand 113 states. [2018-11-14 18:50:22,866 INFO L74 IsIncluded]: Start isIncluded. First operand 115 states. Second operand 113 states. [2018-11-14 18:50:22,866 INFO L87 Difference]: Start difference. First operand 115 states. Second operand 113 states. [2018-11-14 18:50:22,868 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:22,868 INFO L93 Difference]: Finished difference Result 115 states and 119 transitions. [2018-11-14 18:50:22,868 INFO L276 IsEmpty]: Start isEmpty. Operand 115 states and 119 transitions. [2018-11-14 18:50:22,868 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:50:22,869 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:50:22,869 INFO L74 IsIncluded]: Start isIncluded. First operand 113 states. Second operand 115 states. [2018-11-14 18:50:22,869 INFO L87 Difference]: Start difference. First operand 113 states. Second operand 115 states. [2018-11-14 18:50:22,871 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:22,871 INFO L93 Difference]: Finished difference Result 115 states and 119 transitions. [2018-11-14 18:50:22,871 INFO L276 IsEmpty]: Start isEmpty. Operand 115 states and 119 transitions. [2018-11-14 18:50:22,872 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:50:22,872 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:50:22,872 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:50:22,872 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:50:22,872 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 113 states. [2018-11-14 18:50:22,874 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 113 states to 113 states and 117 transitions. [2018-11-14 18:50:22,874 INFO L78 Accepts]: Start accepts. Automaton has 113 states and 117 transitions. Word has length 154 [2018-11-14 18:50:22,874 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:50:22,875 INFO L480 AbstractCegarLoop]: Abstraction has 113 states and 117 transitions. [2018-11-14 18:50:22,875 INFO L481 AbstractCegarLoop]: Interpolant automaton has 27 states. [2018-11-14 18:50:22,875 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 117 transitions. [2018-11-14 18:50:22,876 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 167 [2018-11-14 18:50:22,876 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:50:22,876 INFO L375 BasicCegarLoop]: trace histogram [24, 21, 21, 19, 18, 18, 5, 4, 4, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:50:22,876 INFO L423 AbstractCegarLoop]: === Iteration 22 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:50:22,877 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:50:22,877 INFO L82 PathProgramCache]: Analyzing trace with hash -1920636699, now seen corresponding path program 18 times [2018-11-14 18:50:22,877 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:50:22,877 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:50:22,878 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:50:22,878 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 18:50:22,878 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:50:22,901 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:50:23,234 INFO L256 TraceCheckUtils]: 0: Hoare triple {13084#true} call ULTIMATE.init(); {13084#true} is VALID [2018-11-14 18:50:23,234 INFO L273 TraceCheckUtils]: 1: Hoare triple {13084#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {13084#true} is VALID [2018-11-14 18:50:23,234 INFO L273 TraceCheckUtils]: 2: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,234 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {13084#true} {13084#true} #69#return; {13084#true} is VALID [2018-11-14 18:50:23,234 INFO L256 TraceCheckUtils]: 4: Hoare triple {13084#true} call #t~ret12 := main(); {13084#true} is VALID [2018-11-14 18:50:23,235 INFO L273 TraceCheckUtils]: 5: Hoare triple {13084#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {13086#(= main_~i~1 0)} is VALID [2018-11-14 18:50:23,235 INFO L273 TraceCheckUtils]: 6: Hoare triple {13086#(= main_~i~1 0)} assume true; {13086#(= main_~i~1 0)} is VALID [2018-11-14 18:50:23,236 INFO L273 TraceCheckUtils]: 7: Hoare triple {13086#(= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13086#(= main_~i~1 0)} is VALID [2018-11-14 18:50:23,236 INFO L273 TraceCheckUtils]: 8: Hoare triple {13086#(= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13087#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:23,238 INFO L273 TraceCheckUtils]: 9: Hoare triple {13087#(<= main_~i~1 1)} assume true; {13087#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:23,238 INFO L273 TraceCheckUtils]: 10: Hoare triple {13087#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13087#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:23,239 INFO L273 TraceCheckUtils]: 11: Hoare triple {13087#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13088#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:23,239 INFO L273 TraceCheckUtils]: 12: Hoare triple {13088#(<= main_~i~1 2)} assume true; {13088#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:23,240 INFO L273 TraceCheckUtils]: 13: Hoare triple {13088#(<= main_~i~1 2)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13088#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:23,241 INFO L273 TraceCheckUtils]: 14: Hoare triple {13088#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13089#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:23,241 INFO L273 TraceCheckUtils]: 15: Hoare triple {13089#(<= main_~i~1 3)} assume true; {13089#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:23,242 INFO L273 TraceCheckUtils]: 16: Hoare triple {13089#(<= main_~i~1 3)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13089#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:23,242 INFO L273 TraceCheckUtils]: 17: Hoare triple {13089#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13090#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:23,243 INFO L273 TraceCheckUtils]: 18: Hoare triple {13090#(<= main_~i~1 4)} assume true; {13090#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:23,243 INFO L273 TraceCheckUtils]: 19: Hoare triple {13090#(<= main_~i~1 4)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13090#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:23,244 INFO L273 TraceCheckUtils]: 20: Hoare triple {13090#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13091#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:23,244 INFO L273 TraceCheckUtils]: 21: Hoare triple {13091#(<= main_~i~1 5)} assume true; {13091#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:23,245 INFO L273 TraceCheckUtils]: 22: Hoare triple {13091#(<= main_~i~1 5)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13091#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:23,246 INFO L273 TraceCheckUtils]: 23: Hoare triple {13091#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13092#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:23,246 INFO L273 TraceCheckUtils]: 24: Hoare triple {13092#(<= main_~i~1 6)} assume true; {13092#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:23,247 INFO L273 TraceCheckUtils]: 25: Hoare triple {13092#(<= main_~i~1 6)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13092#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:23,247 INFO L273 TraceCheckUtils]: 26: Hoare triple {13092#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13093#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:23,248 INFO L273 TraceCheckUtils]: 27: Hoare triple {13093#(<= main_~i~1 7)} assume true; {13093#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:23,248 INFO L273 TraceCheckUtils]: 28: Hoare triple {13093#(<= main_~i~1 7)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13093#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:23,249 INFO L273 TraceCheckUtils]: 29: Hoare triple {13093#(<= main_~i~1 7)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13094#(<= main_~i~1 8)} is VALID [2018-11-14 18:50:23,250 INFO L273 TraceCheckUtils]: 30: Hoare triple {13094#(<= main_~i~1 8)} assume true; {13094#(<= main_~i~1 8)} is VALID [2018-11-14 18:50:23,250 INFO L273 TraceCheckUtils]: 31: Hoare triple {13094#(<= main_~i~1 8)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13094#(<= main_~i~1 8)} is VALID [2018-11-14 18:50:23,251 INFO L273 TraceCheckUtils]: 32: Hoare triple {13094#(<= main_~i~1 8)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13095#(<= main_~i~1 9)} is VALID [2018-11-14 18:50:23,251 INFO L273 TraceCheckUtils]: 33: Hoare triple {13095#(<= main_~i~1 9)} assume true; {13095#(<= main_~i~1 9)} is VALID [2018-11-14 18:50:23,252 INFO L273 TraceCheckUtils]: 34: Hoare triple {13095#(<= main_~i~1 9)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13095#(<= main_~i~1 9)} is VALID [2018-11-14 18:50:23,253 INFO L273 TraceCheckUtils]: 35: Hoare triple {13095#(<= main_~i~1 9)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13096#(<= main_~i~1 10)} is VALID [2018-11-14 18:50:23,253 INFO L273 TraceCheckUtils]: 36: Hoare triple {13096#(<= main_~i~1 10)} assume true; {13096#(<= main_~i~1 10)} is VALID [2018-11-14 18:50:23,254 INFO L273 TraceCheckUtils]: 37: Hoare triple {13096#(<= main_~i~1 10)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13096#(<= main_~i~1 10)} is VALID [2018-11-14 18:50:23,254 INFO L273 TraceCheckUtils]: 38: Hoare triple {13096#(<= main_~i~1 10)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13097#(<= main_~i~1 11)} is VALID [2018-11-14 18:50:23,255 INFO L273 TraceCheckUtils]: 39: Hoare triple {13097#(<= main_~i~1 11)} assume true; {13097#(<= main_~i~1 11)} is VALID [2018-11-14 18:50:23,275 INFO L273 TraceCheckUtils]: 40: Hoare triple {13097#(<= main_~i~1 11)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13097#(<= main_~i~1 11)} is VALID [2018-11-14 18:50:23,292 INFO L273 TraceCheckUtils]: 41: Hoare triple {13097#(<= main_~i~1 11)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13098#(<= main_~i~1 12)} is VALID [2018-11-14 18:50:23,301 INFO L273 TraceCheckUtils]: 42: Hoare triple {13098#(<= main_~i~1 12)} assume true; {13098#(<= main_~i~1 12)} is VALID [2018-11-14 18:50:23,303 INFO L273 TraceCheckUtils]: 43: Hoare triple {13098#(<= main_~i~1 12)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13098#(<= main_~i~1 12)} is VALID [2018-11-14 18:50:23,304 INFO L273 TraceCheckUtils]: 44: Hoare triple {13098#(<= main_~i~1 12)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13099#(<= main_~i~1 13)} is VALID [2018-11-14 18:50:23,304 INFO L273 TraceCheckUtils]: 45: Hoare triple {13099#(<= main_~i~1 13)} assume true; {13099#(<= main_~i~1 13)} is VALID [2018-11-14 18:50:23,305 INFO L273 TraceCheckUtils]: 46: Hoare triple {13099#(<= main_~i~1 13)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13099#(<= main_~i~1 13)} is VALID [2018-11-14 18:50:23,305 INFO L273 TraceCheckUtils]: 47: Hoare triple {13099#(<= main_~i~1 13)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13100#(<= main_~i~1 14)} is VALID [2018-11-14 18:50:23,305 INFO L273 TraceCheckUtils]: 48: Hoare triple {13100#(<= main_~i~1 14)} assume true; {13100#(<= main_~i~1 14)} is VALID [2018-11-14 18:50:23,306 INFO L273 TraceCheckUtils]: 49: Hoare triple {13100#(<= main_~i~1 14)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13100#(<= main_~i~1 14)} is VALID [2018-11-14 18:50:23,306 INFO L273 TraceCheckUtils]: 50: Hoare triple {13100#(<= main_~i~1 14)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13101#(<= main_~i~1 15)} is VALID [2018-11-14 18:50:23,306 INFO L273 TraceCheckUtils]: 51: Hoare triple {13101#(<= main_~i~1 15)} assume true; {13101#(<= main_~i~1 15)} is VALID [2018-11-14 18:50:23,307 INFO L273 TraceCheckUtils]: 52: Hoare triple {13101#(<= main_~i~1 15)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13101#(<= main_~i~1 15)} is VALID [2018-11-14 18:50:23,308 INFO L273 TraceCheckUtils]: 53: Hoare triple {13101#(<= main_~i~1 15)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13102#(<= main_~i~1 16)} is VALID [2018-11-14 18:50:23,308 INFO L273 TraceCheckUtils]: 54: Hoare triple {13102#(<= main_~i~1 16)} assume true; {13102#(<= main_~i~1 16)} is VALID [2018-11-14 18:50:23,309 INFO L273 TraceCheckUtils]: 55: Hoare triple {13102#(<= main_~i~1 16)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13102#(<= main_~i~1 16)} is VALID [2018-11-14 18:50:23,309 INFO L273 TraceCheckUtils]: 56: Hoare triple {13102#(<= main_~i~1 16)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13103#(<= main_~i~1 17)} is VALID [2018-11-14 18:50:23,310 INFO L273 TraceCheckUtils]: 57: Hoare triple {13103#(<= main_~i~1 17)} assume true; {13103#(<= main_~i~1 17)} is VALID [2018-11-14 18:50:23,310 INFO L273 TraceCheckUtils]: 58: Hoare triple {13103#(<= main_~i~1 17)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13103#(<= main_~i~1 17)} is VALID [2018-11-14 18:50:23,311 INFO L273 TraceCheckUtils]: 59: Hoare triple {13103#(<= main_~i~1 17)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13104#(<= main_~i~1 18)} is VALID [2018-11-14 18:50:23,312 INFO L273 TraceCheckUtils]: 60: Hoare triple {13104#(<= main_~i~1 18)} assume true; {13104#(<= main_~i~1 18)} is VALID [2018-11-14 18:50:23,312 INFO L273 TraceCheckUtils]: 61: Hoare triple {13104#(<= main_~i~1 18)} assume !(~i~1 < 20); {13085#false} is VALID [2018-11-14 18:50:23,313 INFO L256 TraceCheckUtils]: 62: Hoare triple {13085#false} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {13084#true} is VALID [2018-11-14 18:50:23,313 INFO L273 TraceCheckUtils]: 63: Hoare triple {13084#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {13084#true} is VALID [2018-11-14 18:50:23,313 INFO L273 TraceCheckUtils]: 64: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,313 INFO L273 TraceCheckUtils]: 65: Hoare triple {13084#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:50:23,313 INFO L273 TraceCheckUtils]: 66: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:50:23,314 INFO L273 TraceCheckUtils]: 67: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,314 INFO L273 TraceCheckUtils]: 68: Hoare triple {13084#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:50:23,314 INFO L273 TraceCheckUtils]: 69: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:50:23,314 INFO L273 TraceCheckUtils]: 70: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,314 INFO L273 TraceCheckUtils]: 71: Hoare triple {13084#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:50:23,314 INFO L273 TraceCheckUtils]: 72: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:50:23,314 INFO L273 TraceCheckUtils]: 73: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,315 INFO L273 TraceCheckUtils]: 74: Hoare triple {13084#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:50:23,315 INFO L273 TraceCheckUtils]: 75: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:50:23,315 INFO L273 TraceCheckUtils]: 76: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,315 INFO L273 TraceCheckUtils]: 77: Hoare triple {13084#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:50:23,315 INFO L273 TraceCheckUtils]: 78: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:50:23,315 INFO L273 TraceCheckUtils]: 79: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,315 INFO L273 TraceCheckUtils]: 80: Hoare triple {13084#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:50:23,315 INFO L273 TraceCheckUtils]: 81: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:50:23,315 INFO L273 TraceCheckUtils]: 82: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,315 INFO L273 TraceCheckUtils]: 83: Hoare triple {13084#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:50:23,316 INFO L273 TraceCheckUtils]: 84: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:50:23,316 INFO L273 TraceCheckUtils]: 85: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,316 INFO L273 TraceCheckUtils]: 86: Hoare triple {13084#true} assume !(~i~0 < 20); {13084#true} is VALID [2018-11-14 18:50:23,316 INFO L273 TraceCheckUtils]: 87: Hoare triple {13084#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {13084#true} is VALID [2018-11-14 18:50:23,316 INFO L273 TraceCheckUtils]: 88: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,316 INFO L268 TraceCheckUtils]: 89: Hoare quadruple {13084#true} {13085#false} #73#return; {13085#false} is VALID [2018-11-14 18:50:23,316 INFO L273 TraceCheckUtils]: 90: Hoare triple {13085#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {13085#false} is VALID [2018-11-14 18:50:23,316 INFO L256 TraceCheckUtils]: 91: Hoare triple {13085#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {13084#true} is VALID [2018-11-14 18:50:23,316 INFO L273 TraceCheckUtils]: 92: Hoare triple {13084#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {13084#true} is VALID [2018-11-14 18:50:23,317 INFO L273 TraceCheckUtils]: 93: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,317 INFO L273 TraceCheckUtils]: 94: Hoare triple {13084#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:50:23,317 INFO L273 TraceCheckUtils]: 95: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:50:23,317 INFO L273 TraceCheckUtils]: 96: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,317 INFO L273 TraceCheckUtils]: 97: Hoare triple {13084#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:50:23,317 INFO L273 TraceCheckUtils]: 98: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:50:23,317 INFO L273 TraceCheckUtils]: 99: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,317 INFO L273 TraceCheckUtils]: 100: Hoare triple {13084#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:50:23,317 INFO L273 TraceCheckUtils]: 101: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:50:23,318 INFO L273 TraceCheckUtils]: 102: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,318 INFO L273 TraceCheckUtils]: 103: Hoare triple {13084#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:50:23,318 INFO L273 TraceCheckUtils]: 104: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:50:23,318 INFO L273 TraceCheckUtils]: 105: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,318 INFO L273 TraceCheckUtils]: 106: Hoare triple {13084#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:50:23,319 INFO L273 TraceCheckUtils]: 107: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:50:23,319 INFO L273 TraceCheckUtils]: 108: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,319 INFO L273 TraceCheckUtils]: 109: Hoare triple {13084#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:50:23,319 INFO L273 TraceCheckUtils]: 110: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:50:23,319 INFO L273 TraceCheckUtils]: 111: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,320 INFO L273 TraceCheckUtils]: 112: Hoare triple {13084#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:50:23,320 INFO L273 TraceCheckUtils]: 113: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:50:23,320 INFO L273 TraceCheckUtils]: 114: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,320 INFO L273 TraceCheckUtils]: 115: Hoare triple {13084#true} assume !(~i~0 < 20); {13084#true} is VALID [2018-11-14 18:50:23,320 INFO L273 TraceCheckUtils]: 116: Hoare triple {13084#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {13084#true} is VALID [2018-11-14 18:50:23,321 INFO L273 TraceCheckUtils]: 117: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,321 INFO L268 TraceCheckUtils]: 118: Hoare quadruple {13084#true} {13085#false} #75#return; {13085#false} is VALID [2018-11-14 18:50:23,321 INFO L273 TraceCheckUtils]: 119: Hoare triple {13085#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {13085#false} is VALID [2018-11-14 18:50:23,321 INFO L273 TraceCheckUtils]: 120: Hoare triple {13085#false} assume true; {13085#false} is VALID [2018-11-14 18:50:23,321 INFO L273 TraceCheckUtils]: 121: Hoare triple {13085#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {13085#false} is VALID [2018-11-14 18:50:23,322 INFO L273 TraceCheckUtils]: 122: Hoare triple {13085#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {13085#false} is VALID [2018-11-14 18:50:23,322 INFO L273 TraceCheckUtils]: 123: Hoare triple {13085#false} assume true; {13085#false} is VALID [2018-11-14 18:50:23,322 INFO L273 TraceCheckUtils]: 124: Hoare triple {13085#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {13085#false} is VALID [2018-11-14 18:50:23,322 INFO L273 TraceCheckUtils]: 125: Hoare triple {13085#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {13085#false} is VALID [2018-11-14 18:50:23,322 INFO L273 TraceCheckUtils]: 126: Hoare triple {13085#false} assume true; {13085#false} is VALID [2018-11-14 18:50:23,322 INFO L273 TraceCheckUtils]: 127: Hoare triple {13085#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {13085#false} is VALID [2018-11-14 18:50:23,323 INFO L273 TraceCheckUtils]: 128: Hoare triple {13085#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {13085#false} is VALID [2018-11-14 18:50:23,323 INFO L273 TraceCheckUtils]: 129: Hoare triple {13085#false} assume true; {13085#false} is VALID [2018-11-14 18:50:23,323 INFO L273 TraceCheckUtils]: 130: Hoare triple {13085#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {13085#false} is VALID [2018-11-14 18:50:23,323 INFO L273 TraceCheckUtils]: 131: Hoare triple {13085#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {13085#false} is VALID [2018-11-14 18:50:23,323 INFO L273 TraceCheckUtils]: 132: Hoare triple {13085#false} assume true; {13085#false} is VALID [2018-11-14 18:50:23,324 INFO L273 TraceCheckUtils]: 133: Hoare triple {13085#false} assume !(~i~2 < 19); {13085#false} is VALID [2018-11-14 18:50:23,324 INFO L273 TraceCheckUtils]: 134: Hoare triple {13085#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {13085#false} is VALID [2018-11-14 18:50:23,324 INFO L256 TraceCheckUtils]: 135: Hoare triple {13085#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {13084#true} is VALID [2018-11-14 18:50:23,324 INFO L273 TraceCheckUtils]: 136: Hoare triple {13084#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {13084#true} is VALID [2018-11-14 18:50:23,324 INFO L273 TraceCheckUtils]: 137: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,325 INFO L273 TraceCheckUtils]: 138: Hoare triple {13084#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:50:23,325 INFO L273 TraceCheckUtils]: 139: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:50:23,325 INFO L273 TraceCheckUtils]: 140: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,325 INFO L273 TraceCheckUtils]: 141: Hoare triple {13084#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:50:23,325 INFO L273 TraceCheckUtils]: 142: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:50:23,326 INFO L273 TraceCheckUtils]: 143: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,326 INFO L273 TraceCheckUtils]: 144: Hoare triple {13084#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:50:23,326 INFO L273 TraceCheckUtils]: 145: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:50:23,326 INFO L273 TraceCheckUtils]: 146: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,326 INFO L273 TraceCheckUtils]: 147: Hoare triple {13084#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:50:23,326 INFO L273 TraceCheckUtils]: 148: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:50:23,327 INFO L273 TraceCheckUtils]: 149: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,327 INFO L273 TraceCheckUtils]: 150: Hoare triple {13084#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:50:23,327 INFO L273 TraceCheckUtils]: 151: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:50:23,327 INFO L273 TraceCheckUtils]: 152: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,327 INFO L273 TraceCheckUtils]: 153: Hoare triple {13084#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:50:23,328 INFO L273 TraceCheckUtils]: 154: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:50:23,328 INFO L273 TraceCheckUtils]: 155: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,328 INFO L273 TraceCheckUtils]: 156: Hoare triple {13084#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:50:23,328 INFO L273 TraceCheckUtils]: 157: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:50:23,328 INFO L273 TraceCheckUtils]: 158: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,329 INFO L273 TraceCheckUtils]: 159: Hoare triple {13084#true} assume !(~i~0 < 20); {13084#true} is VALID [2018-11-14 18:50:23,329 INFO L273 TraceCheckUtils]: 160: Hoare triple {13084#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {13084#true} is VALID [2018-11-14 18:50:23,329 INFO L273 TraceCheckUtils]: 161: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,329 INFO L268 TraceCheckUtils]: 162: Hoare quadruple {13084#true} {13085#false} #77#return; {13085#false} is VALID [2018-11-14 18:50:23,329 INFO L273 TraceCheckUtils]: 163: Hoare triple {13085#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {13085#false} is VALID [2018-11-14 18:50:23,330 INFO L273 TraceCheckUtils]: 164: Hoare triple {13085#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {13085#false} is VALID [2018-11-14 18:50:23,330 INFO L273 TraceCheckUtils]: 165: Hoare triple {13085#false} assume !false; {13085#false} is VALID [2018-11-14 18:50:23,356 INFO L134 CoverageAnalysis]: Checked inductivity of 1295 backedges. 0 proven. 495 refuted. 0 times theorem prover too weak. 800 trivial. 0 not checked. [2018-11-14 18:50:23,356 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:50:23,356 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 20 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 20 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:50:23,364 INFO L103 rtionOrderModulation]: Keeping assertion order MIX_INSIDE_OUTSIDE [2018-11-14 18:50:23,625 INFO L249 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 11 check-sat command(s) [2018-11-14 18:50:23,625 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 18:50:23,659 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:50:23,661 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:50:23,890 INFO L256 TraceCheckUtils]: 0: Hoare triple {13084#true} call ULTIMATE.init(); {13084#true} is VALID [2018-11-14 18:50:23,890 INFO L273 TraceCheckUtils]: 1: Hoare triple {13084#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {13084#true} is VALID [2018-11-14 18:50:23,890 INFO L273 TraceCheckUtils]: 2: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,891 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {13084#true} {13084#true} #69#return; {13084#true} is VALID [2018-11-14 18:50:23,891 INFO L256 TraceCheckUtils]: 4: Hoare triple {13084#true} call #t~ret12 := main(); {13084#true} is VALID [2018-11-14 18:50:23,891 INFO L273 TraceCheckUtils]: 5: Hoare triple {13084#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {13084#true} is VALID [2018-11-14 18:50:23,891 INFO L273 TraceCheckUtils]: 6: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,891 INFO L273 TraceCheckUtils]: 7: Hoare triple {13084#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13084#true} is VALID [2018-11-14 18:50:23,892 INFO L273 TraceCheckUtils]: 8: Hoare triple {13084#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13084#true} is VALID [2018-11-14 18:50:23,892 INFO L273 TraceCheckUtils]: 9: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,892 INFO L273 TraceCheckUtils]: 10: Hoare triple {13084#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13084#true} is VALID [2018-11-14 18:50:23,892 INFO L273 TraceCheckUtils]: 11: Hoare triple {13084#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13084#true} is VALID [2018-11-14 18:50:23,892 INFO L273 TraceCheckUtils]: 12: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,892 INFO L273 TraceCheckUtils]: 13: Hoare triple {13084#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13084#true} is VALID [2018-11-14 18:50:23,892 INFO L273 TraceCheckUtils]: 14: Hoare triple {13084#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13084#true} is VALID [2018-11-14 18:50:23,893 INFO L273 TraceCheckUtils]: 15: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,893 INFO L273 TraceCheckUtils]: 16: Hoare triple {13084#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13084#true} is VALID [2018-11-14 18:50:23,893 INFO L273 TraceCheckUtils]: 17: Hoare triple {13084#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13084#true} is VALID [2018-11-14 18:50:23,893 INFO L273 TraceCheckUtils]: 18: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,893 INFO L273 TraceCheckUtils]: 19: Hoare triple {13084#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13084#true} is VALID [2018-11-14 18:50:23,893 INFO L273 TraceCheckUtils]: 20: Hoare triple {13084#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13084#true} is VALID [2018-11-14 18:50:23,893 INFO L273 TraceCheckUtils]: 21: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,893 INFO L273 TraceCheckUtils]: 22: Hoare triple {13084#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13084#true} is VALID [2018-11-14 18:50:23,893 INFO L273 TraceCheckUtils]: 23: Hoare triple {13084#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13084#true} is VALID [2018-11-14 18:50:23,894 INFO L273 TraceCheckUtils]: 24: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,894 INFO L273 TraceCheckUtils]: 25: Hoare triple {13084#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13084#true} is VALID [2018-11-14 18:50:23,894 INFO L273 TraceCheckUtils]: 26: Hoare triple {13084#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13084#true} is VALID [2018-11-14 18:50:23,894 INFO L273 TraceCheckUtils]: 27: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,894 INFO L273 TraceCheckUtils]: 28: Hoare triple {13084#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13084#true} is VALID [2018-11-14 18:50:23,894 INFO L273 TraceCheckUtils]: 29: Hoare triple {13084#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13084#true} is VALID [2018-11-14 18:50:23,894 INFO L273 TraceCheckUtils]: 30: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,894 INFO L273 TraceCheckUtils]: 31: Hoare triple {13084#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13084#true} is VALID [2018-11-14 18:50:23,894 INFO L273 TraceCheckUtils]: 32: Hoare triple {13084#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13084#true} is VALID [2018-11-14 18:50:23,894 INFO L273 TraceCheckUtils]: 33: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,895 INFO L273 TraceCheckUtils]: 34: Hoare triple {13084#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13084#true} is VALID [2018-11-14 18:50:23,895 INFO L273 TraceCheckUtils]: 35: Hoare triple {13084#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13084#true} is VALID [2018-11-14 18:50:23,895 INFO L273 TraceCheckUtils]: 36: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,895 INFO L273 TraceCheckUtils]: 37: Hoare triple {13084#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13084#true} is VALID [2018-11-14 18:50:23,895 INFO L273 TraceCheckUtils]: 38: Hoare triple {13084#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13084#true} is VALID [2018-11-14 18:50:23,895 INFO L273 TraceCheckUtils]: 39: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,895 INFO L273 TraceCheckUtils]: 40: Hoare triple {13084#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13084#true} is VALID [2018-11-14 18:50:23,895 INFO L273 TraceCheckUtils]: 41: Hoare triple {13084#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13084#true} is VALID [2018-11-14 18:50:23,896 INFO L273 TraceCheckUtils]: 42: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,896 INFO L273 TraceCheckUtils]: 43: Hoare triple {13084#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13084#true} is VALID [2018-11-14 18:50:23,896 INFO L273 TraceCheckUtils]: 44: Hoare triple {13084#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13084#true} is VALID [2018-11-14 18:50:23,896 INFO L273 TraceCheckUtils]: 45: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,896 INFO L273 TraceCheckUtils]: 46: Hoare triple {13084#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13084#true} is VALID [2018-11-14 18:50:23,896 INFO L273 TraceCheckUtils]: 47: Hoare triple {13084#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13084#true} is VALID [2018-11-14 18:50:23,896 INFO L273 TraceCheckUtils]: 48: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,897 INFO L273 TraceCheckUtils]: 49: Hoare triple {13084#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13084#true} is VALID [2018-11-14 18:50:23,897 INFO L273 TraceCheckUtils]: 50: Hoare triple {13084#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13084#true} is VALID [2018-11-14 18:50:23,897 INFO L273 TraceCheckUtils]: 51: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,897 INFO L273 TraceCheckUtils]: 52: Hoare triple {13084#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13084#true} is VALID [2018-11-14 18:50:23,897 INFO L273 TraceCheckUtils]: 53: Hoare triple {13084#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13084#true} is VALID [2018-11-14 18:50:23,897 INFO L273 TraceCheckUtils]: 54: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,898 INFO L273 TraceCheckUtils]: 55: Hoare triple {13084#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13084#true} is VALID [2018-11-14 18:50:23,898 INFO L273 TraceCheckUtils]: 56: Hoare triple {13084#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13084#true} is VALID [2018-11-14 18:50:23,898 INFO L273 TraceCheckUtils]: 57: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,898 INFO L273 TraceCheckUtils]: 58: Hoare triple {13084#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13084#true} is VALID [2018-11-14 18:50:23,898 INFO L273 TraceCheckUtils]: 59: Hoare triple {13084#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13084#true} is VALID [2018-11-14 18:50:23,898 INFO L273 TraceCheckUtils]: 60: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,899 INFO L273 TraceCheckUtils]: 61: Hoare triple {13084#true} assume !(~i~1 < 20); {13084#true} is VALID [2018-11-14 18:50:23,899 INFO L256 TraceCheckUtils]: 62: Hoare triple {13084#true} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {13084#true} is VALID [2018-11-14 18:50:23,899 INFO L273 TraceCheckUtils]: 63: Hoare triple {13084#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {13084#true} is VALID [2018-11-14 18:50:23,899 INFO L273 TraceCheckUtils]: 64: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,899 INFO L273 TraceCheckUtils]: 65: Hoare triple {13084#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:50:23,899 INFO L273 TraceCheckUtils]: 66: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:50:23,900 INFO L273 TraceCheckUtils]: 67: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,900 INFO L273 TraceCheckUtils]: 68: Hoare triple {13084#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:50:23,900 INFO L273 TraceCheckUtils]: 69: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:50:23,900 INFO L273 TraceCheckUtils]: 70: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,900 INFO L273 TraceCheckUtils]: 71: Hoare triple {13084#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:50:23,900 INFO L273 TraceCheckUtils]: 72: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:50:23,901 INFO L273 TraceCheckUtils]: 73: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,901 INFO L273 TraceCheckUtils]: 74: Hoare triple {13084#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:50:23,901 INFO L273 TraceCheckUtils]: 75: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:50:23,901 INFO L273 TraceCheckUtils]: 76: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,901 INFO L273 TraceCheckUtils]: 77: Hoare triple {13084#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:50:23,901 INFO L273 TraceCheckUtils]: 78: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:50:23,902 INFO L273 TraceCheckUtils]: 79: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,902 INFO L273 TraceCheckUtils]: 80: Hoare triple {13084#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:50:23,902 INFO L273 TraceCheckUtils]: 81: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:50:23,902 INFO L273 TraceCheckUtils]: 82: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,902 INFO L273 TraceCheckUtils]: 83: Hoare triple {13084#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:50:23,902 INFO L273 TraceCheckUtils]: 84: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:50:23,902 INFO L273 TraceCheckUtils]: 85: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,903 INFO L273 TraceCheckUtils]: 86: Hoare triple {13084#true} assume !(~i~0 < 20); {13084#true} is VALID [2018-11-14 18:50:23,903 INFO L273 TraceCheckUtils]: 87: Hoare triple {13084#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {13084#true} is VALID [2018-11-14 18:50:23,903 INFO L273 TraceCheckUtils]: 88: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,903 INFO L268 TraceCheckUtils]: 89: Hoare quadruple {13084#true} {13084#true} #73#return; {13084#true} is VALID [2018-11-14 18:50:23,903 INFO L273 TraceCheckUtils]: 90: Hoare triple {13084#true} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {13084#true} is VALID [2018-11-14 18:50:23,903 INFO L256 TraceCheckUtils]: 91: Hoare triple {13084#true} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {13084#true} is VALID [2018-11-14 18:50:23,904 INFO L273 TraceCheckUtils]: 92: Hoare triple {13084#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {13084#true} is VALID [2018-11-14 18:50:23,904 INFO L273 TraceCheckUtils]: 93: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,904 INFO L273 TraceCheckUtils]: 94: Hoare triple {13084#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:50:23,904 INFO L273 TraceCheckUtils]: 95: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:50:23,904 INFO L273 TraceCheckUtils]: 96: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,904 INFO L273 TraceCheckUtils]: 97: Hoare triple {13084#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:50:23,904 INFO L273 TraceCheckUtils]: 98: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:50:23,905 INFO L273 TraceCheckUtils]: 99: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,905 INFO L273 TraceCheckUtils]: 100: Hoare triple {13084#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:50:23,905 INFO L273 TraceCheckUtils]: 101: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:50:23,905 INFO L273 TraceCheckUtils]: 102: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,905 INFO L273 TraceCheckUtils]: 103: Hoare triple {13084#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:50:23,905 INFO L273 TraceCheckUtils]: 104: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:50:23,906 INFO L273 TraceCheckUtils]: 105: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,906 INFO L273 TraceCheckUtils]: 106: Hoare triple {13084#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:50:23,906 INFO L273 TraceCheckUtils]: 107: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:50:23,906 INFO L273 TraceCheckUtils]: 108: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,906 INFO L273 TraceCheckUtils]: 109: Hoare triple {13084#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:50:23,906 INFO L273 TraceCheckUtils]: 110: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:50:23,906 INFO L273 TraceCheckUtils]: 111: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,907 INFO L273 TraceCheckUtils]: 112: Hoare triple {13084#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:50:23,907 INFO L273 TraceCheckUtils]: 113: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:50:23,907 INFO L273 TraceCheckUtils]: 114: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,907 INFO L273 TraceCheckUtils]: 115: Hoare triple {13084#true} assume !(~i~0 < 20); {13084#true} is VALID [2018-11-14 18:50:23,907 INFO L273 TraceCheckUtils]: 116: Hoare triple {13084#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {13084#true} is VALID [2018-11-14 18:50:23,907 INFO L273 TraceCheckUtils]: 117: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:50:23,907 INFO L268 TraceCheckUtils]: 118: Hoare quadruple {13084#true} {13084#true} #75#return; {13084#true} is VALID [2018-11-14 18:50:23,921 INFO L273 TraceCheckUtils]: 119: Hoare triple {13084#true} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {13465#(<= main_~i~2 0)} is VALID [2018-11-14 18:50:23,930 INFO L273 TraceCheckUtils]: 120: Hoare triple {13465#(<= main_~i~2 0)} assume true; {13465#(<= main_~i~2 0)} is VALID [2018-11-14 18:50:23,934 INFO L273 TraceCheckUtils]: 121: Hoare triple {13465#(<= main_~i~2 0)} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {13465#(<= main_~i~2 0)} is VALID [2018-11-14 18:50:23,938 INFO L273 TraceCheckUtils]: 122: Hoare triple {13465#(<= main_~i~2 0)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {13475#(<= main_~i~2 1)} is VALID [2018-11-14 18:50:23,938 INFO L273 TraceCheckUtils]: 123: Hoare triple {13475#(<= main_~i~2 1)} assume true; {13475#(<= main_~i~2 1)} is VALID [2018-11-14 18:50:23,942 INFO L273 TraceCheckUtils]: 124: Hoare triple {13475#(<= main_~i~2 1)} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {13475#(<= main_~i~2 1)} is VALID [2018-11-14 18:50:23,942 INFO L273 TraceCheckUtils]: 125: Hoare triple {13475#(<= main_~i~2 1)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {13485#(<= main_~i~2 2)} is VALID [2018-11-14 18:50:23,945 INFO L273 TraceCheckUtils]: 126: Hoare triple {13485#(<= main_~i~2 2)} assume true; {13485#(<= main_~i~2 2)} is VALID [2018-11-14 18:50:23,945 INFO L273 TraceCheckUtils]: 127: Hoare triple {13485#(<= main_~i~2 2)} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {13485#(<= main_~i~2 2)} is VALID [2018-11-14 18:50:23,945 INFO L273 TraceCheckUtils]: 128: Hoare triple {13485#(<= main_~i~2 2)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {13495#(<= main_~i~2 3)} is VALID [2018-11-14 18:50:23,946 INFO L273 TraceCheckUtils]: 129: Hoare triple {13495#(<= main_~i~2 3)} assume true; {13495#(<= main_~i~2 3)} is VALID [2018-11-14 18:50:23,946 INFO L273 TraceCheckUtils]: 130: Hoare triple {13495#(<= main_~i~2 3)} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {13495#(<= main_~i~2 3)} is VALID [2018-11-14 18:50:23,946 INFO L273 TraceCheckUtils]: 131: Hoare triple {13495#(<= main_~i~2 3)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {13505#(<= main_~i~2 4)} is VALID [2018-11-14 18:50:23,947 INFO L273 TraceCheckUtils]: 132: Hoare triple {13505#(<= main_~i~2 4)} assume true; {13505#(<= main_~i~2 4)} is VALID [2018-11-14 18:50:23,947 INFO L273 TraceCheckUtils]: 133: Hoare triple {13505#(<= main_~i~2 4)} assume !(~i~2 < 19); {13085#false} is VALID [2018-11-14 18:50:23,947 INFO L273 TraceCheckUtils]: 134: Hoare triple {13085#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {13085#false} is VALID [2018-11-14 18:50:23,947 INFO L256 TraceCheckUtils]: 135: Hoare triple {13085#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {13085#false} is VALID [2018-11-14 18:50:23,947 INFO L273 TraceCheckUtils]: 136: Hoare triple {13085#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {13085#false} is VALID [2018-11-14 18:50:23,948 INFO L273 TraceCheckUtils]: 137: Hoare triple {13085#false} assume true; {13085#false} is VALID [2018-11-14 18:50:23,948 INFO L273 TraceCheckUtils]: 138: Hoare triple {13085#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {13085#false} is VALID [2018-11-14 18:50:23,948 INFO L273 TraceCheckUtils]: 139: Hoare triple {13085#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13085#false} is VALID [2018-11-14 18:50:23,948 INFO L273 TraceCheckUtils]: 140: Hoare triple {13085#false} assume true; {13085#false} is VALID [2018-11-14 18:50:23,948 INFO L273 TraceCheckUtils]: 141: Hoare triple {13085#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {13085#false} is VALID [2018-11-14 18:50:23,948 INFO L273 TraceCheckUtils]: 142: Hoare triple {13085#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13085#false} is VALID [2018-11-14 18:50:23,948 INFO L273 TraceCheckUtils]: 143: Hoare triple {13085#false} assume true; {13085#false} is VALID [2018-11-14 18:50:23,948 INFO L273 TraceCheckUtils]: 144: Hoare triple {13085#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {13085#false} is VALID [2018-11-14 18:50:23,948 INFO L273 TraceCheckUtils]: 145: Hoare triple {13085#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13085#false} is VALID [2018-11-14 18:50:23,949 INFO L273 TraceCheckUtils]: 146: Hoare triple {13085#false} assume true; {13085#false} is VALID [2018-11-14 18:50:23,949 INFO L273 TraceCheckUtils]: 147: Hoare triple {13085#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {13085#false} is VALID [2018-11-14 18:50:23,949 INFO L273 TraceCheckUtils]: 148: Hoare triple {13085#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13085#false} is VALID [2018-11-14 18:50:23,949 INFO L273 TraceCheckUtils]: 149: Hoare triple {13085#false} assume true; {13085#false} is VALID [2018-11-14 18:50:23,949 INFO L273 TraceCheckUtils]: 150: Hoare triple {13085#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {13085#false} is VALID [2018-11-14 18:50:23,950 INFO L273 TraceCheckUtils]: 151: Hoare triple {13085#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13085#false} is VALID [2018-11-14 18:50:23,950 INFO L273 TraceCheckUtils]: 152: Hoare triple {13085#false} assume true; {13085#false} is VALID [2018-11-14 18:50:23,950 INFO L273 TraceCheckUtils]: 153: Hoare triple {13085#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {13085#false} is VALID [2018-11-14 18:50:23,950 INFO L273 TraceCheckUtils]: 154: Hoare triple {13085#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13085#false} is VALID [2018-11-14 18:50:23,951 INFO L273 TraceCheckUtils]: 155: Hoare triple {13085#false} assume true; {13085#false} is VALID [2018-11-14 18:50:23,951 INFO L273 TraceCheckUtils]: 156: Hoare triple {13085#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {13085#false} is VALID [2018-11-14 18:50:23,951 INFO L273 TraceCheckUtils]: 157: Hoare triple {13085#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13085#false} is VALID [2018-11-14 18:50:23,952 INFO L273 TraceCheckUtils]: 158: Hoare triple {13085#false} assume true; {13085#false} is VALID [2018-11-14 18:50:23,952 INFO L273 TraceCheckUtils]: 159: Hoare triple {13085#false} assume !(~i~0 < 20); {13085#false} is VALID [2018-11-14 18:50:23,952 INFO L273 TraceCheckUtils]: 160: Hoare triple {13085#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {13085#false} is VALID [2018-11-14 18:50:23,952 INFO L273 TraceCheckUtils]: 161: Hoare triple {13085#false} assume true; {13085#false} is VALID [2018-11-14 18:50:23,952 INFO L268 TraceCheckUtils]: 162: Hoare quadruple {13085#false} {13085#false} #77#return; {13085#false} is VALID [2018-11-14 18:50:23,952 INFO L273 TraceCheckUtils]: 163: Hoare triple {13085#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {13085#false} is VALID [2018-11-14 18:50:23,952 INFO L273 TraceCheckUtils]: 164: Hoare triple {13085#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {13085#false} is VALID [2018-11-14 18:50:23,952 INFO L273 TraceCheckUtils]: 165: Hoare triple {13085#false} assume !false; {13085#false} is VALID [2018-11-14 18:50:23,962 INFO L134 CoverageAnalysis]: Checked inductivity of 1295 backedges. 362 proven. 26 refuted. 0 times theorem prover too weak. 907 trivial. 0 not checked. [2018-11-14 18:50:23,984 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:50:23,985 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [21, 7] total 26 [2018-11-14 18:50:23,985 INFO L78 Accepts]: Start accepts. Automaton has 26 states. Word has length 166 [2018-11-14 18:50:23,985 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:50:23,985 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 26 states. [2018-11-14 18:50:24,096 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 119 edges. 119 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:50:24,096 INFO L459 AbstractCegarLoop]: Interpolant automaton has 26 states [2018-11-14 18:50:24,096 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 26 interpolants. [2018-11-14 18:50:24,097 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=230, Invalid=420, Unknown=0, NotChecked=0, Total=650 [2018-11-14 18:50:24,097 INFO L87 Difference]: Start difference. First operand 113 states and 117 transitions. Second operand 26 states. [2018-11-14 18:50:24,869 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:24,869 INFO L93 Difference]: Finished difference Result 172 states and 181 transitions. [2018-11-14 18:50:24,869 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 26 states. [2018-11-14 18:50:24,869 INFO L78 Accepts]: Start accepts. Automaton has 26 states. Word has length 166 [2018-11-14 18:50:24,869 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:50:24,869 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 26 states. [2018-11-14 18:50:24,870 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 130 transitions. [2018-11-14 18:50:24,870 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 26 states. [2018-11-14 18:50:24,871 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 130 transitions. [2018-11-14 18:50:24,872 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 26 states and 130 transitions. [2018-11-14 18:50:25,008 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 130 edges. 130 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:50:25,011 INFO L225 Difference]: With dead ends: 172 [2018-11-14 18:50:25,011 INFO L226 Difference]: Without dead ends: 121 [2018-11-14 18:50:25,012 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 186 GetRequests, 162 SyntacticMatches, 0 SemanticMatches, 24 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 90 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=230, Invalid=420, Unknown=0, NotChecked=0, Total=650 [2018-11-14 18:50:25,012 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 121 states. [2018-11-14 18:50:25,061 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 121 to 119. [2018-11-14 18:50:25,061 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:50:25,061 INFO L82 GeneralOperation]: Start isEquivalent. First operand 121 states. Second operand 119 states. [2018-11-14 18:50:25,061 INFO L74 IsIncluded]: Start isIncluded. First operand 121 states. Second operand 119 states. [2018-11-14 18:50:25,062 INFO L87 Difference]: Start difference. First operand 121 states. Second operand 119 states. [2018-11-14 18:50:25,063 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:25,064 INFO L93 Difference]: Finished difference Result 121 states and 125 transitions. [2018-11-14 18:50:25,064 INFO L276 IsEmpty]: Start isEmpty. Operand 121 states and 125 transitions. [2018-11-14 18:50:25,064 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:50:25,065 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:50:25,065 INFO L74 IsIncluded]: Start isIncluded. First operand 119 states. Second operand 121 states. [2018-11-14 18:50:25,065 INFO L87 Difference]: Start difference. First operand 119 states. Second operand 121 states. [2018-11-14 18:50:25,067 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:25,067 INFO L93 Difference]: Finished difference Result 121 states and 125 transitions. [2018-11-14 18:50:25,067 INFO L276 IsEmpty]: Start isEmpty. Operand 121 states and 125 transitions. [2018-11-14 18:50:25,068 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:50:25,068 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:50:25,068 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:50:25,068 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:50:25,068 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 119 states. [2018-11-14 18:50:25,070 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 119 states to 119 states and 123 transitions. [2018-11-14 18:50:25,070 INFO L78 Accepts]: Start accepts. Automaton has 119 states and 123 transitions. Word has length 166 [2018-11-14 18:50:25,070 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:50:25,070 INFO L480 AbstractCegarLoop]: Abstraction has 119 states and 123 transitions. [2018-11-14 18:50:25,071 INFO L481 AbstractCegarLoop]: Interpolant automaton has 26 states. [2018-11-14 18:50:25,071 INFO L276 IsEmpty]: Start isEmpty. Operand 119 states and 123 transitions. [2018-11-14 18:50:25,072 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 173 [2018-11-14 18:50:25,072 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:50:25,072 INFO L375 BasicCegarLoop]: trace histogram [24, 21, 21, 20, 19, 19, 6, 5, 5, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:50:25,072 INFO L423 AbstractCegarLoop]: === Iteration 23 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:50:25,072 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:50:25,073 INFO L82 PathProgramCache]: Analyzing trace with hash 625651725, now seen corresponding path program 19 times [2018-11-14 18:50:25,073 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:50:25,073 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:50:25,073 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:50:25,073 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 18:50:25,074 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:50:25,097 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:50:25,433 INFO L256 TraceCheckUtils]: 0: Hoare triple {14241#true} call ULTIMATE.init(); {14241#true} is VALID [2018-11-14 18:50:25,433 INFO L273 TraceCheckUtils]: 1: Hoare triple {14241#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {14241#true} is VALID [2018-11-14 18:50:25,433 INFO L273 TraceCheckUtils]: 2: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:50:25,433 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {14241#true} {14241#true} #69#return; {14241#true} is VALID [2018-11-14 18:50:25,433 INFO L256 TraceCheckUtils]: 4: Hoare triple {14241#true} call #t~ret12 := main(); {14241#true} is VALID [2018-11-14 18:50:25,434 INFO L273 TraceCheckUtils]: 5: Hoare triple {14241#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {14243#(= main_~i~1 0)} is VALID [2018-11-14 18:50:25,434 INFO L273 TraceCheckUtils]: 6: Hoare triple {14243#(= main_~i~1 0)} assume true; {14243#(= main_~i~1 0)} is VALID [2018-11-14 18:50:25,435 INFO L273 TraceCheckUtils]: 7: Hoare triple {14243#(= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14243#(= main_~i~1 0)} is VALID [2018-11-14 18:50:25,435 INFO L273 TraceCheckUtils]: 8: Hoare triple {14243#(= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14244#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:25,436 INFO L273 TraceCheckUtils]: 9: Hoare triple {14244#(<= main_~i~1 1)} assume true; {14244#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:25,436 INFO L273 TraceCheckUtils]: 10: Hoare triple {14244#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14244#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:25,437 INFO L273 TraceCheckUtils]: 11: Hoare triple {14244#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14245#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:25,438 INFO L273 TraceCheckUtils]: 12: Hoare triple {14245#(<= main_~i~1 2)} assume true; {14245#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:25,438 INFO L273 TraceCheckUtils]: 13: Hoare triple {14245#(<= main_~i~1 2)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14245#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:25,439 INFO L273 TraceCheckUtils]: 14: Hoare triple {14245#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14246#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:25,439 INFO L273 TraceCheckUtils]: 15: Hoare triple {14246#(<= main_~i~1 3)} assume true; {14246#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:25,440 INFO L273 TraceCheckUtils]: 16: Hoare triple {14246#(<= main_~i~1 3)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14246#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:25,441 INFO L273 TraceCheckUtils]: 17: Hoare triple {14246#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14247#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:25,441 INFO L273 TraceCheckUtils]: 18: Hoare triple {14247#(<= main_~i~1 4)} assume true; {14247#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:25,442 INFO L273 TraceCheckUtils]: 19: Hoare triple {14247#(<= main_~i~1 4)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14247#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:25,442 INFO L273 TraceCheckUtils]: 20: Hoare triple {14247#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14248#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:25,443 INFO L273 TraceCheckUtils]: 21: Hoare triple {14248#(<= main_~i~1 5)} assume true; {14248#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:25,443 INFO L273 TraceCheckUtils]: 22: Hoare triple {14248#(<= main_~i~1 5)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14248#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:25,444 INFO L273 TraceCheckUtils]: 23: Hoare triple {14248#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14249#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:25,445 INFO L273 TraceCheckUtils]: 24: Hoare triple {14249#(<= main_~i~1 6)} assume true; {14249#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:25,445 INFO L273 TraceCheckUtils]: 25: Hoare triple {14249#(<= main_~i~1 6)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14249#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:25,446 INFO L273 TraceCheckUtils]: 26: Hoare triple {14249#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14250#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:25,446 INFO L273 TraceCheckUtils]: 27: Hoare triple {14250#(<= main_~i~1 7)} assume true; {14250#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:25,447 INFO L273 TraceCheckUtils]: 28: Hoare triple {14250#(<= main_~i~1 7)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14250#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:25,448 INFO L273 TraceCheckUtils]: 29: Hoare triple {14250#(<= main_~i~1 7)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14251#(<= main_~i~1 8)} is VALID [2018-11-14 18:50:25,448 INFO L273 TraceCheckUtils]: 30: Hoare triple {14251#(<= main_~i~1 8)} assume true; {14251#(<= main_~i~1 8)} is VALID [2018-11-14 18:50:25,449 INFO L273 TraceCheckUtils]: 31: Hoare triple {14251#(<= main_~i~1 8)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14251#(<= main_~i~1 8)} is VALID [2018-11-14 18:50:25,449 INFO L273 TraceCheckUtils]: 32: Hoare triple {14251#(<= main_~i~1 8)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14252#(<= main_~i~1 9)} is VALID [2018-11-14 18:50:25,450 INFO L273 TraceCheckUtils]: 33: Hoare triple {14252#(<= main_~i~1 9)} assume true; {14252#(<= main_~i~1 9)} is VALID [2018-11-14 18:50:25,450 INFO L273 TraceCheckUtils]: 34: Hoare triple {14252#(<= main_~i~1 9)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14252#(<= main_~i~1 9)} is VALID [2018-11-14 18:50:25,451 INFO L273 TraceCheckUtils]: 35: Hoare triple {14252#(<= main_~i~1 9)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14253#(<= main_~i~1 10)} is VALID [2018-11-14 18:50:25,452 INFO L273 TraceCheckUtils]: 36: Hoare triple {14253#(<= main_~i~1 10)} assume true; {14253#(<= main_~i~1 10)} is VALID [2018-11-14 18:50:25,452 INFO L273 TraceCheckUtils]: 37: Hoare triple {14253#(<= main_~i~1 10)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14253#(<= main_~i~1 10)} is VALID [2018-11-14 18:50:25,453 INFO L273 TraceCheckUtils]: 38: Hoare triple {14253#(<= main_~i~1 10)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14254#(<= main_~i~1 11)} is VALID [2018-11-14 18:50:25,453 INFO L273 TraceCheckUtils]: 39: Hoare triple {14254#(<= main_~i~1 11)} assume true; {14254#(<= main_~i~1 11)} is VALID [2018-11-14 18:50:25,454 INFO L273 TraceCheckUtils]: 40: Hoare triple {14254#(<= main_~i~1 11)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14254#(<= main_~i~1 11)} is VALID [2018-11-14 18:50:25,454 INFO L273 TraceCheckUtils]: 41: Hoare triple {14254#(<= main_~i~1 11)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14255#(<= main_~i~1 12)} is VALID [2018-11-14 18:50:25,455 INFO L273 TraceCheckUtils]: 42: Hoare triple {14255#(<= main_~i~1 12)} assume true; {14255#(<= main_~i~1 12)} is VALID [2018-11-14 18:50:25,455 INFO L273 TraceCheckUtils]: 43: Hoare triple {14255#(<= main_~i~1 12)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14255#(<= main_~i~1 12)} is VALID [2018-11-14 18:50:25,460 INFO L273 TraceCheckUtils]: 44: Hoare triple {14255#(<= main_~i~1 12)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14256#(<= main_~i~1 13)} is VALID [2018-11-14 18:50:25,460 INFO L273 TraceCheckUtils]: 45: Hoare triple {14256#(<= main_~i~1 13)} assume true; {14256#(<= main_~i~1 13)} is VALID [2018-11-14 18:50:25,461 INFO L273 TraceCheckUtils]: 46: Hoare triple {14256#(<= main_~i~1 13)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14256#(<= main_~i~1 13)} is VALID [2018-11-14 18:50:25,461 INFO L273 TraceCheckUtils]: 47: Hoare triple {14256#(<= main_~i~1 13)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14257#(<= main_~i~1 14)} is VALID [2018-11-14 18:50:25,461 INFO L273 TraceCheckUtils]: 48: Hoare triple {14257#(<= main_~i~1 14)} assume true; {14257#(<= main_~i~1 14)} is VALID [2018-11-14 18:50:25,462 INFO L273 TraceCheckUtils]: 49: Hoare triple {14257#(<= main_~i~1 14)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14257#(<= main_~i~1 14)} is VALID [2018-11-14 18:50:25,462 INFO L273 TraceCheckUtils]: 50: Hoare triple {14257#(<= main_~i~1 14)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14258#(<= main_~i~1 15)} is VALID [2018-11-14 18:50:25,462 INFO L273 TraceCheckUtils]: 51: Hoare triple {14258#(<= main_~i~1 15)} assume true; {14258#(<= main_~i~1 15)} is VALID [2018-11-14 18:50:25,463 INFO L273 TraceCheckUtils]: 52: Hoare triple {14258#(<= main_~i~1 15)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14258#(<= main_~i~1 15)} is VALID [2018-11-14 18:50:25,463 INFO L273 TraceCheckUtils]: 53: Hoare triple {14258#(<= main_~i~1 15)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14259#(<= main_~i~1 16)} is VALID [2018-11-14 18:50:25,463 INFO L273 TraceCheckUtils]: 54: Hoare triple {14259#(<= main_~i~1 16)} assume true; {14259#(<= main_~i~1 16)} is VALID [2018-11-14 18:50:25,464 INFO L273 TraceCheckUtils]: 55: Hoare triple {14259#(<= main_~i~1 16)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14259#(<= main_~i~1 16)} is VALID [2018-11-14 18:50:25,465 INFO L273 TraceCheckUtils]: 56: Hoare triple {14259#(<= main_~i~1 16)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14260#(<= main_~i~1 17)} is VALID [2018-11-14 18:50:25,465 INFO L273 TraceCheckUtils]: 57: Hoare triple {14260#(<= main_~i~1 17)} assume true; {14260#(<= main_~i~1 17)} is VALID [2018-11-14 18:50:25,466 INFO L273 TraceCheckUtils]: 58: Hoare triple {14260#(<= main_~i~1 17)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14260#(<= main_~i~1 17)} is VALID [2018-11-14 18:50:25,466 INFO L273 TraceCheckUtils]: 59: Hoare triple {14260#(<= main_~i~1 17)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14261#(<= main_~i~1 18)} is VALID [2018-11-14 18:50:25,467 INFO L273 TraceCheckUtils]: 60: Hoare triple {14261#(<= main_~i~1 18)} assume true; {14261#(<= main_~i~1 18)} is VALID [2018-11-14 18:50:25,467 INFO L273 TraceCheckUtils]: 61: Hoare triple {14261#(<= main_~i~1 18)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14261#(<= main_~i~1 18)} is VALID [2018-11-14 18:50:25,468 INFO L273 TraceCheckUtils]: 62: Hoare triple {14261#(<= main_~i~1 18)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14262#(<= main_~i~1 19)} is VALID [2018-11-14 18:50:25,469 INFO L273 TraceCheckUtils]: 63: Hoare triple {14262#(<= main_~i~1 19)} assume true; {14262#(<= main_~i~1 19)} is VALID [2018-11-14 18:50:25,469 INFO L273 TraceCheckUtils]: 64: Hoare triple {14262#(<= main_~i~1 19)} assume !(~i~1 < 20); {14242#false} is VALID [2018-11-14 18:50:25,469 INFO L256 TraceCheckUtils]: 65: Hoare triple {14242#false} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {14241#true} is VALID [2018-11-14 18:50:25,470 INFO L273 TraceCheckUtils]: 66: Hoare triple {14241#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {14241#true} is VALID [2018-11-14 18:50:25,470 INFO L273 TraceCheckUtils]: 67: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:50:25,470 INFO L273 TraceCheckUtils]: 68: Hoare triple {14241#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {14241#true} is VALID [2018-11-14 18:50:25,470 INFO L273 TraceCheckUtils]: 69: Hoare triple {14241#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14241#true} is VALID [2018-11-14 18:50:25,470 INFO L273 TraceCheckUtils]: 70: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:50:25,471 INFO L273 TraceCheckUtils]: 71: Hoare triple {14241#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {14241#true} is VALID [2018-11-14 18:50:25,471 INFO L273 TraceCheckUtils]: 72: Hoare triple {14241#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14241#true} is VALID [2018-11-14 18:50:25,471 INFO L273 TraceCheckUtils]: 73: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:50:25,471 INFO L273 TraceCheckUtils]: 74: Hoare triple {14241#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {14241#true} is VALID [2018-11-14 18:50:25,471 INFO L273 TraceCheckUtils]: 75: Hoare triple {14241#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14241#true} is VALID [2018-11-14 18:50:25,471 INFO L273 TraceCheckUtils]: 76: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:50:25,471 INFO L273 TraceCheckUtils]: 77: Hoare triple {14241#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {14241#true} is VALID [2018-11-14 18:50:25,472 INFO L273 TraceCheckUtils]: 78: Hoare triple {14241#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14241#true} is VALID [2018-11-14 18:50:25,472 INFO L273 TraceCheckUtils]: 79: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:50:25,472 INFO L273 TraceCheckUtils]: 80: Hoare triple {14241#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {14241#true} is VALID [2018-11-14 18:50:25,472 INFO L273 TraceCheckUtils]: 81: Hoare triple {14241#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14241#true} is VALID [2018-11-14 18:50:25,472 INFO L273 TraceCheckUtils]: 82: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:50:25,472 INFO L273 TraceCheckUtils]: 83: Hoare triple {14241#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {14241#true} is VALID [2018-11-14 18:50:25,472 INFO L273 TraceCheckUtils]: 84: Hoare triple {14241#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14241#true} is VALID [2018-11-14 18:50:25,472 INFO L273 TraceCheckUtils]: 85: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:50:25,472 INFO L273 TraceCheckUtils]: 86: Hoare triple {14241#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {14241#true} is VALID [2018-11-14 18:50:25,472 INFO L273 TraceCheckUtils]: 87: Hoare triple {14241#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14241#true} is VALID [2018-11-14 18:50:25,473 INFO L273 TraceCheckUtils]: 88: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:50:25,473 INFO L273 TraceCheckUtils]: 89: Hoare triple {14241#true} assume !(~i~0 < 20); {14241#true} is VALID [2018-11-14 18:50:25,473 INFO L273 TraceCheckUtils]: 90: Hoare triple {14241#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {14241#true} is VALID [2018-11-14 18:50:25,473 INFO L273 TraceCheckUtils]: 91: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:50:25,473 INFO L268 TraceCheckUtils]: 92: Hoare quadruple {14241#true} {14242#false} #73#return; {14242#false} is VALID [2018-11-14 18:50:25,473 INFO L273 TraceCheckUtils]: 93: Hoare triple {14242#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {14242#false} is VALID [2018-11-14 18:50:25,473 INFO L256 TraceCheckUtils]: 94: Hoare triple {14242#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {14241#true} is VALID [2018-11-14 18:50:25,473 INFO L273 TraceCheckUtils]: 95: Hoare triple {14241#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {14241#true} is VALID [2018-11-14 18:50:25,473 INFO L273 TraceCheckUtils]: 96: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:50:25,473 INFO L273 TraceCheckUtils]: 97: Hoare triple {14241#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {14241#true} is VALID [2018-11-14 18:50:25,474 INFO L273 TraceCheckUtils]: 98: Hoare triple {14241#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14241#true} is VALID [2018-11-14 18:50:25,474 INFO L273 TraceCheckUtils]: 99: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:50:25,474 INFO L273 TraceCheckUtils]: 100: Hoare triple {14241#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {14241#true} is VALID [2018-11-14 18:50:25,474 INFO L273 TraceCheckUtils]: 101: Hoare triple {14241#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14241#true} is VALID [2018-11-14 18:50:25,474 INFO L273 TraceCheckUtils]: 102: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:50:25,474 INFO L273 TraceCheckUtils]: 103: Hoare triple {14241#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {14241#true} is VALID [2018-11-14 18:50:25,474 INFO L273 TraceCheckUtils]: 104: Hoare triple {14241#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14241#true} is VALID [2018-11-14 18:50:25,474 INFO L273 TraceCheckUtils]: 105: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:50:25,474 INFO L273 TraceCheckUtils]: 106: Hoare triple {14241#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {14241#true} is VALID [2018-11-14 18:50:25,475 INFO L273 TraceCheckUtils]: 107: Hoare triple {14241#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14241#true} is VALID [2018-11-14 18:50:25,475 INFO L273 TraceCheckUtils]: 108: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:50:25,475 INFO L273 TraceCheckUtils]: 109: Hoare triple {14241#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {14241#true} is VALID [2018-11-14 18:50:25,475 INFO L273 TraceCheckUtils]: 110: Hoare triple {14241#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14241#true} is VALID [2018-11-14 18:50:25,475 INFO L273 TraceCheckUtils]: 111: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:50:25,475 INFO L273 TraceCheckUtils]: 112: Hoare triple {14241#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {14241#true} is VALID [2018-11-14 18:50:25,475 INFO L273 TraceCheckUtils]: 113: Hoare triple {14241#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14241#true} is VALID [2018-11-14 18:50:25,475 INFO L273 TraceCheckUtils]: 114: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:50:25,475 INFO L273 TraceCheckUtils]: 115: Hoare triple {14241#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {14241#true} is VALID [2018-11-14 18:50:25,475 INFO L273 TraceCheckUtils]: 116: Hoare triple {14241#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14241#true} is VALID [2018-11-14 18:50:25,476 INFO L273 TraceCheckUtils]: 117: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:50:25,476 INFO L273 TraceCheckUtils]: 118: Hoare triple {14241#true} assume !(~i~0 < 20); {14241#true} is VALID [2018-11-14 18:50:25,476 INFO L273 TraceCheckUtils]: 119: Hoare triple {14241#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {14241#true} is VALID [2018-11-14 18:50:25,476 INFO L273 TraceCheckUtils]: 120: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:50:25,476 INFO L268 TraceCheckUtils]: 121: Hoare quadruple {14241#true} {14242#false} #75#return; {14242#false} is VALID [2018-11-14 18:50:25,476 INFO L273 TraceCheckUtils]: 122: Hoare triple {14242#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {14242#false} is VALID [2018-11-14 18:50:25,476 INFO L273 TraceCheckUtils]: 123: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:50:25,476 INFO L273 TraceCheckUtils]: 124: Hoare triple {14242#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {14242#false} is VALID [2018-11-14 18:50:25,476 INFO L273 TraceCheckUtils]: 125: Hoare triple {14242#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {14242#false} is VALID [2018-11-14 18:50:25,477 INFO L273 TraceCheckUtils]: 126: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:50:25,477 INFO L273 TraceCheckUtils]: 127: Hoare triple {14242#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {14242#false} is VALID [2018-11-14 18:50:25,477 INFO L273 TraceCheckUtils]: 128: Hoare triple {14242#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {14242#false} is VALID [2018-11-14 18:50:25,477 INFO L273 TraceCheckUtils]: 129: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:50:25,477 INFO L273 TraceCheckUtils]: 130: Hoare triple {14242#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {14242#false} is VALID [2018-11-14 18:50:25,477 INFO L273 TraceCheckUtils]: 131: Hoare triple {14242#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {14242#false} is VALID [2018-11-14 18:50:25,477 INFO L273 TraceCheckUtils]: 132: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:50:25,477 INFO L273 TraceCheckUtils]: 133: Hoare triple {14242#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {14242#false} is VALID [2018-11-14 18:50:25,477 INFO L273 TraceCheckUtils]: 134: Hoare triple {14242#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {14242#false} is VALID [2018-11-14 18:50:25,477 INFO L273 TraceCheckUtils]: 135: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:50:25,478 INFO L273 TraceCheckUtils]: 136: Hoare triple {14242#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {14242#false} is VALID [2018-11-14 18:50:25,478 INFO L273 TraceCheckUtils]: 137: Hoare triple {14242#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {14242#false} is VALID [2018-11-14 18:50:25,478 INFO L273 TraceCheckUtils]: 138: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:50:25,478 INFO L273 TraceCheckUtils]: 139: Hoare triple {14242#false} assume !(~i~2 < 19); {14242#false} is VALID [2018-11-14 18:50:25,478 INFO L273 TraceCheckUtils]: 140: Hoare triple {14242#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {14242#false} is VALID [2018-11-14 18:50:25,478 INFO L256 TraceCheckUtils]: 141: Hoare triple {14242#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {14241#true} is VALID [2018-11-14 18:50:25,478 INFO L273 TraceCheckUtils]: 142: Hoare triple {14241#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {14241#true} is VALID [2018-11-14 18:50:25,478 INFO L273 TraceCheckUtils]: 143: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:50:25,478 INFO L273 TraceCheckUtils]: 144: Hoare triple {14241#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {14241#true} is VALID [2018-11-14 18:50:25,479 INFO L273 TraceCheckUtils]: 145: Hoare triple {14241#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14241#true} is VALID [2018-11-14 18:50:25,479 INFO L273 TraceCheckUtils]: 146: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:50:25,479 INFO L273 TraceCheckUtils]: 147: Hoare triple {14241#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {14241#true} is VALID [2018-11-14 18:50:25,479 INFO L273 TraceCheckUtils]: 148: Hoare triple {14241#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14241#true} is VALID [2018-11-14 18:50:25,479 INFO L273 TraceCheckUtils]: 149: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:50:25,479 INFO L273 TraceCheckUtils]: 150: Hoare triple {14241#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {14241#true} is VALID [2018-11-14 18:50:25,479 INFO L273 TraceCheckUtils]: 151: Hoare triple {14241#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14241#true} is VALID [2018-11-14 18:50:25,479 INFO L273 TraceCheckUtils]: 152: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:50:25,479 INFO L273 TraceCheckUtils]: 153: Hoare triple {14241#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {14241#true} is VALID [2018-11-14 18:50:25,479 INFO L273 TraceCheckUtils]: 154: Hoare triple {14241#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14241#true} is VALID [2018-11-14 18:50:25,480 INFO L273 TraceCheckUtils]: 155: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:50:25,480 INFO L273 TraceCheckUtils]: 156: Hoare triple {14241#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {14241#true} is VALID [2018-11-14 18:50:25,480 INFO L273 TraceCheckUtils]: 157: Hoare triple {14241#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14241#true} is VALID [2018-11-14 18:50:25,480 INFO L273 TraceCheckUtils]: 158: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:50:25,480 INFO L273 TraceCheckUtils]: 159: Hoare triple {14241#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {14241#true} is VALID [2018-11-14 18:50:25,480 INFO L273 TraceCheckUtils]: 160: Hoare triple {14241#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14241#true} is VALID [2018-11-14 18:50:25,480 INFO L273 TraceCheckUtils]: 161: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:50:25,480 INFO L273 TraceCheckUtils]: 162: Hoare triple {14241#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {14241#true} is VALID [2018-11-14 18:50:25,480 INFO L273 TraceCheckUtils]: 163: Hoare triple {14241#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14241#true} is VALID [2018-11-14 18:50:25,480 INFO L273 TraceCheckUtils]: 164: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:50:25,481 INFO L273 TraceCheckUtils]: 165: Hoare triple {14241#true} assume !(~i~0 < 20); {14241#true} is VALID [2018-11-14 18:50:25,481 INFO L273 TraceCheckUtils]: 166: Hoare triple {14241#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {14241#true} is VALID [2018-11-14 18:50:25,481 INFO L273 TraceCheckUtils]: 167: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:50:25,481 INFO L268 TraceCheckUtils]: 168: Hoare quadruple {14241#true} {14242#false} #77#return; {14242#false} is VALID [2018-11-14 18:50:25,481 INFO L273 TraceCheckUtils]: 169: Hoare triple {14242#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {14242#false} is VALID [2018-11-14 18:50:25,481 INFO L273 TraceCheckUtils]: 170: Hoare triple {14242#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {14242#false} is VALID [2018-11-14 18:50:25,481 INFO L273 TraceCheckUtils]: 171: Hoare triple {14242#false} assume !false; {14242#false} is VALID [2018-11-14 18:50:25,492 INFO L134 CoverageAnalysis]: Checked inductivity of 1365 backedges. 0 proven. 551 refuted. 0 times theorem prover too weak. 814 trivial. 0 not checked. [2018-11-14 18:50:25,492 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:50:25,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 21 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 21 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:50:25,500 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 18:50:25,558 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:50:25,586 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:50:25,588 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:50:25,901 INFO L256 TraceCheckUtils]: 0: Hoare triple {14241#true} call ULTIMATE.init(); {14241#true} is VALID [2018-11-14 18:50:25,901 INFO L273 TraceCheckUtils]: 1: Hoare triple {14241#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {14241#true} is VALID [2018-11-14 18:50:25,901 INFO L273 TraceCheckUtils]: 2: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:50:25,902 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {14241#true} {14241#true} #69#return; {14241#true} is VALID [2018-11-14 18:50:25,902 INFO L256 TraceCheckUtils]: 4: Hoare triple {14241#true} call #t~ret12 := main(); {14241#true} is VALID [2018-11-14 18:50:25,902 INFO L273 TraceCheckUtils]: 5: Hoare triple {14241#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {14281#(<= main_~i~1 0)} is VALID [2018-11-14 18:50:25,903 INFO L273 TraceCheckUtils]: 6: Hoare triple {14281#(<= main_~i~1 0)} assume true; {14281#(<= main_~i~1 0)} is VALID [2018-11-14 18:50:25,903 INFO L273 TraceCheckUtils]: 7: Hoare triple {14281#(<= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14281#(<= main_~i~1 0)} is VALID [2018-11-14 18:50:25,904 INFO L273 TraceCheckUtils]: 8: Hoare triple {14281#(<= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14244#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:25,905 INFO L273 TraceCheckUtils]: 9: Hoare triple {14244#(<= main_~i~1 1)} assume true; {14244#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:25,905 INFO L273 TraceCheckUtils]: 10: Hoare triple {14244#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14244#(<= main_~i~1 1)} is VALID [2018-11-14 18:50:25,906 INFO L273 TraceCheckUtils]: 11: Hoare triple {14244#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14245#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:25,906 INFO L273 TraceCheckUtils]: 12: Hoare triple {14245#(<= main_~i~1 2)} assume true; {14245#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:25,907 INFO L273 TraceCheckUtils]: 13: Hoare triple {14245#(<= main_~i~1 2)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14245#(<= main_~i~1 2)} is VALID [2018-11-14 18:50:25,908 INFO L273 TraceCheckUtils]: 14: Hoare triple {14245#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14246#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:25,908 INFO L273 TraceCheckUtils]: 15: Hoare triple {14246#(<= main_~i~1 3)} assume true; {14246#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:25,909 INFO L273 TraceCheckUtils]: 16: Hoare triple {14246#(<= main_~i~1 3)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14246#(<= main_~i~1 3)} is VALID [2018-11-14 18:50:25,910 INFO L273 TraceCheckUtils]: 17: Hoare triple {14246#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14247#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:25,911 INFO L273 TraceCheckUtils]: 18: Hoare triple {14247#(<= main_~i~1 4)} assume true; {14247#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:25,911 INFO L273 TraceCheckUtils]: 19: Hoare triple {14247#(<= main_~i~1 4)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14247#(<= main_~i~1 4)} is VALID [2018-11-14 18:50:25,912 INFO L273 TraceCheckUtils]: 20: Hoare triple {14247#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14248#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:25,912 INFO L273 TraceCheckUtils]: 21: Hoare triple {14248#(<= main_~i~1 5)} assume true; {14248#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:25,913 INFO L273 TraceCheckUtils]: 22: Hoare triple {14248#(<= main_~i~1 5)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14248#(<= main_~i~1 5)} is VALID [2018-11-14 18:50:25,914 INFO L273 TraceCheckUtils]: 23: Hoare triple {14248#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14249#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:25,914 INFO L273 TraceCheckUtils]: 24: Hoare triple {14249#(<= main_~i~1 6)} assume true; {14249#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:25,915 INFO L273 TraceCheckUtils]: 25: Hoare triple {14249#(<= main_~i~1 6)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14249#(<= main_~i~1 6)} is VALID [2018-11-14 18:50:25,915 INFO L273 TraceCheckUtils]: 26: Hoare triple {14249#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14250#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:25,916 INFO L273 TraceCheckUtils]: 27: Hoare triple {14250#(<= main_~i~1 7)} assume true; {14250#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:25,916 INFO L273 TraceCheckUtils]: 28: Hoare triple {14250#(<= main_~i~1 7)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14250#(<= main_~i~1 7)} is VALID [2018-11-14 18:50:25,917 INFO L273 TraceCheckUtils]: 29: Hoare triple {14250#(<= main_~i~1 7)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14251#(<= main_~i~1 8)} is VALID [2018-11-14 18:50:25,918 INFO L273 TraceCheckUtils]: 30: Hoare triple {14251#(<= main_~i~1 8)} assume true; {14251#(<= main_~i~1 8)} is VALID [2018-11-14 18:50:25,918 INFO L273 TraceCheckUtils]: 31: Hoare triple {14251#(<= main_~i~1 8)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14251#(<= main_~i~1 8)} is VALID [2018-11-14 18:50:25,919 INFO L273 TraceCheckUtils]: 32: Hoare triple {14251#(<= main_~i~1 8)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14252#(<= main_~i~1 9)} is VALID [2018-11-14 18:50:25,919 INFO L273 TraceCheckUtils]: 33: Hoare triple {14252#(<= main_~i~1 9)} assume true; {14252#(<= main_~i~1 9)} is VALID [2018-11-14 18:50:25,920 INFO L273 TraceCheckUtils]: 34: Hoare triple {14252#(<= main_~i~1 9)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14252#(<= main_~i~1 9)} is VALID [2018-11-14 18:50:25,921 INFO L273 TraceCheckUtils]: 35: Hoare triple {14252#(<= main_~i~1 9)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14253#(<= main_~i~1 10)} is VALID [2018-11-14 18:50:25,921 INFO L273 TraceCheckUtils]: 36: Hoare triple {14253#(<= main_~i~1 10)} assume true; {14253#(<= main_~i~1 10)} is VALID [2018-11-14 18:50:25,922 INFO L273 TraceCheckUtils]: 37: Hoare triple {14253#(<= main_~i~1 10)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14253#(<= main_~i~1 10)} is VALID [2018-11-14 18:50:25,922 INFO L273 TraceCheckUtils]: 38: Hoare triple {14253#(<= main_~i~1 10)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14254#(<= main_~i~1 11)} is VALID [2018-11-14 18:50:25,923 INFO L273 TraceCheckUtils]: 39: Hoare triple {14254#(<= main_~i~1 11)} assume true; {14254#(<= main_~i~1 11)} is VALID [2018-11-14 18:50:25,923 INFO L273 TraceCheckUtils]: 40: Hoare triple {14254#(<= main_~i~1 11)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14254#(<= main_~i~1 11)} is VALID [2018-11-14 18:50:25,924 INFO L273 TraceCheckUtils]: 41: Hoare triple {14254#(<= main_~i~1 11)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14255#(<= main_~i~1 12)} is VALID [2018-11-14 18:50:25,925 INFO L273 TraceCheckUtils]: 42: Hoare triple {14255#(<= main_~i~1 12)} assume true; {14255#(<= main_~i~1 12)} is VALID [2018-11-14 18:50:25,925 INFO L273 TraceCheckUtils]: 43: Hoare triple {14255#(<= main_~i~1 12)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14255#(<= main_~i~1 12)} is VALID [2018-11-14 18:50:25,926 INFO L273 TraceCheckUtils]: 44: Hoare triple {14255#(<= main_~i~1 12)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14256#(<= main_~i~1 13)} is VALID [2018-11-14 18:50:25,926 INFO L273 TraceCheckUtils]: 45: Hoare triple {14256#(<= main_~i~1 13)} assume true; {14256#(<= main_~i~1 13)} is VALID [2018-11-14 18:50:25,927 INFO L273 TraceCheckUtils]: 46: Hoare triple {14256#(<= main_~i~1 13)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14256#(<= main_~i~1 13)} is VALID [2018-11-14 18:50:25,928 INFO L273 TraceCheckUtils]: 47: Hoare triple {14256#(<= main_~i~1 13)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14257#(<= main_~i~1 14)} is VALID [2018-11-14 18:50:25,928 INFO L273 TraceCheckUtils]: 48: Hoare triple {14257#(<= main_~i~1 14)} assume true; {14257#(<= main_~i~1 14)} is VALID [2018-11-14 18:50:25,929 INFO L273 TraceCheckUtils]: 49: Hoare triple {14257#(<= main_~i~1 14)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14257#(<= main_~i~1 14)} is VALID [2018-11-14 18:50:25,929 INFO L273 TraceCheckUtils]: 50: Hoare triple {14257#(<= main_~i~1 14)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14258#(<= main_~i~1 15)} is VALID [2018-11-14 18:50:25,930 INFO L273 TraceCheckUtils]: 51: Hoare triple {14258#(<= main_~i~1 15)} assume true; {14258#(<= main_~i~1 15)} is VALID [2018-11-14 18:50:25,930 INFO L273 TraceCheckUtils]: 52: Hoare triple {14258#(<= main_~i~1 15)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14258#(<= main_~i~1 15)} is VALID [2018-11-14 18:50:25,931 INFO L273 TraceCheckUtils]: 53: Hoare triple {14258#(<= main_~i~1 15)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14259#(<= main_~i~1 16)} is VALID [2018-11-14 18:50:25,932 INFO L273 TraceCheckUtils]: 54: Hoare triple {14259#(<= main_~i~1 16)} assume true; {14259#(<= main_~i~1 16)} is VALID [2018-11-14 18:50:25,932 INFO L273 TraceCheckUtils]: 55: Hoare triple {14259#(<= main_~i~1 16)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14259#(<= main_~i~1 16)} is VALID [2018-11-14 18:50:25,933 INFO L273 TraceCheckUtils]: 56: Hoare triple {14259#(<= main_~i~1 16)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14260#(<= main_~i~1 17)} is VALID [2018-11-14 18:50:25,933 INFO L273 TraceCheckUtils]: 57: Hoare triple {14260#(<= main_~i~1 17)} assume true; {14260#(<= main_~i~1 17)} is VALID [2018-11-14 18:50:25,934 INFO L273 TraceCheckUtils]: 58: Hoare triple {14260#(<= main_~i~1 17)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14260#(<= main_~i~1 17)} is VALID [2018-11-14 18:50:25,934 INFO L273 TraceCheckUtils]: 59: Hoare triple {14260#(<= main_~i~1 17)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14261#(<= main_~i~1 18)} is VALID [2018-11-14 18:50:25,935 INFO L273 TraceCheckUtils]: 60: Hoare triple {14261#(<= main_~i~1 18)} assume true; {14261#(<= main_~i~1 18)} is VALID [2018-11-14 18:50:25,935 INFO L273 TraceCheckUtils]: 61: Hoare triple {14261#(<= main_~i~1 18)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14261#(<= main_~i~1 18)} is VALID [2018-11-14 18:50:25,936 INFO L273 TraceCheckUtils]: 62: Hoare triple {14261#(<= main_~i~1 18)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14262#(<= main_~i~1 19)} is VALID [2018-11-14 18:50:25,937 INFO L273 TraceCheckUtils]: 63: Hoare triple {14262#(<= main_~i~1 19)} assume true; {14262#(<= main_~i~1 19)} is VALID [2018-11-14 18:50:25,937 INFO L273 TraceCheckUtils]: 64: Hoare triple {14262#(<= main_~i~1 19)} assume !(~i~1 < 20); {14242#false} is VALID [2018-11-14 18:50:25,938 INFO L256 TraceCheckUtils]: 65: Hoare triple {14242#false} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {14242#false} is VALID [2018-11-14 18:50:25,938 INFO L273 TraceCheckUtils]: 66: Hoare triple {14242#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {14242#false} is VALID [2018-11-14 18:50:25,938 INFO L273 TraceCheckUtils]: 67: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:50:25,938 INFO L273 TraceCheckUtils]: 68: Hoare triple {14242#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {14242#false} is VALID [2018-11-14 18:50:25,938 INFO L273 TraceCheckUtils]: 69: Hoare triple {14242#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14242#false} is VALID [2018-11-14 18:50:25,938 INFO L273 TraceCheckUtils]: 70: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:50:25,939 INFO L273 TraceCheckUtils]: 71: Hoare triple {14242#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {14242#false} is VALID [2018-11-14 18:50:25,939 INFO L273 TraceCheckUtils]: 72: Hoare triple {14242#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14242#false} is VALID [2018-11-14 18:50:25,939 INFO L273 TraceCheckUtils]: 73: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:50:25,939 INFO L273 TraceCheckUtils]: 74: Hoare triple {14242#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {14242#false} is VALID [2018-11-14 18:50:25,939 INFO L273 TraceCheckUtils]: 75: Hoare triple {14242#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14242#false} is VALID [2018-11-14 18:50:25,940 INFO L273 TraceCheckUtils]: 76: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:50:25,940 INFO L273 TraceCheckUtils]: 77: Hoare triple {14242#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {14242#false} is VALID [2018-11-14 18:50:25,940 INFO L273 TraceCheckUtils]: 78: Hoare triple {14242#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14242#false} is VALID [2018-11-14 18:50:25,940 INFO L273 TraceCheckUtils]: 79: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:50:25,940 INFO L273 TraceCheckUtils]: 80: Hoare triple {14242#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {14242#false} is VALID [2018-11-14 18:50:25,940 INFO L273 TraceCheckUtils]: 81: Hoare triple {14242#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14242#false} is VALID [2018-11-14 18:50:25,941 INFO L273 TraceCheckUtils]: 82: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:50:25,941 INFO L273 TraceCheckUtils]: 83: Hoare triple {14242#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {14242#false} is VALID [2018-11-14 18:50:25,941 INFO L273 TraceCheckUtils]: 84: Hoare triple {14242#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14242#false} is VALID [2018-11-14 18:50:25,941 INFO L273 TraceCheckUtils]: 85: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:50:25,941 INFO L273 TraceCheckUtils]: 86: Hoare triple {14242#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {14242#false} is VALID [2018-11-14 18:50:25,941 INFO L273 TraceCheckUtils]: 87: Hoare triple {14242#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14242#false} is VALID [2018-11-14 18:50:25,941 INFO L273 TraceCheckUtils]: 88: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:50:25,942 INFO L273 TraceCheckUtils]: 89: Hoare triple {14242#false} assume !(~i~0 < 20); {14242#false} is VALID [2018-11-14 18:50:25,942 INFO L273 TraceCheckUtils]: 90: Hoare triple {14242#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {14242#false} is VALID [2018-11-14 18:50:25,942 INFO L273 TraceCheckUtils]: 91: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:50:25,942 INFO L268 TraceCheckUtils]: 92: Hoare quadruple {14242#false} {14242#false} #73#return; {14242#false} is VALID [2018-11-14 18:50:25,942 INFO L273 TraceCheckUtils]: 93: Hoare triple {14242#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {14242#false} is VALID [2018-11-14 18:50:25,942 INFO L256 TraceCheckUtils]: 94: Hoare triple {14242#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {14242#false} is VALID [2018-11-14 18:50:25,942 INFO L273 TraceCheckUtils]: 95: Hoare triple {14242#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {14242#false} is VALID [2018-11-14 18:50:25,942 INFO L273 TraceCheckUtils]: 96: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:50:25,942 INFO L273 TraceCheckUtils]: 97: Hoare triple {14242#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {14242#false} is VALID [2018-11-14 18:50:25,942 INFO L273 TraceCheckUtils]: 98: Hoare triple {14242#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14242#false} is VALID [2018-11-14 18:50:25,943 INFO L273 TraceCheckUtils]: 99: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:50:25,943 INFO L273 TraceCheckUtils]: 100: Hoare triple {14242#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {14242#false} is VALID [2018-11-14 18:50:25,943 INFO L273 TraceCheckUtils]: 101: Hoare triple {14242#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14242#false} is VALID [2018-11-14 18:50:25,943 INFO L273 TraceCheckUtils]: 102: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:50:25,943 INFO L273 TraceCheckUtils]: 103: Hoare triple {14242#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {14242#false} is VALID [2018-11-14 18:50:25,943 INFO L273 TraceCheckUtils]: 104: Hoare triple {14242#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14242#false} is VALID [2018-11-14 18:50:25,943 INFO L273 TraceCheckUtils]: 105: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:50:25,943 INFO L273 TraceCheckUtils]: 106: Hoare triple {14242#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {14242#false} is VALID [2018-11-14 18:50:25,943 INFO L273 TraceCheckUtils]: 107: Hoare triple {14242#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14242#false} is VALID [2018-11-14 18:50:25,944 INFO L273 TraceCheckUtils]: 108: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:50:25,944 INFO L273 TraceCheckUtils]: 109: Hoare triple {14242#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {14242#false} is VALID [2018-11-14 18:50:25,944 INFO L273 TraceCheckUtils]: 110: Hoare triple {14242#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14242#false} is VALID [2018-11-14 18:50:25,944 INFO L273 TraceCheckUtils]: 111: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:50:25,944 INFO L273 TraceCheckUtils]: 112: Hoare triple {14242#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {14242#false} is VALID [2018-11-14 18:50:25,944 INFO L273 TraceCheckUtils]: 113: Hoare triple {14242#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14242#false} is VALID [2018-11-14 18:50:25,944 INFO L273 TraceCheckUtils]: 114: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:50:25,944 INFO L273 TraceCheckUtils]: 115: Hoare triple {14242#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {14242#false} is VALID [2018-11-14 18:50:25,944 INFO L273 TraceCheckUtils]: 116: Hoare triple {14242#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14242#false} is VALID [2018-11-14 18:50:25,944 INFO L273 TraceCheckUtils]: 117: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:50:25,945 INFO L273 TraceCheckUtils]: 118: Hoare triple {14242#false} assume !(~i~0 < 20); {14242#false} is VALID [2018-11-14 18:50:25,945 INFO L273 TraceCheckUtils]: 119: Hoare triple {14242#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {14242#false} is VALID [2018-11-14 18:50:25,945 INFO L273 TraceCheckUtils]: 120: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:50:25,945 INFO L268 TraceCheckUtils]: 121: Hoare quadruple {14242#false} {14242#false} #75#return; {14242#false} is VALID [2018-11-14 18:50:25,945 INFO L273 TraceCheckUtils]: 122: Hoare triple {14242#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {14242#false} is VALID [2018-11-14 18:50:25,945 INFO L273 TraceCheckUtils]: 123: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:50:25,945 INFO L273 TraceCheckUtils]: 124: Hoare triple {14242#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {14242#false} is VALID [2018-11-14 18:50:25,945 INFO L273 TraceCheckUtils]: 125: Hoare triple {14242#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {14242#false} is VALID [2018-11-14 18:50:25,945 INFO L273 TraceCheckUtils]: 126: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:50:25,946 INFO L273 TraceCheckUtils]: 127: Hoare triple {14242#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {14242#false} is VALID [2018-11-14 18:50:25,946 INFO L273 TraceCheckUtils]: 128: Hoare triple {14242#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {14242#false} is VALID [2018-11-14 18:50:25,946 INFO L273 TraceCheckUtils]: 129: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:50:25,946 INFO L273 TraceCheckUtils]: 130: Hoare triple {14242#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {14242#false} is VALID [2018-11-14 18:50:25,946 INFO L273 TraceCheckUtils]: 131: Hoare triple {14242#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {14242#false} is VALID [2018-11-14 18:50:25,946 INFO L273 TraceCheckUtils]: 132: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:50:25,946 INFO L273 TraceCheckUtils]: 133: Hoare triple {14242#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {14242#false} is VALID [2018-11-14 18:50:25,946 INFO L273 TraceCheckUtils]: 134: Hoare triple {14242#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {14242#false} is VALID [2018-11-14 18:50:25,946 INFO L273 TraceCheckUtils]: 135: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:50:25,946 INFO L273 TraceCheckUtils]: 136: Hoare triple {14242#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {14242#false} is VALID [2018-11-14 18:50:25,947 INFO L273 TraceCheckUtils]: 137: Hoare triple {14242#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {14242#false} is VALID [2018-11-14 18:50:25,947 INFO L273 TraceCheckUtils]: 138: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:50:25,947 INFO L273 TraceCheckUtils]: 139: Hoare triple {14242#false} assume !(~i~2 < 19); {14242#false} is VALID [2018-11-14 18:50:25,947 INFO L273 TraceCheckUtils]: 140: Hoare triple {14242#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {14242#false} is VALID [2018-11-14 18:50:25,947 INFO L256 TraceCheckUtils]: 141: Hoare triple {14242#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {14242#false} is VALID [2018-11-14 18:50:25,947 INFO L273 TraceCheckUtils]: 142: Hoare triple {14242#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {14242#false} is VALID [2018-11-14 18:50:25,947 INFO L273 TraceCheckUtils]: 143: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:50:25,947 INFO L273 TraceCheckUtils]: 144: Hoare triple {14242#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {14242#false} is VALID [2018-11-14 18:50:25,947 INFO L273 TraceCheckUtils]: 145: Hoare triple {14242#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14242#false} is VALID [2018-11-14 18:50:25,947 INFO L273 TraceCheckUtils]: 146: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:50:25,948 INFO L273 TraceCheckUtils]: 147: Hoare triple {14242#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {14242#false} is VALID [2018-11-14 18:50:25,948 INFO L273 TraceCheckUtils]: 148: Hoare triple {14242#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14242#false} is VALID [2018-11-14 18:50:25,948 INFO L273 TraceCheckUtils]: 149: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:50:25,948 INFO L273 TraceCheckUtils]: 150: Hoare triple {14242#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {14242#false} is VALID [2018-11-14 18:50:25,948 INFO L273 TraceCheckUtils]: 151: Hoare triple {14242#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14242#false} is VALID [2018-11-14 18:50:25,948 INFO L273 TraceCheckUtils]: 152: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:50:25,948 INFO L273 TraceCheckUtils]: 153: Hoare triple {14242#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {14242#false} is VALID [2018-11-14 18:50:25,948 INFO L273 TraceCheckUtils]: 154: Hoare triple {14242#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14242#false} is VALID [2018-11-14 18:50:25,948 INFO L273 TraceCheckUtils]: 155: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:50:25,949 INFO L273 TraceCheckUtils]: 156: Hoare triple {14242#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {14242#false} is VALID [2018-11-14 18:50:25,949 INFO L273 TraceCheckUtils]: 157: Hoare triple {14242#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14242#false} is VALID [2018-11-14 18:50:25,949 INFO L273 TraceCheckUtils]: 158: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:50:25,949 INFO L273 TraceCheckUtils]: 159: Hoare triple {14242#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {14242#false} is VALID [2018-11-14 18:50:25,949 INFO L273 TraceCheckUtils]: 160: Hoare triple {14242#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14242#false} is VALID [2018-11-14 18:50:25,949 INFO L273 TraceCheckUtils]: 161: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:50:25,949 INFO L273 TraceCheckUtils]: 162: Hoare triple {14242#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {14242#false} is VALID [2018-11-14 18:50:25,949 INFO L273 TraceCheckUtils]: 163: Hoare triple {14242#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14242#false} is VALID [2018-11-14 18:50:25,949 INFO L273 TraceCheckUtils]: 164: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:50:25,949 INFO L273 TraceCheckUtils]: 165: Hoare triple {14242#false} assume !(~i~0 < 20); {14242#false} is VALID [2018-11-14 18:50:25,950 INFO L273 TraceCheckUtils]: 166: Hoare triple {14242#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {14242#false} is VALID [2018-11-14 18:50:25,950 INFO L273 TraceCheckUtils]: 167: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:50:25,950 INFO L268 TraceCheckUtils]: 168: Hoare quadruple {14242#false} {14242#false} #77#return; {14242#false} is VALID [2018-11-14 18:50:25,950 INFO L273 TraceCheckUtils]: 169: Hoare triple {14242#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {14242#false} is VALID [2018-11-14 18:50:25,950 INFO L273 TraceCheckUtils]: 170: Hoare triple {14242#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {14242#false} is VALID [2018-11-14 18:50:25,950 INFO L273 TraceCheckUtils]: 171: Hoare triple {14242#false} assume !false; {14242#false} is VALID [2018-11-14 18:50:25,963 INFO L134 CoverageAnalysis]: Checked inductivity of 1365 backedges. 0 proven. 551 refuted. 0 times theorem prover too weak. 814 trivial. 0 not checked. [2018-11-14 18:50:25,984 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:50:25,984 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [22, 22] total 23 [2018-11-14 18:50:25,984 INFO L78 Accepts]: Start accepts. Automaton has 23 states. Word has length 172 [2018-11-14 18:50:25,985 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:50:25,985 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 23 states. [2018-11-14 18:50:26,081 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 105 edges. 105 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:50:26,081 INFO L459 AbstractCegarLoop]: Interpolant automaton has 23 states [2018-11-14 18:50:26,082 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 23 interpolants. [2018-11-14 18:50:26,082 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=253, Invalid=253, Unknown=0, NotChecked=0, Total=506 [2018-11-14 18:50:26,082 INFO L87 Difference]: Start difference. First operand 119 states and 123 transitions. Second operand 23 states. [2018-11-14 18:50:26,984 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:26,984 INFO L93 Difference]: Finished difference Result 176 states and 184 transitions. [2018-11-14 18:50:26,985 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2018-11-14 18:50:26,985 INFO L78 Accepts]: Start accepts. Automaton has 23 states. Word has length 172 [2018-11-14 18:50:26,985 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:50:26,985 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 23 states. [2018-11-14 18:50:26,986 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 116 transitions. [2018-11-14 18:50:26,986 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 23 states. [2018-11-14 18:50:26,987 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 116 transitions. [2018-11-14 18:50:26,987 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 22 states and 116 transitions. [2018-11-14 18:50:27,089 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 116 edges. 116 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:50:27,092 INFO L225 Difference]: With dead ends: 176 [2018-11-14 18:50:27,092 INFO L226 Difference]: Without dead ends: 122 [2018-11-14 18:50:27,093 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 193 GetRequests, 172 SyntacticMatches, 0 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 36 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=253, Invalid=253, Unknown=0, NotChecked=0, Total=506 [2018-11-14 18:50:27,093 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 122 states. [2018-11-14 18:50:27,136 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 122 to 122. [2018-11-14 18:50:27,136 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:50:27,136 INFO L82 GeneralOperation]: Start isEquivalent. First operand 122 states. Second operand 122 states. [2018-11-14 18:50:27,136 INFO L74 IsIncluded]: Start isIncluded. First operand 122 states. Second operand 122 states. [2018-11-14 18:50:27,137 INFO L87 Difference]: Start difference. First operand 122 states. Second operand 122 states. [2018-11-14 18:50:27,139 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:27,140 INFO L93 Difference]: Finished difference Result 122 states and 126 transitions. [2018-11-14 18:50:27,140 INFO L276 IsEmpty]: Start isEmpty. Operand 122 states and 126 transitions. [2018-11-14 18:50:27,140 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:50:27,140 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:50:27,140 INFO L74 IsIncluded]: Start isIncluded. First operand 122 states. Second operand 122 states. [2018-11-14 18:50:27,141 INFO L87 Difference]: Start difference. First operand 122 states. Second operand 122 states. [2018-11-14 18:50:27,142 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:27,143 INFO L93 Difference]: Finished difference Result 122 states and 126 transitions. [2018-11-14 18:50:27,143 INFO L276 IsEmpty]: Start isEmpty. Operand 122 states and 126 transitions. [2018-11-14 18:50:27,143 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:50:27,143 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:50:27,143 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:50:27,144 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:50:27,144 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 122 states. [2018-11-14 18:50:27,145 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 122 states to 122 states and 126 transitions. [2018-11-14 18:50:27,146 INFO L78 Accepts]: Start accepts. Automaton has 122 states and 126 transitions. Word has length 172 [2018-11-14 18:50:27,146 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:50:27,146 INFO L480 AbstractCegarLoop]: Abstraction has 122 states and 126 transitions. [2018-11-14 18:50:27,146 INFO L481 AbstractCegarLoop]: Interpolant automaton has 23 states. [2018-11-14 18:50:27,146 INFO L276 IsEmpty]: Start isEmpty. Operand 122 states and 126 transitions. [2018-11-14 18:50:27,147 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 176 [2018-11-14 18:50:27,147 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:50:27,148 INFO L375 BasicCegarLoop]: trace histogram [24, 21, 21, 21, 20, 20, 6, 5, 5, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:50:27,148 INFO L423 AbstractCegarLoop]: === Iteration 24 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:50:27,148 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:50:27,148 INFO L82 PathProgramCache]: Analyzing trace with hash 862428551, now seen corresponding path program 20 times [2018-11-14 18:50:27,148 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:50:27,148 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:50:27,149 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:50:27,149 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 18:50:27,149 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:50:27,174 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:50:27,398 INFO L256 TraceCheckUtils]: 0: Hoare triple {15425#true} call ULTIMATE.init(); {15425#true} is VALID [2018-11-14 18:50:27,399 INFO L273 TraceCheckUtils]: 1: Hoare triple {15425#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {15425#true} is VALID [2018-11-14 18:50:27,399 INFO L273 TraceCheckUtils]: 2: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:27,399 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {15425#true} {15425#true} #69#return; {15425#true} is VALID [2018-11-14 18:50:27,399 INFO L256 TraceCheckUtils]: 4: Hoare triple {15425#true} call #t~ret12 := main(); {15425#true} is VALID [2018-11-14 18:50:27,399 INFO L273 TraceCheckUtils]: 5: Hoare triple {15425#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {15425#true} is VALID [2018-11-14 18:50:27,400 INFO L273 TraceCheckUtils]: 6: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:27,400 INFO L273 TraceCheckUtils]: 7: Hoare triple {15425#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15425#true} is VALID [2018-11-14 18:50:27,400 INFO L273 TraceCheckUtils]: 8: Hoare triple {15425#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15425#true} is VALID [2018-11-14 18:50:27,400 INFO L273 TraceCheckUtils]: 9: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:27,400 INFO L273 TraceCheckUtils]: 10: Hoare triple {15425#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15425#true} is VALID [2018-11-14 18:50:27,400 INFO L273 TraceCheckUtils]: 11: Hoare triple {15425#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15425#true} is VALID [2018-11-14 18:50:27,400 INFO L273 TraceCheckUtils]: 12: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:27,401 INFO L273 TraceCheckUtils]: 13: Hoare triple {15425#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15425#true} is VALID [2018-11-14 18:50:27,401 INFO L273 TraceCheckUtils]: 14: Hoare triple {15425#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15425#true} is VALID [2018-11-14 18:50:27,401 INFO L273 TraceCheckUtils]: 15: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:27,401 INFO L273 TraceCheckUtils]: 16: Hoare triple {15425#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15425#true} is VALID [2018-11-14 18:50:27,401 INFO L273 TraceCheckUtils]: 17: Hoare triple {15425#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15425#true} is VALID [2018-11-14 18:50:27,401 INFO L273 TraceCheckUtils]: 18: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:27,401 INFO L273 TraceCheckUtils]: 19: Hoare triple {15425#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15425#true} is VALID [2018-11-14 18:50:27,401 INFO L273 TraceCheckUtils]: 20: Hoare triple {15425#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15425#true} is VALID [2018-11-14 18:50:27,402 INFO L273 TraceCheckUtils]: 21: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:27,402 INFO L273 TraceCheckUtils]: 22: Hoare triple {15425#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15425#true} is VALID [2018-11-14 18:50:27,402 INFO L273 TraceCheckUtils]: 23: Hoare triple {15425#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15425#true} is VALID [2018-11-14 18:50:27,402 INFO L273 TraceCheckUtils]: 24: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:27,402 INFO L273 TraceCheckUtils]: 25: Hoare triple {15425#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15425#true} is VALID [2018-11-14 18:50:27,402 INFO L273 TraceCheckUtils]: 26: Hoare triple {15425#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15425#true} is VALID [2018-11-14 18:50:27,402 INFO L273 TraceCheckUtils]: 27: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:27,402 INFO L273 TraceCheckUtils]: 28: Hoare triple {15425#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15425#true} is VALID [2018-11-14 18:50:27,402 INFO L273 TraceCheckUtils]: 29: Hoare triple {15425#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15425#true} is VALID [2018-11-14 18:50:27,403 INFO L273 TraceCheckUtils]: 30: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:27,403 INFO L273 TraceCheckUtils]: 31: Hoare triple {15425#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15425#true} is VALID [2018-11-14 18:50:27,403 INFO L273 TraceCheckUtils]: 32: Hoare triple {15425#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15425#true} is VALID [2018-11-14 18:50:27,403 INFO L273 TraceCheckUtils]: 33: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:27,403 INFO L273 TraceCheckUtils]: 34: Hoare triple {15425#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15425#true} is VALID [2018-11-14 18:50:27,403 INFO L273 TraceCheckUtils]: 35: Hoare triple {15425#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15425#true} is VALID [2018-11-14 18:50:27,403 INFO L273 TraceCheckUtils]: 36: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:27,403 INFO L273 TraceCheckUtils]: 37: Hoare triple {15425#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15425#true} is VALID [2018-11-14 18:50:27,403 INFO L273 TraceCheckUtils]: 38: Hoare triple {15425#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15425#true} is VALID [2018-11-14 18:50:27,404 INFO L273 TraceCheckUtils]: 39: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:27,404 INFO L273 TraceCheckUtils]: 40: Hoare triple {15425#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15425#true} is VALID [2018-11-14 18:50:27,404 INFO L273 TraceCheckUtils]: 41: Hoare triple {15425#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15425#true} is VALID [2018-11-14 18:50:27,404 INFO L273 TraceCheckUtils]: 42: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:27,404 INFO L273 TraceCheckUtils]: 43: Hoare triple {15425#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15425#true} is VALID [2018-11-14 18:50:27,404 INFO L273 TraceCheckUtils]: 44: Hoare triple {15425#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15425#true} is VALID [2018-11-14 18:50:27,404 INFO L273 TraceCheckUtils]: 45: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:27,404 INFO L273 TraceCheckUtils]: 46: Hoare triple {15425#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15425#true} is VALID [2018-11-14 18:50:27,404 INFO L273 TraceCheckUtils]: 47: Hoare triple {15425#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15425#true} is VALID [2018-11-14 18:50:27,405 INFO L273 TraceCheckUtils]: 48: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:27,405 INFO L273 TraceCheckUtils]: 49: Hoare triple {15425#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15425#true} is VALID [2018-11-14 18:50:27,405 INFO L273 TraceCheckUtils]: 50: Hoare triple {15425#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15425#true} is VALID [2018-11-14 18:50:27,405 INFO L273 TraceCheckUtils]: 51: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:27,405 INFO L273 TraceCheckUtils]: 52: Hoare triple {15425#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15425#true} is VALID [2018-11-14 18:50:27,405 INFO L273 TraceCheckUtils]: 53: Hoare triple {15425#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15425#true} is VALID [2018-11-14 18:50:27,405 INFO L273 TraceCheckUtils]: 54: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:27,405 INFO L273 TraceCheckUtils]: 55: Hoare triple {15425#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15425#true} is VALID [2018-11-14 18:50:27,405 INFO L273 TraceCheckUtils]: 56: Hoare triple {15425#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15425#true} is VALID [2018-11-14 18:50:27,405 INFO L273 TraceCheckUtils]: 57: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:27,406 INFO L273 TraceCheckUtils]: 58: Hoare triple {15425#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15425#true} is VALID [2018-11-14 18:50:27,406 INFO L273 TraceCheckUtils]: 59: Hoare triple {15425#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15425#true} is VALID [2018-11-14 18:50:27,406 INFO L273 TraceCheckUtils]: 60: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:27,406 INFO L273 TraceCheckUtils]: 61: Hoare triple {15425#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15425#true} is VALID [2018-11-14 18:50:27,406 INFO L273 TraceCheckUtils]: 62: Hoare triple {15425#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15425#true} is VALID [2018-11-14 18:50:27,406 INFO L273 TraceCheckUtils]: 63: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:27,406 INFO L273 TraceCheckUtils]: 64: Hoare triple {15425#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15425#true} is VALID [2018-11-14 18:50:27,406 INFO L273 TraceCheckUtils]: 65: Hoare triple {15425#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15425#true} is VALID [2018-11-14 18:50:27,406 INFO L273 TraceCheckUtils]: 66: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:27,406 INFO L273 TraceCheckUtils]: 67: Hoare triple {15425#true} assume !(~i~1 < 20); {15425#true} is VALID [2018-11-14 18:50:27,407 INFO L256 TraceCheckUtils]: 68: Hoare triple {15425#true} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {15425#true} is VALID [2018-11-14 18:50:27,407 INFO L273 TraceCheckUtils]: 69: Hoare triple {15425#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {15427#(= avg_~i~0 0)} is VALID [2018-11-14 18:50:27,407 INFO L273 TraceCheckUtils]: 70: Hoare triple {15427#(= avg_~i~0 0)} assume true; {15427#(= avg_~i~0 0)} is VALID [2018-11-14 18:50:27,408 INFO L273 TraceCheckUtils]: 71: Hoare triple {15427#(= avg_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {15427#(= avg_~i~0 0)} is VALID [2018-11-14 18:50:27,408 INFO L273 TraceCheckUtils]: 72: Hoare triple {15427#(= avg_~i~0 0)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15428#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:27,408 INFO L273 TraceCheckUtils]: 73: Hoare triple {15428#(<= avg_~i~0 1)} assume true; {15428#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:27,408 INFO L273 TraceCheckUtils]: 74: Hoare triple {15428#(<= avg_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {15428#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:27,409 INFO L273 TraceCheckUtils]: 75: Hoare triple {15428#(<= avg_~i~0 1)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15429#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:27,409 INFO L273 TraceCheckUtils]: 76: Hoare triple {15429#(<= avg_~i~0 2)} assume true; {15429#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:27,410 INFO L273 TraceCheckUtils]: 77: Hoare triple {15429#(<= avg_~i~0 2)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {15429#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:27,410 INFO L273 TraceCheckUtils]: 78: Hoare triple {15429#(<= avg_~i~0 2)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15430#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:27,410 INFO L273 TraceCheckUtils]: 79: Hoare triple {15430#(<= avg_~i~0 3)} assume true; {15430#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:27,411 INFO L273 TraceCheckUtils]: 80: Hoare triple {15430#(<= avg_~i~0 3)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {15430#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:27,411 INFO L273 TraceCheckUtils]: 81: Hoare triple {15430#(<= avg_~i~0 3)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15431#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:27,412 INFO L273 TraceCheckUtils]: 82: Hoare triple {15431#(<= avg_~i~0 4)} assume true; {15431#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:27,412 INFO L273 TraceCheckUtils]: 83: Hoare triple {15431#(<= avg_~i~0 4)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {15431#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:27,413 INFO L273 TraceCheckUtils]: 84: Hoare triple {15431#(<= avg_~i~0 4)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15432#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:27,413 INFO L273 TraceCheckUtils]: 85: Hoare triple {15432#(<= avg_~i~0 5)} assume true; {15432#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:27,414 INFO L273 TraceCheckUtils]: 86: Hoare triple {15432#(<= avg_~i~0 5)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {15432#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:27,414 INFO L273 TraceCheckUtils]: 87: Hoare triple {15432#(<= avg_~i~0 5)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15433#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:27,415 INFO L273 TraceCheckUtils]: 88: Hoare triple {15433#(<= avg_~i~0 6)} assume true; {15433#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:27,415 INFO L273 TraceCheckUtils]: 89: Hoare triple {15433#(<= avg_~i~0 6)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {15433#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:27,416 INFO L273 TraceCheckUtils]: 90: Hoare triple {15433#(<= avg_~i~0 6)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15434#(<= avg_~i~0 7)} is VALID [2018-11-14 18:50:27,417 INFO L273 TraceCheckUtils]: 91: Hoare triple {15434#(<= avg_~i~0 7)} assume true; {15434#(<= avg_~i~0 7)} is VALID [2018-11-14 18:50:27,417 INFO L273 TraceCheckUtils]: 92: Hoare triple {15434#(<= avg_~i~0 7)} assume !(~i~0 < 20); {15426#false} is VALID [2018-11-14 18:50:27,417 INFO L273 TraceCheckUtils]: 93: Hoare triple {15426#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {15426#false} is VALID [2018-11-14 18:50:27,417 INFO L273 TraceCheckUtils]: 94: Hoare triple {15426#false} assume true; {15426#false} is VALID [2018-11-14 18:50:27,418 INFO L268 TraceCheckUtils]: 95: Hoare quadruple {15426#false} {15425#true} #73#return; {15426#false} is VALID [2018-11-14 18:50:27,418 INFO L273 TraceCheckUtils]: 96: Hoare triple {15426#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); {15426#false} is VALID [2018-11-14 18:50:27,418 INFO L256 TraceCheckUtils]: 97: Hoare triple {15426#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {15425#true} is VALID [2018-11-14 18:50:27,418 INFO L273 TraceCheckUtils]: 98: Hoare triple {15425#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {15425#true} is VALID [2018-11-14 18:50:27,418 INFO L273 TraceCheckUtils]: 99: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:27,419 INFO L273 TraceCheckUtils]: 100: Hoare triple {15425#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {15425#true} is VALID [2018-11-14 18:50:27,419 INFO L273 TraceCheckUtils]: 101: Hoare triple {15425#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15425#true} is VALID [2018-11-14 18:50:27,419 INFO L273 TraceCheckUtils]: 102: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:27,419 INFO L273 TraceCheckUtils]: 103: Hoare triple {15425#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {15425#true} is VALID [2018-11-14 18:50:27,419 INFO L273 TraceCheckUtils]: 104: Hoare triple {15425#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15425#true} is VALID [2018-11-14 18:50:27,419 INFO L273 TraceCheckUtils]: 105: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:27,420 INFO L273 TraceCheckUtils]: 106: Hoare triple {15425#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {15425#true} is VALID [2018-11-14 18:50:27,420 INFO L273 TraceCheckUtils]: 107: Hoare triple {15425#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15425#true} is VALID [2018-11-14 18:50:27,420 INFO L273 TraceCheckUtils]: 108: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:27,420 INFO L273 TraceCheckUtils]: 109: Hoare triple {15425#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {15425#true} is VALID [2018-11-14 18:50:27,420 INFO L273 TraceCheckUtils]: 110: Hoare triple {15425#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15425#true} is VALID [2018-11-14 18:50:27,420 INFO L273 TraceCheckUtils]: 111: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:27,420 INFO L273 TraceCheckUtils]: 112: Hoare triple {15425#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {15425#true} is VALID [2018-11-14 18:50:27,420 INFO L273 TraceCheckUtils]: 113: Hoare triple {15425#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15425#true} is VALID [2018-11-14 18:50:27,421 INFO L273 TraceCheckUtils]: 114: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:27,421 INFO L273 TraceCheckUtils]: 115: Hoare triple {15425#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {15425#true} is VALID [2018-11-14 18:50:27,421 INFO L273 TraceCheckUtils]: 116: Hoare triple {15425#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15425#true} is VALID [2018-11-14 18:50:27,421 INFO L273 TraceCheckUtils]: 117: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:27,421 INFO L273 TraceCheckUtils]: 118: Hoare triple {15425#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {15425#true} is VALID [2018-11-14 18:50:27,421 INFO L273 TraceCheckUtils]: 119: Hoare triple {15425#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15425#true} is VALID [2018-11-14 18:50:27,421 INFO L273 TraceCheckUtils]: 120: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:27,421 INFO L273 TraceCheckUtils]: 121: Hoare triple {15425#true} assume !(~i~0 < 20); {15425#true} is VALID [2018-11-14 18:50:27,421 INFO L273 TraceCheckUtils]: 122: Hoare triple {15425#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {15425#true} is VALID [2018-11-14 18:50:27,421 INFO L273 TraceCheckUtils]: 123: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:27,422 INFO L268 TraceCheckUtils]: 124: Hoare quadruple {15425#true} {15426#false} #75#return; {15426#false} is VALID [2018-11-14 18:50:27,422 INFO L273 TraceCheckUtils]: 125: Hoare triple {15426#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; {15426#false} is VALID [2018-11-14 18:50:27,422 INFO L273 TraceCheckUtils]: 126: Hoare triple {15426#false} assume true; {15426#false} is VALID [2018-11-14 18:50:27,422 INFO L273 TraceCheckUtils]: 127: Hoare triple {15426#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {15426#false} is VALID [2018-11-14 18:50:27,422 INFO L273 TraceCheckUtils]: 128: Hoare triple {15426#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {15426#false} is VALID [2018-11-14 18:50:27,422 INFO L273 TraceCheckUtils]: 129: Hoare triple {15426#false} assume true; {15426#false} is VALID [2018-11-14 18:50:27,422 INFO L273 TraceCheckUtils]: 130: Hoare triple {15426#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {15426#false} is VALID [2018-11-14 18:50:27,422 INFO L273 TraceCheckUtils]: 131: Hoare triple {15426#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {15426#false} is VALID [2018-11-14 18:50:27,422 INFO L273 TraceCheckUtils]: 132: Hoare triple {15426#false} assume true; {15426#false} is VALID [2018-11-14 18:50:27,423 INFO L273 TraceCheckUtils]: 133: Hoare triple {15426#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {15426#false} is VALID [2018-11-14 18:50:27,423 INFO L273 TraceCheckUtils]: 134: Hoare triple {15426#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {15426#false} is VALID [2018-11-14 18:50:27,423 INFO L273 TraceCheckUtils]: 135: Hoare triple {15426#false} assume true; {15426#false} is VALID [2018-11-14 18:50:27,423 INFO L273 TraceCheckUtils]: 136: Hoare triple {15426#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {15426#false} is VALID [2018-11-14 18:50:27,423 INFO L273 TraceCheckUtils]: 137: Hoare triple {15426#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {15426#false} is VALID [2018-11-14 18:50:27,423 INFO L273 TraceCheckUtils]: 138: Hoare triple {15426#false} assume true; {15426#false} is VALID [2018-11-14 18:50:27,423 INFO L273 TraceCheckUtils]: 139: Hoare triple {15426#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {15426#false} is VALID [2018-11-14 18:50:27,423 INFO L273 TraceCheckUtils]: 140: Hoare triple {15426#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {15426#false} is VALID [2018-11-14 18:50:27,423 INFO L273 TraceCheckUtils]: 141: Hoare triple {15426#false} assume true; {15426#false} is VALID [2018-11-14 18:50:27,423 INFO L273 TraceCheckUtils]: 142: Hoare triple {15426#false} assume !(~i~2 < 19); {15426#false} is VALID [2018-11-14 18:50:27,424 INFO L273 TraceCheckUtils]: 143: Hoare triple {15426#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {15426#false} is VALID [2018-11-14 18:50:27,424 INFO L256 TraceCheckUtils]: 144: Hoare triple {15426#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {15425#true} is VALID [2018-11-14 18:50:27,424 INFO L273 TraceCheckUtils]: 145: Hoare triple {15425#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {15425#true} is VALID [2018-11-14 18:50:27,424 INFO L273 TraceCheckUtils]: 146: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:27,424 INFO L273 TraceCheckUtils]: 147: Hoare triple {15425#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {15425#true} is VALID [2018-11-14 18:50:27,424 INFO L273 TraceCheckUtils]: 148: Hoare triple {15425#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15425#true} is VALID [2018-11-14 18:50:27,424 INFO L273 TraceCheckUtils]: 149: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:27,424 INFO L273 TraceCheckUtils]: 150: Hoare triple {15425#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {15425#true} is VALID [2018-11-14 18:50:27,424 INFO L273 TraceCheckUtils]: 151: Hoare triple {15425#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15425#true} is VALID [2018-11-14 18:50:27,425 INFO L273 TraceCheckUtils]: 152: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:27,425 INFO L273 TraceCheckUtils]: 153: Hoare triple {15425#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {15425#true} is VALID [2018-11-14 18:50:27,425 INFO L273 TraceCheckUtils]: 154: Hoare triple {15425#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15425#true} is VALID [2018-11-14 18:50:27,425 INFO L273 TraceCheckUtils]: 155: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:27,425 INFO L273 TraceCheckUtils]: 156: Hoare triple {15425#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {15425#true} is VALID [2018-11-14 18:50:27,425 INFO L273 TraceCheckUtils]: 157: Hoare triple {15425#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15425#true} is VALID [2018-11-14 18:50:27,425 INFO L273 TraceCheckUtils]: 158: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:27,425 INFO L273 TraceCheckUtils]: 159: Hoare triple {15425#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {15425#true} is VALID [2018-11-14 18:50:27,425 INFO L273 TraceCheckUtils]: 160: Hoare triple {15425#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15425#true} is VALID [2018-11-14 18:50:27,425 INFO L273 TraceCheckUtils]: 161: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:27,426 INFO L273 TraceCheckUtils]: 162: Hoare triple {15425#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {15425#true} is VALID [2018-11-14 18:50:27,426 INFO L273 TraceCheckUtils]: 163: Hoare triple {15425#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15425#true} is VALID [2018-11-14 18:50:27,426 INFO L273 TraceCheckUtils]: 164: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:27,426 INFO L273 TraceCheckUtils]: 165: Hoare triple {15425#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {15425#true} is VALID [2018-11-14 18:50:27,426 INFO L273 TraceCheckUtils]: 166: Hoare triple {15425#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15425#true} is VALID [2018-11-14 18:50:27,426 INFO L273 TraceCheckUtils]: 167: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:27,426 INFO L273 TraceCheckUtils]: 168: Hoare triple {15425#true} assume !(~i~0 < 20); {15425#true} is VALID [2018-11-14 18:50:27,426 INFO L273 TraceCheckUtils]: 169: Hoare triple {15425#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {15425#true} is VALID [2018-11-14 18:50:27,426 INFO L273 TraceCheckUtils]: 170: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:27,426 INFO L268 TraceCheckUtils]: 171: Hoare quadruple {15425#true} {15426#false} #77#return; {15426#false} is VALID [2018-11-14 18:50:27,427 INFO L273 TraceCheckUtils]: 172: Hoare triple {15426#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {15426#false} is VALID [2018-11-14 18:50:27,427 INFO L273 TraceCheckUtils]: 173: Hoare triple {15426#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {15426#false} is VALID [2018-11-14 18:50:27,427 INFO L273 TraceCheckUtils]: 174: Hoare triple {15426#false} assume !false; {15426#false} is VALID [2018-11-14 18:50:27,437 INFO L134 CoverageAnalysis]: Checked inductivity of 1424 backedges. 0 proven. 437 refuted. 0 times theorem prover too weak. 987 trivial. 0 not checked. [2018-11-14 18:50:27,437 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:50:27,437 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 22 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 22 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:50:27,445 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-14 18:50:27,509 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-14 18:50:27,510 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 18:50:27,557 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:50:27,559 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:50:28,615 INFO L256 TraceCheckUtils]: 0: Hoare triple {15425#true} call ULTIMATE.init(); {15425#true} is VALID [2018-11-14 18:50:28,615 INFO L273 TraceCheckUtils]: 1: Hoare triple {15425#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {15425#true} is VALID [2018-11-14 18:50:28,616 INFO L273 TraceCheckUtils]: 2: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:28,616 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {15425#true} {15425#true} #69#return; {15425#true} is VALID [2018-11-14 18:50:28,616 INFO L256 TraceCheckUtils]: 4: Hoare triple {15425#true} call #t~ret12 := main(); {15425#true} is VALID [2018-11-14 18:50:28,616 INFO L273 TraceCheckUtils]: 5: Hoare triple {15425#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {15425#true} is VALID [2018-11-14 18:50:28,616 INFO L273 TraceCheckUtils]: 6: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:28,616 INFO L273 TraceCheckUtils]: 7: Hoare triple {15425#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15425#true} is VALID [2018-11-14 18:50:28,617 INFO L273 TraceCheckUtils]: 8: Hoare triple {15425#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15425#true} is VALID [2018-11-14 18:50:28,617 INFO L273 TraceCheckUtils]: 9: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:28,617 INFO L273 TraceCheckUtils]: 10: Hoare triple {15425#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15425#true} is VALID [2018-11-14 18:50:28,617 INFO L273 TraceCheckUtils]: 11: Hoare triple {15425#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15425#true} is VALID [2018-11-14 18:50:28,617 INFO L273 TraceCheckUtils]: 12: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:28,618 INFO L273 TraceCheckUtils]: 13: Hoare triple {15425#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15425#true} is VALID [2018-11-14 18:50:28,618 INFO L273 TraceCheckUtils]: 14: Hoare triple {15425#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15425#true} is VALID [2018-11-14 18:50:28,618 INFO L273 TraceCheckUtils]: 15: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:28,618 INFO L273 TraceCheckUtils]: 16: Hoare triple {15425#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15425#true} is VALID [2018-11-14 18:50:28,618 INFO L273 TraceCheckUtils]: 17: Hoare triple {15425#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15425#true} is VALID [2018-11-14 18:50:28,618 INFO L273 TraceCheckUtils]: 18: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:28,618 INFO L273 TraceCheckUtils]: 19: Hoare triple {15425#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15425#true} is VALID [2018-11-14 18:50:28,619 INFO L273 TraceCheckUtils]: 20: Hoare triple {15425#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15425#true} is VALID [2018-11-14 18:50:28,619 INFO L273 TraceCheckUtils]: 21: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:28,619 INFO L273 TraceCheckUtils]: 22: Hoare triple {15425#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15425#true} is VALID [2018-11-14 18:50:28,619 INFO L273 TraceCheckUtils]: 23: Hoare triple {15425#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15425#true} is VALID [2018-11-14 18:50:28,619 INFO L273 TraceCheckUtils]: 24: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:28,619 INFO L273 TraceCheckUtils]: 25: Hoare triple {15425#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15425#true} is VALID [2018-11-14 18:50:28,619 INFO L273 TraceCheckUtils]: 26: Hoare triple {15425#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15425#true} is VALID [2018-11-14 18:50:28,619 INFO L273 TraceCheckUtils]: 27: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:28,619 INFO L273 TraceCheckUtils]: 28: Hoare triple {15425#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15425#true} is VALID [2018-11-14 18:50:28,619 INFO L273 TraceCheckUtils]: 29: Hoare triple {15425#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15425#true} is VALID [2018-11-14 18:50:28,620 INFO L273 TraceCheckUtils]: 30: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:28,620 INFO L273 TraceCheckUtils]: 31: Hoare triple {15425#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15425#true} is VALID [2018-11-14 18:50:28,620 INFO L273 TraceCheckUtils]: 32: Hoare triple {15425#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15425#true} is VALID [2018-11-14 18:50:28,620 INFO L273 TraceCheckUtils]: 33: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:28,620 INFO L273 TraceCheckUtils]: 34: Hoare triple {15425#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15425#true} is VALID [2018-11-14 18:50:28,620 INFO L273 TraceCheckUtils]: 35: Hoare triple {15425#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15425#true} is VALID [2018-11-14 18:50:28,620 INFO L273 TraceCheckUtils]: 36: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:28,620 INFO L273 TraceCheckUtils]: 37: Hoare triple {15425#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15425#true} is VALID [2018-11-14 18:50:28,620 INFO L273 TraceCheckUtils]: 38: Hoare triple {15425#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15425#true} is VALID [2018-11-14 18:50:28,621 INFO L273 TraceCheckUtils]: 39: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:28,621 INFO L273 TraceCheckUtils]: 40: Hoare triple {15425#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15425#true} is VALID [2018-11-14 18:50:28,621 INFO L273 TraceCheckUtils]: 41: Hoare triple {15425#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15425#true} is VALID [2018-11-14 18:50:28,621 INFO L273 TraceCheckUtils]: 42: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:28,621 INFO L273 TraceCheckUtils]: 43: Hoare triple {15425#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15425#true} is VALID [2018-11-14 18:50:28,621 INFO L273 TraceCheckUtils]: 44: Hoare triple {15425#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15425#true} is VALID [2018-11-14 18:50:28,621 INFO L273 TraceCheckUtils]: 45: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:28,621 INFO L273 TraceCheckUtils]: 46: Hoare triple {15425#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15425#true} is VALID [2018-11-14 18:50:28,621 INFO L273 TraceCheckUtils]: 47: Hoare triple {15425#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15425#true} is VALID [2018-11-14 18:50:28,621 INFO L273 TraceCheckUtils]: 48: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:28,622 INFO L273 TraceCheckUtils]: 49: Hoare triple {15425#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15425#true} is VALID [2018-11-14 18:50:28,622 INFO L273 TraceCheckUtils]: 50: Hoare triple {15425#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15425#true} is VALID [2018-11-14 18:50:28,622 INFO L273 TraceCheckUtils]: 51: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:28,622 INFO L273 TraceCheckUtils]: 52: Hoare triple {15425#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15425#true} is VALID [2018-11-14 18:50:28,622 INFO L273 TraceCheckUtils]: 53: Hoare triple {15425#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15425#true} is VALID [2018-11-14 18:50:28,622 INFO L273 TraceCheckUtils]: 54: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:28,622 INFO L273 TraceCheckUtils]: 55: Hoare triple {15425#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15425#true} is VALID [2018-11-14 18:50:28,622 INFO L273 TraceCheckUtils]: 56: Hoare triple {15425#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15425#true} is VALID [2018-11-14 18:50:28,622 INFO L273 TraceCheckUtils]: 57: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:28,623 INFO L273 TraceCheckUtils]: 58: Hoare triple {15425#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15425#true} is VALID [2018-11-14 18:50:28,623 INFO L273 TraceCheckUtils]: 59: Hoare triple {15425#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15425#true} is VALID [2018-11-14 18:50:28,623 INFO L273 TraceCheckUtils]: 60: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:28,623 INFO L273 TraceCheckUtils]: 61: Hoare triple {15425#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15425#true} is VALID [2018-11-14 18:50:28,623 INFO L273 TraceCheckUtils]: 62: Hoare triple {15425#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15425#true} is VALID [2018-11-14 18:50:28,623 INFO L273 TraceCheckUtils]: 63: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:28,623 INFO L273 TraceCheckUtils]: 64: Hoare triple {15425#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15425#true} is VALID [2018-11-14 18:50:28,623 INFO L273 TraceCheckUtils]: 65: Hoare triple {15425#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15425#true} is VALID [2018-11-14 18:50:28,623 INFO L273 TraceCheckUtils]: 66: Hoare triple {15425#true} assume true; {15425#true} is VALID [2018-11-14 18:50:28,623 INFO L273 TraceCheckUtils]: 67: Hoare triple {15425#true} assume !(~i~1 < 20); {15425#true} is VALID [2018-11-14 18:50:28,624 INFO L256 TraceCheckUtils]: 68: Hoare triple {15425#true} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {15425#true} is VALID [2018-11-14 18:50:28,624 INFO L273 TraceCheckUtils]: 69: Hoare triple {15425#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {15645#(<= avg_~i~0 0)} is VALID [2018-11-14 18:50:28,624 INFO L273 TraceCheckUtils]: 70: Hoare triple {15645#(<= avg_~i~0 0)} assume true; {15645#(<= avg_~i~0 0)} is VALID [2018-11-14 18:50:28,625 INFO L273 TraceCheckUtils]: 71: Hoare triple {15645#(<= avg_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {15645#(<= avg_~i~0 0)} is VALID [2018-11-14 18:50:28,625 INFO L273 TraceCheckUtils]: 72: Hoare triple {15645#(<= avg_~i~0 0)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15428#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:28,625 INFO L273 TraceCheckUtils]: 73: Hoare triple {15428#(<= avg_~i~0 1)} assume true; {15428#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:28,626 INFO L273 TraceCheckUtils]: 74: Hoare triple {15428#(<= avg_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {15428#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:28,626 INFO L273 TraceCheckUtils]: 75: Hoare triple {15428#(<= avg_~i~0 1)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15429#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:28,627 INFO L273 TraceCheckUtils]: 76: Hoare triple {15429#(<= avg_~i~0 2)} assume true; {15429#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:28,627 INFO L273 TraceCheckUtils]: 77: Hoare triple {15429#(<= avg_~i~0 2)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {15429#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:28,628 INFO L273 TraceCheckUtils]: 78: Hoare triple {15429#(<= avg_~i~0 2)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15430#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:28,628 INFO L273 TraceCheckUtils]: 79: Hoare triple {15430#(<= avg_~i~0 3)} assume true; {15430#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:28,629 INFO L273 TraceCheckUtils]: 80: Hoare triple {15430#(<= avg_~i~0 3)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {15430#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:28,629 INFO L273 TraceCheckUtils]: 81: Hoare triple {15430#(<= avg_~i~0 3)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15431#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:28,630 INFO L273 TraceCheckUtils]: 82: Hoare triple {15431#(<= avg_~i~0 4)} assume true; {15431#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:28,630 INFO L273 TraceCheckUtils]: 83: Hoare triple {15431#(<= avg_~i~0 4)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {15431#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:28,631 INFO L273 TraceCheckUtils]: 84: Hoare triple {15431#(<= avg_~i~0 4)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15432#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:28,632 INFO L273 TraceCheckUtils]: 85: Hoare triple {15432#(<= avg_~i~0 5)} assume true; {15432#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:28,632 INFO L273 TraceCheckUtils]: 86: Hoare triple {15432#(<= avg_~i~0 5)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {15432#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:28,633 INFO L273 TraceCheckUtils]: 87: Hoare triple {15432#(<= avg_~i~0 5)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15433#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:28,633 INFO L273 TraceCheckUtils]: 88: Hoare triple {15433#(<= avg_~i~0 6)} assume true; {15433#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:28,634 INFO L273 TraceCheckUtils]: 89: Hoare triple {15433#(<= avg_~i~0 6)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {15433#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:28,634 INFO L273 TraceCheckUtils]: 90: Hoare triple {15433#(<= avg_~i~0 6)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15434#(<= avg_~i~0 7)} is VALID [2018-11-14 18:50:28,635 INFO L273 TraceCheckUtils]: 91: Hoare triple {15434#(<= avg_~i~0 7)} assume true; {15434#(<= avg_~i~0 7)} is VALID [2018-11-14 18:50:28,635 INFO L273 TraceCheckUtils]: 92: Hoare triple {15434#(<= avg_~i~0 7)} assume !(~i~0 < 20); {15426#false} is VALID [2018-11-14 18:50:28,636 INFO L273 TraceCheckUtils]: 93: Hoare triple {15426#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {15426#false} is VALID [2018-11-14 18:50:28,636 INFO L273 TraceCheckUtils]: 94: Hoare triple {15426#false} assume true; {15426#false} is VALID [2018-11-14 18:50:28,636 INFO L268 TraceCheckUtils]: 95: Hoare quadruple {15426#false} {15425#true} #73#return; {15426#false} is VALID [2018-11-14 18:50:28,636 INFO L273 TraceCheckUtils]: 96: Hoare triple {15426#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); {15426#false} is VALID [2018-11-14 18:50:28,636 INFO L256 TraceCheckUtils]: 97: Hoare triple {15426#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {15426#false} is VALID [2018-11-14 18:50:28,636 INFO L273 TraceCheckUtils]: 98: Hoare triple {15426#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {15426#false} is VALID [2018-11-14 18:50:28,637 INFO L273 TraceCheckUtils]: 99: Hoare triple {15426#false} assume true; {15426#false} is VALID [2018-11-14 18:50:28,637 INFO L273 TraceCheckUtils]: 100: Hoare triple {15426#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {15426#false} is VALID [2018-11-14 18:50:28,637 INFO L273 TraceCheckUtils]: 101: Hoare triple {15426#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15426#false} is VALID [2018-11-14 18:50:28,637 INFO L273 TraceCheckUtils]: 102: Hoare triple {15426#false} assume true; {15426#false} is VALID [2018-11-14 18:50:28,637 INFO L273 TraceCheckUtils]: 103: Hoare triple {15426#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {15426#false} is VALID [2018-11-14 18:50:28,637 INFO L273 TraceCheckUtils]: 104: Hoare triple {15426#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15426#false} is VALID [2018-11-14 18:50:28,637 INFO L273 TraceCheckUtils]: 105: Hoare triple {15426#false} assume true; {15426#false} is VALID [2018-11-14 18:50:28,638 INFO L273 TraceCheckUtils]: 106: Hoare triple {15426#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {15426#false} is VALID [2018-11-14 18:50:28,638 INFO L273 TraceCheckUtils]: 107: Hoare triple {15426#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15426#false} is VALID [2018-11-14 18:50:28,638 INFO L273 TraceCheckUtils]: 108: Hoare triple {15426#false} assume true; {15426#false} is VALID [2018-11-14 18:50:28,638 INFO L273 TraceCheckUtils]: 109: Hoare triple {15426#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {15426#false} is VALID [2018-11-14 18:50:28,638 INFO L273 TraceCheckUtils]: 110: Hoare triple {15426#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15426#false} is VALID [2018-11-14 18:50:28,638 INFO L273 TraceCheckUtils]: 111: Hoare triple {15426#false} assume true; {15426#false} is VALID [2018-11-14 18:50:28,638 INFO L273 TraceCheckUtils]: 112: Hoare triple {15426#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {15426#false} is VALID [2018-11-14 18:50:28,638 INFO L273 TraceCheckUtils]: 113: Hoare triple {15426#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15426#false} is VALID [2018-11-14 18:50:28,638 INFO L273 TraceCheckUtils]: 114: Hoare triple {15426#false} assume true; {15426#false} is VALID [2018-11-14 18:50:28,639 INFO L273 TraceCheckUtils]: 115: Hoare triple {15426#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {15426#false} is VALID [2018-11-14 18:50:28,639 INFO L273 TraceCheckUtils]: 116: Hoare triple {15426#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15426#false} is VALID [2018-11-14 18:50:28,639 INFO L273 TraceCheckUtils]: 117: Hoare triple {15426#false} assume true; {15426#false} is VALID [2018-11-14 18:50:28,639 INFO L273 TraceCheckUtils]: 118: Hoare triple {15426#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {15426#false} is VALID [2018-11-14 18:50:28,639 INFO L273 TraceCheckUtils]: 119: Hoare triple {15426#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15426#false} is VALID [2018-11-14 18:50:28,639 INFO L273 TraceCheckUtils]: 120: Hoare triple {15426#false} assume true; {15426#false} is VALID [2018-11-14 18:50:28,639 INFO L273 TraceCheckUtils]: 121: Hoare triple {15426#false} assume !(~i~0 < 20); {15426#false} is VALID [2018-11-14 18:50:28,639 INFO L273 TraceCheckUtils]: 122: Hoare triple {15426#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {15426#false} is VALID [2018-11-14 18:50:28,639 INFO L273 TraceCheckUtils]: 123: Hoare triple {15426#false} assume true; {15426#false} is VALID [2018-11-14 18:50:28,639 INFO L268 TraceCheckUtils]: 124: Hoare quadruple {15426#false} {15426#false} #75#return; {15426#false} is VALID [2018-11-14 18:50:28,640 INFO L273 TraceCheckUtils]: 125: Hoare triple {15426#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; {15426#false} is VALID [2018-11-14 18:50:28,640 INFO L273 TraceCheckUtils]: 126: Hoare triple {15426#false} assume true; {15426#false} is VALID [2018-11-14 18:50:28,640 INFO L273 TraceCheckUtils]: 127: Hoare triple {15426#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {15426#false} is VALID [2018-11-14 18:50:28,640 INFO L273 TraceCheckUtils]: 128: Hoare triple {15426#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {15426#false} is VALID [2018-11-14 18:50:28,640 INFO L273 TraceCheckUtils]: 129: Hoare triple {15426#false} assume true; {15426#false} is VALID [2018-11-14 18:50:28,640 INFO L273 TraceCheckUtils]: 130: Hoare triple {15426#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {15426#false} is VALID [2018-11-14 18:50:28,640 INFO L273 TraceCheckUtils]: 131: Hoare triple {15426#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {15426#false} is VALID [2018-11-14 18:50:28,640 INFO L273 TraceCheckUtils]: 132: Hoare triple {15426#false} assume true; {15426#false} is VALID [2018-11-14 18:50:28,640 INFO L273 TraceCheckUtils]: 133: Hoare triple {15426#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {15426#false} is VALID [2018-11-14 18:50:28,641 INFO L273 TraceCheckUtils]: 134: Hoare triple {15426#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {15426#false} is VALID [2018-11-14 18:50:28,641 INFO L273 TraceCheckUtils]: 135: Hoare triple {15426#false} assume true; {15426#false} is VALID [2018-11-14 18:50:28,641 INFO L273 TraceCheckUtils]: 136: Hoare triple {15426#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {15426#false} is VALID [2018-11-14 18:50:28,641 INFO L273 TraceCheckUtils]: 137: Hoare triple {15426#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {15426#false} is VALID [2018-11-14 18:50:28,641 INFO L273 TraceCheckUtils]: 138: Hoare triple {15426#false} assume true; {15426#false} is VALID [2018-11-14 18:50:28,641 INFO L273 TraceCheckUtils]: 139: Hoare triple {15426#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {15426#false} is VALID [2018-11-14 18:50:28,641 INFO L273 TraceCheckUtils]: 140: Hoare triple {15426#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {15426#false} is VALID [2018-11-14 18:50:28,641 INFO L273 TraceCheckUtils]: 141: Hoare triple {15426#false} assume true; {15426#false} is VALID [2018-11-14 18:50:28,641 INFO L273 TraceCheckUtils]: 142: Hoare triple {15426#false} assume !(~i~2 < 19); {15426#false} is VALID [2018-11-14 18:50:28,641 INFO L273 TraceCheckUtils]: 143: Hoare triple {15426#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {15426#false} is VALID [2018-11-14 18:50:28,642 INFO L256 TraceCheckUtils]: 144: Hoare triple {15426#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {15426#false} is VALID [2018-11-14 18:50:28,642 INFO L273 TraceCheckUtils]: 145: Hoare triple {15426#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {15426#false} is VALID [2018-11-14 18:50:28,642 INFO L273 TraceCheckUtils]: 146: Hoare triple {15426#false} assume true; {15426#false} is VALID [2018-11-14 18:50:28,642 INFO L273 TraceCheckUtils]: 147: Hoare triple {15426#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {15426#false} is VALID [2018-11-14 18:50:28,642 INFO L273 TraceCheckUtils]: 148: Hoare triple {15426#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15426#false} is VALID [2018-11-14 18:50:28,642 INFO L273 TraceCheckUtils]: 149: Hoare triple {15426#false} assume true; {15426#false} is VALID [2018-11-14 18:50:28,642 INFO L273 TraceCheckUtils]: 150: Hoare triple {15426#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {15426#false} is VALID [2018-11-14 18:50:28,642 INFO L273 TraceCheckUtils]: 151: Hoare triple {15426#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15426#false} is VALID [2018-11-14 18:50:28,642 INFO L273 TraceCheckUtils]: 152: Hoare triple {15426#false} assume true; {15426#false} is VALID [2018-11-14 18:50:28,643 INFO L273 TraceCheckUtils]: 153: Hoare triple {15426#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {15426#false} is VALID [2018-11-14 18:50:28,643 INFO L273 TraceCheckUtils]: 154: Hoare triple {15426#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15426#false} is VALID [2018-11-14 18:50:28,643 INFO L273 TraceCheckUtils]: 155: Hoare triple {15426#false} assume true; {15426#false} is VALID [2018-11-14 18:50:28,643 INFO L273 TraceCheckUtils]: 156: Hoare triple {15426#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {15426#false} is VALID [2018-11-14 18:50:28,643 INFO L273 TraceCheckUtils]: 157: Hoare triple {15426#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15426#false} is VALID [2018-11-14 18:50:28,643 INFO L273 TraceCheckUtils]: 158: Hoare triple {15426#false} assume true; {15426#false} is VALID [2018-11-14 18:50:28,643 INFO L273 TraceCheckUtils]: 159: Hoare triple {15426#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {15426#false} is VALID [2018-11-14 18:50:28,643 INFO L273 TraceCheckUtils]: 160: Hoare triple {15426#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15426#false} is VALID [2018-11-14 18:50:28,643 INFO L273 TraceCheckUtils]: 161: Hoare triple {15426#false} assume true; {15426#false} is VALID [2018-11-14 18:50:28,644 INFO L273 TraceCheckUtils]: 162: Hoare triple {15426#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {15426#false} is VALID [2018-11-14 18:50:28,644 INFO L273 TraceCheckUtils]: 163: Hoare triple {15426#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15426#false} is VALID [2018-11-14 18:50:28,644 INFO L273 TraceCheckUtils]: 164: Hoare triple {15426#false} assume true; {15426#false} is VALID [2018-11-14 18:50:28,644 INFO L273 TraceCheckUtils]: 165: Hoare triple {15426#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {15426#false} is VALID [2018-11-14 18:50:28,644 INFO L273 TraceCheckUtils]: 166: Hoare triple {15426#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15426#false} is VALID [2018-11-14 18:50:28,644 INFO L273 TraceCheckUtils]: 167: Hoare triple {15426#false} assume true; {15426#false} is VALID [2018-11-14 18:50:28,644 INFO L273 TraceCheckUtils]: 168: Hoare triple {15426#false} assume !(~i~0 < 20); {15426#false} is VALID [2018-11-14 18:50:28,644 INFO L273 TraceCheckUtils]: 169: Hoare triple {15426#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {15426#false} is VALID [2018-11-14 18:50:28,644 INFO L273 TraceCheckUtils]: 170: Hoare triple {15426#false} assume true; {15426#false} is VALID [2018-11-14 18:50:28,644 INFO L268 TraceCheckUtils]: 171: Hoare quadruple {15426#false} {15426#false} #77#return; {15426#false} is VALID [2018-11-14 18:50:28,645 INFO L273 TraceCheckUtils]: 172: Hoare triple {15426#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {15426#false} is VALID [2018-11-14 18:50:28,645 INFO L273 TraceCheckUtils]: 173: Hoare triple {15426#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {15426#false} is VALID [2018-11-14 18:50:28,645 INFO L273 TraceCheckUtils]: 174: Hoare triple {15426#false} assume !false; {15426#false} is VALID [2018-11-14 18:50:28,656 INFO L134 CoverageAnalysis]: Checked inductivity of 1424 backedges. 356 proven. 77 refuted. 0 times theorem prover too weak. 991 trivial. 0 not checked. [2018-11-14 18:50:28,676 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:50:28,676 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 11 [2018-11-14 18:50:28,677 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 175 [2018-11-14 18:50:28,678 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:50:28,678 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states. [2018-11-14 18:50:28,737 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 72 edges. 72 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:50:28,737 INFO L459 AbstractCegarLoop]: Interpolant automaton has 11 states [2018-11-14 18:50:28,738 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2018-11-14 18:50:28,738 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=55, Invalid=55, Unknown=0, NotChecked=0, Total=110 [2018-11-14 18:50:28,738 INFO L87 Difference]: Start difference. First operand 122 states and 126 transitions. Second operand 11 states. [2018-11-14 18:50:29,100 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:29,101 INFO L93 Difference]: Finished difference Result 179 states and 189 transitions. [2018-11-14 18:50:29,101 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2018-11-14 18:50:29,101 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 175 [2018-11-14 18:50:29,101 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:50:29,101 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2018-11-14 18:50:29,102 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 82 transitions. [2018-11-14 18:50:29,102 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2018-11-14 18:50:29,103 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 82 transitions. [2018-11-14 18:50:29,103 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 82 transitions. [2018-11-14 18:50:29,175 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 82 edges. 82 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:50:29,177 INFO L225 Difference]: With dead ends: 179 [2018-11-14 18:50:29,177 INFO L226 Difference]: Without dead ends: 126 [2018-11-14 18:50:29,178 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 184 GetRequests, 175 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 12 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=55, Invalid=55, Unknown=0, NotChecked=0, Total=110 [2018-11-14 18:50:29,178 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 126 states. [2018-11-14 18:50:29,210 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 126 to 125. [2018-11-14 18:50:29,211 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:50:29,211 INFO L82 GeneralOperation]: Start isEquivalent. First operand 126 states. Second operand 125 states. [2018-11-14 18:50:29,211 INFO L74 IsIncluded]: Start isIncluded. First operand 126 states. Second operand 125 states. [2018-11-14 18:50:29,211 INFO L87 Difference]: Start difference. First operand 126 states. Second operand 125 states. [2018-11-14 18:50:29,213 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:29,213 INFO L93 Difference]: Finished difference Result 126 states and 130 transitions. [2018-11-14 18:50:29,213 INFO L276 IsEmpty]: Start isEmpty. Operand 126 states and 130 transitions. [2018-11-14 18:50:29,214 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:50:29,214 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:50:29,214 INFO L74 IsIncluded]: Start isIncluded. First operand 125 states. Second operand 126 states. [2018-11-14 18:50:29,214 INFO L87 Difference]: Start difference. First operand 125 states. Second operand 126 states. [2018-11-14 18:50:29,216 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:29,216 INFO L93 Difference]: Finished difference Result 126 states and 130 transitions. [2018-11-14 18:50:29,216 INFO L276 IsEmpty]: Start isEmpty. Operand 126 states and 130 transitions. [2018-11-14 18:50:29,217 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:50:29,217 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:50:29,217 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:50:29,217 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:50:29,217 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 125 states. [2018-11-14 18:50:29,219 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 125 states to 125 states and 129 transitions. [2018-11-14 18:50:29,219 INFO L78 Accepts]: Start accepts. Automaton has 125 states and 129 transitions. Word has length 175 [2018-11-14 18:50:29,220 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:50:29,220 INFO L480 AbstractCegarLoop]: Abstraction has 125 states and 129 transitions. [2018-11-14 18:50:29,220 INFO L481 AbstractCegarLoop]: Interpolant automaton has 11 states. [2018-11-14 18:50:29,220 INFO L276 IsEmpty]: Start isEmpty. Operand 125 states and 129 transitions. [2018-11-14 18:50:29,221 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 185 [2018-11-14 18:50:29,221 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:50:29,222 INFO L375 BasicCegarLoop]: trace histogram [27, 24, 24, 21, 20, 20, 6, 5, 5, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:50:29,222 INFO L423 AbstractCegarLoop]: === Iteration 25 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:50:29,222 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:50:29,222 INFO L82 PathProgramCache]: Analyzing trace with hash -1318669803, now seen corresponding path program 21 times [2018-11-14 18:50:29,222 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:50:29,222 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:50:29,223 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:50:29,223 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 18:50:29,223 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:50:29,247 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:50:29,838 INFO L256 TraceCheckUtils]: 0: Hoare triple {16621#true} call ULTIMATE.init(); {16621#true} is VALID [2018-11-14 18:50:29,838 INFO L273 TraceCheckUtils]: 1: Hoare triple {16621#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {16621#true} is VALID [2018-11-14 18:50:29,839 INFO L273 TraceCheckUtils]: 2: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:29,839 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {16621#true} {16621#true} #69#return; {16621#true} is VALID [2018-11-14 18:50:29,839 INFO L256 TraceCheckUtils]: 4: Hoare triple {16621#true} call #t~ret12 := main(); {16621#true} is VALID [2018-11-14 18:50:29,840 INFO L273 TraceCheckUtils]: 5: Hoare triple {16621#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {16621#true} is VALID [2018-11-14 18:50:29,840 INFO L273 TraceCheckUtils]: 6: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:29,840 INFO L273 TraceCheckUtils]: 7: Hoare triple {16621#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16621#true} is VALID [2018-11-14 18:50:29,840 INFO L273 TraceCheckUtils]: 8: Hoare triple {16621#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16621#true} is VALID [2018-11-14 18:50:29,840 INFO L273 TraceCheckUtils]: 9: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:29,840 INFO L273 TraceCheckUtils]: 10: Hoare triple {16621#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16621#true} is VALID [2018-11-14 18:50:29,841 INFO L273 TraceCheckUtils]: 11: Hoare triple {16621#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16621#true} is VALID [2018-11-14 18:50:29,841 INFO L273 TraceCheckUtils]: 12: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:29,841 INFO L273 TraceCheckUtils]: 13: Hoare triple {16621#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16621#true} is VALID [2018-11-14 18:50:29,841 INFO L273 TraceCheckUtils]: 14: Hoare triple {16621#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16621#true} is VALID [2018-11-14 18:50:29,841 INFO L273 TraceCheckUtils]: 15: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:29,841 INFO L273 TraceCheckUtils]: 16: Hoare triple {16621#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16621#true} is VALID [2018-11-14 18:50:29,841 INFO L273 TraceCheckUtils]: 17: Hoare triple {16621#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16621#true} is VALID [2018-11-14 18:50:29,841 INFO L273 TraceCheckUtils]: 18: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:29,841 INFO L273 TraceCheckUtils]: 19: Hoare triple {16621#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16621#true} is VALID [2018-11-14 18:50:29,842 INFO L273 TraceCheckUtils]: 20: Hoare triple {16621#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16621#true} is VALID [2018-11-14 18:50:29,842 INFO L273 TraceCheckUtils]: 21: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:29,842 INFO L273 TraceCheckUtils]: 22: Hoare triple {16621#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16621#true} is VALID [2018-11-14 18:50:29,842 INFO L273 TraceCheckUtils]: 23: Hoare triple {16621#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16621#true} is VALID [2018-11-14 18:50:29,842 INFO L273 TraceCheckUtils]: 24: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:29,842 INFO L273 TraceCheckUtils]: 25: Hoare triple {16621#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16621#true} is VALID [2018-11-14 18:50:29,842 INFO L273 TraceCheckUtils]: 26: Hoare triple {16621#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16621#true} is VALID [2018-11-14 18:50:29,842 INFO L273 TraceCheckUtils]: 27: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:29,842 INFO L273 TraceCheckUtils]: 28: Hoare triple {16621#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16621#true} is VALID [2018-11-14 18:50:29,842 INFO L273 TraceCheckUtils]: 29: Hoare triple {16621#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16621#true} is VALID [2018-11-14 18:50:29,843 INFO L273 TraceCheckUtils]: 30: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:29,843 INFO L273 TraceCheckUtils]: 31: Hoare triple {16621#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16621#true} is VALID [2018-11-14 18:50:29,843 INFO L273 TraceCheckUtils]: 32: Hoare triple {16621#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16621#true} is VALID [2018-11-14 18:50:29,843 INFO L273 TraceCheckUtils]: 33: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:29,843 INFO L273 TraceCheckUtils]: 34: Hoare triple {16621#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16621#true} is VALID [2018-11-14 18:50:29,843 INFO L273 TraceCheckUtils]: 35: Hoare triple {16621#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16621#true} is VALID [2018-11-14 18:50:29,843 INFO L273 TraceCheckUtils]: 36: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:29,843 INFO L273 TraceCheckUtils]: 37: Hoare triple {16621#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16621#true} is VALID [2018-11-14 18:50:29,843 INFO L273 TraceCheckUtils]: 38: Hoare triple {16621#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16621#true} is VALID [2018-11-14 18:50:29,844 INFO L273 TraceCheckUtils]: 39: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:29,844 INFO L273 TraceCheckUtils]: 40: Hoare triple {16621#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16621#true} is VALID [2018-11-14 18:50:29,844 INFO L273 TraceCheckUtils]: 41: Hoare triple {16621#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16621#true} is VALID [2018-11-14 18:50:29,844 INFO L273 TraceCheckUtils]: 42: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:29,844 INFO L273 TraceCheckUtils]: 43: Hoare triple {16621#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16621#true} is VALID [2018-11-14 18:50:29,844 INFO L273 TraceCheckUtils]: 44: Hoare triple {16621#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16621#true} is VALID [2018-11-14 18:50:29,844 INFO L273 TraceCheckUtils]: 45: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:29,844 INFO L273 TraceCheckUtils]: 46: Hoare triple {16621#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16621#true} is VALID [2018-11-14 18:50:29,844 INFO L273 TraceCheckUtils]: 47: Hoare triple {16621#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16621#true} is VALID [2018-11-14 18:50:29,845 INFO L273 TraceCheckUtils]: 48: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:29,845 INFO L273 TraceCheckUtils]: 49: Hoare triple {16621#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16621#true} is VALID [2018-11-14 18:50:29,845 INFO L273 TraceCheckUtils]: 50: Hoare triple {16621#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16621#true} is VALID [2018-11-14 18:50:29,845 INFO L273 TraceCheckUtils]: 51: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:29,845 INFO L273 TraceCheckUtils]: 52: Hoare triple {16621#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16621#true} is VALID [2018-11-14 18:50:29,845 INFO L273 TraceCheckUtils]: 53: Hoare triple {16621#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16621#true} is VALID [2018-11-14 18:50:29,845 INFO L273 TraceCheckUtils]: 54: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:29,845 INFO L273 TraceCheckUtils]: 55: Hoare triple {16621#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16621#true} is VALID [2018-11-14 18:50:29,845 INFO L273 TraceCheckUtils]: 56: Hoare triple {16621#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16621#true} is VALID [2018-11-14 18:50:29,845 INFO L273 TraceCheckUtils]: 57: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:29,846 INFO L273 TraceCheckUtils]: 58: Hoare triple {16621#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16621#true} is VALID [2018-11-14 18:50:29,846 INFO L273 TraceCheckUtils]: 59: Hoare triple {16621#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16621#true} is VALID [2018-11-14 18:50:29,846 INFO L273 TraceCheckUtils]: 60: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:29,846 INFO L273 TraceCheckUtils]: 61: Hoare triple {16621#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16621#true} is VALID [2018-11-14 18:50:29,846 INFO L273 TraceCheckUtils]: 62: Hoare triple {16621#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16621#true} is VALID [2018-11-14 18:50:29,846 INFO L273 TraceCheckUtils]: 63: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:29,846 INFO L273 TraceCheckUtils]: 64: Hoare triple {16621#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16621#true} is VALID [2018-11-14 18:50:29,846 INFO L273 TraceCheckUtils]: 65: Hoare triple {16621#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16621#true} is VALID [2018-11-14 18:50:29,846 INFO L273 TraceCheckUtils]: 66: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:29,847 INFO L273 TraceCheckUtils]: 67: Hoare triple {16621#true} assume !(~i~1 < 20); {16621#true} is VALID [2018-11-14 18:50:29,847 INFO L256 TraceCheckUtils]: 68: Hoare triple {16621#true} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {16621#true} is VALID [2018-11-14 18:50:29,847 INFO L273 TraceCheckUtils]: 69: Hoare triple {16621#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {16623#(= avg_~i~0 0)} is VALID [2018-11-14 18:50:29,847 INFO L273 TraceCheckUtils]: 70: Hoare triple {16623#(= avg_~i~0 0)} assume true; {16623#(= avg_~i~0 0)} is VALID [2018-11-14 18:50:29,848 INFO L273 TraceCheckUtils]: 71: Hoare triple {16623#(= avg_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {16623#(= avg_~i~0 0)} is VALID [2018-11-14 18:50:29,848 INFO L273 TraceCheckUtils]: 72: Hoare triple {16623#(= avg_~i~0 0)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16624#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:29,848 INFO L273 TraceCheckUtils]: 73: Hoare triple {16624#(<= avg_~i~0 1)} assume true; {16624#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:29,849 INFO L273 TraceCheckUtils]: 74: Hoare triple {16624#(<= avg_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {16624#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:29,849 INFO L273 TraceCheckUtils]: 75: Hoare triple {16624#(<= avg_~i~0 1)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16625#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:29,849 INFO L273 TraceCheckUtils]: 76: Hoare triple {16625#(<= avg_~i~0 2)} assume true; {16625#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:29,850 INFO L273 TraceCheckUtils]: 77: Hoare triple {16625#(<= avg_~i~0 2)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {16625#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:29,850 INFO L273 TraceCheckUtils]: 78: Hoare triple {16625#(<= avg_~i~0 2)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16626#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:29,851 INFO L273 TraceCheckUtils]: 79: Hoare triple {16626#(<= avg_~i~0 3)} assume true; {16626#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:29,851 INFO L273 TraceCheckUtils]: 80: Hoare triple {16626#(<= avg_~i~0 3)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {16626#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:29,852 INFO L273 TraceCheckUtils]: 81: Hoare triple {16626#(<= avg_~i~0 3)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16627#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:29,853 INFO L273 TraceCheckUtils]: 82: Hoare triple {16627#(<= avg_~i~0 4)} assume true; {16627#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:29,853 INFO L273 TraceCheckUtils]: 83: Hoare triple {16627#(<= avg_~i~0 4)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {16627#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:29,854 INFO L273 TraceCheckUtils]: 84: Hoare triple {16627#(<= avg_~i~0 4)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16628#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:29,854 INFO L273 TraceCheckUtils]: 85: Hoare triple {16628#(<= avg_~i~0 5)} assume true; {16628#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:29,855 INFO L273 TraceCheckUtils]: 86: Hoare triple {16628#(<= avg_~i~0 5)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {16628#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:29,856 INFO L273 TraceCheckUtils]: 87: Hoare triple {16628#(<= avg_~i~0 5)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16629#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:29,856 INFO L273 TraceCheckUtils]: 88: Hoare triple {16629#(<= avg_~i~0 6)} assume true; {16629#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:29,857 INFO L273 TraceCheckUtils]: 89: Hoare triple {16629#(<= avg_~i~0 6)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {16629#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:29,857 INFO L273 TraceCheckUtils]: 90: Hoare triple {16629#(<= avg_~i~0 6)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16630#(<= avg_~i~0 7)} is VALID [2018-11-14 18:50:29,858 INFO L273 TraceCheckUtils]: 91: Hoare triple {16630#(<= avg_~i~0 7)} assume true; {16630#(<= avg_~i~0 7)} is VALID [2018-11-14 18:50:29,858 INFO L273 TraceCheckUtils]: 92: Hoare triple {16630#(<= avg_~i~0 7)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {16630#(<= avg_~i~0 7)} is VALID [2018-11-14 18:50:29,859 INFO L273 TraceCheckUtils]: 93: Hoare triple {16630#(<= avg_~i~0 7)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16631#(<= avg_~i~0 8)} is VALID [2018-11-14 18:50:29,860 INFO L273 TraceCheckUtils]: 94: Hoare triple {16631#(<= avg_~i~0 8)} assume true; {16631#(<= avg_~i~0 8)} is VALID [2018-11-14 18:50:29,860 INFO L273 TraceCheckUtils]: 95: Hoare triple {16631#(<= avg_~i~0 8)} assume !(~i~0 < 20); {16622#false} is VALID [2018-11-14 18:50:29,860 INFO L273 TraceCheckUtils]: 96: Hoare triple {16622#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {16622#false} is VALID [2018-11-14 18:50:29,861 INFO L273 TraceCheckUtils]: 97: Hoare triple {16622#false} assume true; {16622#false} is VALID [2018-11-14 18:50:29,861 INFO L268 TraceCheckUtils]: 98: Hoare quadruple {16622#false} {16621#true} #73#return; {16622#false} is VALID [2018-11-14 18:50:29,861 INFO L273 TraceCheckUtils]: 99: Hoare triple {16622#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); {16622#false} is VALID [2018-11-14 18:50:29,861 INFO L256 TraceCheckUtils]: 100: Hoare triple {16622#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {16621#true} is VALID [2018-11-14 18:50:29,861 INFO L273 TraceCheckUtils]: 101: Hoare triple {16621#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {16621#true} is VALID [2018-11-14 18:50:29,862 INFO L273 TraceCheckUtils]: 102: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:29,862 INFO L273 TraceCheckUtils]: 103: Hoare triple {16621#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {16621#true} is VALID [2018-11-14 18:50:29,862 INFO L273 TraceCheckUtils]: 104: Hoare triple {16621#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16621#true} is VALID [2018-11-14 18:50:29,862 INFO L273 TraceCheckUtils]: 105: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:29,862 INFO L273 TraceCheckUtils]: 106: Hoare triple {16621#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {16621#true} is VALID [2018-11-14 18:50:29,862 INFO L273 TraceCheckUtils]: 107: Hoare triple {16621#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16621#true} is VALID [2018-11-14 18:50:29,863 INFO L273 TraceCheckUtils]: 108: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:29,863 INFO L273 TraceCheckUtils]: 109: Hoare triple {16621#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {16621#true} is VALID [2018-11-14 18:50:29,863 INFO L273 TraceCheckUtils]: 110: Hoare triple {16621#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16621#true} is VALID [2018-11-14 18:50:29,863 INFO L273 TraceCheckUtils]: 111: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:29,863 INFO L273 TraceCheckUtils]: 112: Hoare triple {16621#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {16621#true} is VALID [2018-11-14 18:50:29,863 INFO L273 TraceCheckUtils]: 113: Hoare triple {16621#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16621#true} is VALID [2018-11-14 18:50:29,863 INFO L273 TraceCheckUtils]: 114: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:29,863 INFO L273 TraceCheckUtils]: 115: Hoare triple {16621#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {16621#true} is VALID [2018-11-14 18:50:29,863 INFO L273 TraceCheckUtils]: 116: Hoare triple {16621#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16621#true} is VALID [2018-11-14 18:50:29,863 INFO L273 TraceCheckUtils]: 117: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:29,864 INFO L273 TraceCheckUtils]: 118: Hoare triple {16621#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {16621#true} is VALID [2018-11-14 18:50:29,864 INFO L273 TraceCheckUtils]: 119: Hoare triple {16621#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16621#true} is VALID [2018-11-14 18:50:29,864 INFO L273 TraceCheckUtils]: 120: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:29,864 INFO L273 TraceCheckUtils]: 121: Hoare triple {16621#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {16621#true} is VALID [2018-11-14 18:50:29,864 INFO L273 TraceCheckUtils]: 122: Hoare triple {16621#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16621#true} is VALID [2018-11-14 18:50:29,864 INFO L273 TraceCheckUtils]: 123: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:29,864 INFO L273 TraceCheckUtils]: 124: Hoare triple {16621#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {16621#true} is VALID [2018-11-14 18:50:29,864 INFO L273 TraceCheckUtils]: 125: Hoare triple {16621#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16621#true} is VALID [2018-11-14 18:50:29,864 INFO L273 TraceCheckUtils]: 126: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:29,865 INFO L273 TraceCheckUtils]: 127: Hoare triple {16621#true} assume !(~i~0 < 20); {16621#true} is VALID [2018-11-14 18:50:29,865 INFO L273 TraceCheckUtils]: 128: Hoare triple {16621#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {16621#true} is VALID [2018-11-14 18:50:29,865 INFO L273 TraceCheckUtils]: 129: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:29,865 INFO L268 TraceCheckUtils]: 130: Hoare quadruple {16621#true} {16622#false} #75#return; {16622#false} is VALID [2018-11-14 18:50:29,865 INFO L273 TraceCheckUtils]: 131: Hoare triple {16622#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; {16622#false} is VALID [2018-11-14 18:50:29,865 INFO L273 TraceCheckUtils]: 132: Hoare triple {16622#false} assume true; {16622#false} is VALID [2018-11-14 18:50:29,865 INFO L273 TraceCheckUtils]: 133: Hoare triple {16622#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {16622#false} is VALID [2018-11-14 18:50:29,865 INFO L273 TraceCheckUtils]: 134: Hoare triple {16622#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {16622#false} is VALID [2018-11-14 18:50:29,865 INFO L273 TraceCheckUtils]: 135: Hoare triple {16622#false} assume true; {16622#false} is VALID [2018-11-14 18:50:29,866 INFO L273 TraceCheckUtils]: 136: Hoare triple {16622#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {16622#false} is VALID [2018-11-14 18:50:29,866 INFO L273 TraceCheckUtils]: 137: Hoare triple {16622#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {16622#false} is VALID [2018-11-14 18:50:29,866 INFO L273 TraceCheckUtils]: 138: Hoare triple {16622#false} assume true; {16622#false} is VALID [2018-11-14 18:50:29,866 INFO L273 TraceCheckUtils]: 139: Hoare triple {16622#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {16622#false} is VALID [2018-11-14 18:50:29,866 INFO L273 TraceCheckUtils]: 140: Hoare triple {16622#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {16622#false} is VALID [2018-11-14 18:50:29,866 INFO L273 TraceCheckUtils]: 141: Hoare triple {16622#false} assume true; {16622#false} is VALID [2018-11-14 18:50:29,866 INFO L273 TraceCheckUtils]: 142: Hoare triple {16622#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {16622#false} is VALID [2018-11-14 18:50:29,866 INFO L273 TraceCheckUtils]: 143: Hoare triple {16622#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {16622#false} is VALID [2018-11-14 18:50:29,867 INFO L273 TraceCheckUtils]: 144: Hoare triple {16622#false} assume true; {16622#false} is VALID [2018-11-14 18:50:29,867 INFO L273 TraceCheckUtils]: 145: Hoare triple {16622#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {16622#false} is VALID [2018-11-14 18:50:29,867 INFO L273 TraceCheckUtils]: 146: Hoare triple {16622#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {16622#false} is VALID [2018-11-14 18:50:29,867 INFO L273 TraceCheckUtils]: 147: Hoare triple {16622#false} assume true; {16622#false} is VALID [2018-11-14 18:50:29,867 INFO L273 TraceCheckUtils]: 148: Hoare triple {16622#false} assume !(~i~2 < 19); {16622#false} is VALID [2018-11-14 18:50:29,867 INFO L273 TraceCheckUtils]: 149: Hoare triple {16622#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {16622#false} is VALID [2018-11-14 18:50:29,868 INFO L256 TraceCheckUtils]: 150: Hoare triple {16622#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {16621#true} is VALID [2018-11-14 18:50:29,868 INFO L273 TraceCheckUtils]: 151: Hoare triple {16621#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {16621#true} is VALID [2018-11-14 18:50:29,868 INFO L273 TraceCheckUtils]: 152: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:29,868 INFO L273 TraceCheckUtils]: 153: Hoare triple {16621#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {16621#true} is VALID [2018-11-14 18:50:29,868 INFO L273 TraceCheckUtils]: 154: Hoare triple {16621#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16621#true} is VALID [2018-11-14 18:50:29,868 INFO L273 TraceCheckUtils]: 155: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:29,869 INFO L273 TraceCheckUtils]: 156: Hoare triple {16621#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {16621#true} is VALID [2018-11-14 18:50:29,869 INFO L273 TraceCheckUtils]: 157: Hoare triple {16621#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16621#true} is VALID [2018-11-14 18:50:29,869 INFO L273 TraceCheckUtils]: 158: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:29,869 INFO L273 TraceCheckUtils]: 159: Hoare triple {16621#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {16621#true} is VALID [2018-11-14 18:50:29,869 INFO L273 TraceCheckUtils]: 160: Hoare triple {16621#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16621#true} is VALID [2018-11-14 18:50:29,869 INFO L273 TraceCheckUtils]: 161: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:29,870 INFO L273 TraceCheckUtils]: 162: Hoare triple {16621#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {16621#true} is VALID [2018-11-14 18:50:29,870 INFO L273 TraceCheckUtils]: 163: Hoare triple {16621#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16621#true} is VALID [2018-11-14 18:50:29,870 INFO L273 TraceCheckUtils]: 164: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:29,870 INFO L273 TraceCheckUtils]: 165: Hoare triple {16621#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {16621#true} is VALID [2018-11-14 18:50:29,870 INFO L273 TraceCheckUtils]: 166: Hoare triple {16621#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16621#true} is VALID [2018-11-14 18:50:29,870 INFO L273 TraceCheckUtils]: 167: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:29,870 INFO L273 TraceCheckUtils]: 168: Hoare triple {16621#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {16621#true} is VALID [2018-11-14 18:50:29,871 INFO L273 TraceCheckUtils]: 169: Hoare triple {16621#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16621#true} is VALID [2018-11-14 18:50:29,871 INFO L273 TraceCheckUtils]: 170: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:29,871 INFO L273 TraceCheckUtils]: 171: Hoare triple {16621#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {16621#true} is VALID [2018-11-14 18:50:29,871 INFO L273 TraceCheckUtils]: 172: Hoare triple {16621#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16621#true} is VALID [2018-11-14 18:50:29,871 INFO L273 TraceCheckUtils]: 173: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:29,871 INFO L273 TraceCheckUtils]: 174: Hoare triple {16621#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {16621#true} is VALID [2018-11-14 18:50:29,871 INFO L273 TraceCheckUtils]: 175: Hoare triple {16621#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16621#true} is VALID [2018-11-14 18:50:29,872 INFO L273 TraceCheckUtils]: 176: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:29,872 INFO L273 TraceCheckUtils]: 177: Hoare triple {16621#true} assume !(~i~0 < 20); {16621#true} is VALID [2018-11-14 18:50:29,872 INFO L273 TraceCheckUtils]: 178: Hoare triple {16621#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {16621#true} is VALID [2018-11-14 18:50:29,872 INFO L273 TraceCheckUtils]: 179: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:29,872 INFO L268 TraceCheckUtils]: 180: Hoare quadruple {16621#true} {16622#false} #77#return; {16622#false} is VALID [2018-11-14 18:50:29,872 INFO L273 TraceCheckUtils]: 181: Hoare triple {16622#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {16622#false} is VALID [2018-11-14 18:50:29,873 INFO L273 TraceCheckUtils]: 182: Hoare triple {16622#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {16622#false} is VALID [2018-11-14 18:50:29,873 INFO L273 TraceCheckUtils]: 183: Hoare triple {16622#false} assume !false; {16622#false} is VALID [2018-11-14 18:50:29,914 INFO L134 CoverageAnalysis]: Checked inductivity of 1640 backedges. 0 proven. 558 refuted. 0 times theorem prover too weak. 1082 trivial. 0 not checked. [2018-11-14 18:50:29,914 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:50:29,914 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 23 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 23 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:50:29,926 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-14 18:50:30,003 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 7 check-sat command(s) [2018-11-14 18:50:30,003 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 18:50:30,044 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:50:30,046 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:50:30,272 INFO L256 TraceCheckUtils]: 0: Hoare triple {16621#true} call ULTIMATE.init(); {16621#true} is VALID [2018-11-14 18:50:30,272 INFO L273 TraceCheckUtils]: 1: Hoare triple {16621#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {16621#true} is VALID [2018-11-14 18:50:30,272 INFO L273 TraceCheckUtils]: 2: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:30,272 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {16621#true} {16621#true} #69#return; {16621#true} is VALID [2018-11-14 18:50:30,273 INFO L256 TraceCheckUtils]: 4: Hoare triple {16621#true} call #t~ret12 := main(); {16621#true} is VALID [2018-11-14 18:50:30,273 INFO L273 TraceCheckUtils]: 5: Hoare triple {16621#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {16621#true} is VALID [2018-11-14 18:50:30,273 INFO L273 TraceCheckUtils]: 6: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:30,273 INFO L273 TraceCheckUtils]: 7: Hoare triple {16621#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16621#true} is VALID [2018-11-14 18:50:30,273 INFO L273 TraceCheckUtils]: 8: Hoare triple {16621#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16621#true} is VALID [2018-11-14 18:50:30,273 INFO L273 TraceCheckUtils]: 9: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:30,274 INFO L273 TraceCheckUtils]: 10: Hoare triple {16621#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16621#true} is VALID [2018-11-14 18:50:30,274 INFO L273 TraceCheckUtils]: 11: Hoare triple {16621#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16621#true} is VALID [2018-11-14 18:50:30,274 INFO L273 TraceCheckUtils]: 12: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:30,274 INFO L273 TraceCheckUtils]: 13: Hoare triple {16621#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16621#true} is VALID [2018-11-14 18:50:30,274 INFO L273 TraceCheckUtils]: 14: Hoare triple {16621#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16621#true} is VALID [2018-11-14 18:50:30,274 INFO L273 TraceCheckUtils]: 15: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:30,275 INFO L273 TraceCheckUtils]: 16: Hoare triple {16621#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16621#true} is VALID [2018-11-14 18:50:30,275 INFO L273 TraceCheckUtils]: 17: Hoare triple {16621#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16621#true} is VALID [2018-11-14 18:50:30,275 INFO L273 TraceCheckUtils]: 18: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:30,275 INFO L273 TraceCheckUtils]: 19: Hoare triple {16621#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16621#true} is VALID [2018-11-14 18:50:30,275 INFO L273 TraceCheckUtils]: 20: Hoare triple {16621#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16621#true} is VALID [2018-11-14 18:50:30,275 INFO L273 TraceCheckUtils]: 21: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:30,275 INFO L273 TraceCheckUtils]: 22: Hoare triple {16621#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16621#true} is VALID [2018-11-14 18:50:30,275 INFO L273 TraceCheckUtils]: 23: Hoare triple {16621#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16621#true} is VALID [2018-11-14 18:50:30,275 INFO L273 TraceCheckUtils]: 24: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:30,275 INFO L273 TraceCheckUtils]: 25: Hoare triple {16621#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16621#true} is VALID [2018-11-14 18:50:30,276 INFO L273 TraceCheckUtils]: 26: Hoare triple {16621#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16621#true} is VALID [2018-11-14 18:50:30,276 INFO L273 TraceCheckUtils]: 27: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:30,276 INFO L273 TraceCheckUtils]: 28: Hoare triple {16621#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16621#true} is VALID [2018-11-14 18:50:30,276 INFO L273 TraceCheckUtils]: 29: Hoare triple {16621#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16621#true} is VALID [2018-11-14 18:50:30,276 INFO L273 TraceCheckUtils]: 30: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:30,276 INFO L273 TraceCheckUtils]: 31: Hoare triple {16621#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16621#true} is VALID [2018-11-14 18:50:30,276 INFO L273 TraceCheckUtils]: 32: Hoare triple {16621#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16621#true} is VALID [2018-11-14 18:50:30,276 INFO L273 TraceCheckUtils]: 33: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:30,276 INFO L273 TraceCheckUtils]: 34: Hoare triple {16621#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16621#true} is VALID [2018-11-14 18:50:30,277 INFO L273 TraceCheckUtils]: 35: Hoare triple {16621#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16621#true} is VALID [2018-11-14 18:50:30,277 INFO L273 TraceCheckUtils]: 36: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:30,277 INFO L273 TraceCheckUtils]: 37: Hoare triple {16621#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16621#true} is VALID [2018-11-14 18:50:30,277 INFO L273 TraceCheckUtils]: 38: Hoare triple {16621#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16621#true} is VALID [2018-11-14 18:50:30,277 INFO L273 TraceCheckUtils]: 39: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:30,277 INFO L273 TraceCheckUtils]: 40: Hoare triple {16621#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16621#true} is VALID [2018-11-14 18:50:30,277 INFO L273 TraceCheckUtils]: 41: Hoare triple {16621#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16621#true} is VALID [2018-11-14 18:50:30,277 INFO L273 TraceCheckUtils]: 42: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:30,277 INFO L273 TraceCheckUtils]: 43: Hoare triple {16621#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16621#true} is VALID [2018-11-14 18:50:30,277 INFO L273 TraceCheckUtils]: 44: Hoare triple {16621#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16621#true} is VALID [2018-11-14 18:50:30,278 INFO L273 TraceCheckUtils]: 45: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:30,278 INFO L273 TraceCheckUtils]: 46: Hoare triple {16621#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16621#true} is VALID [2018-11-14 18:50:30,278 INFO L273 TraceCheckUtils]: 47: Hoare triple {16621#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16621#true} is VALID [2018-11-14 18:50:30,278 INFO L273 TraceCheckUtils]: 48: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:30,278 INFO L273 TraceCheckUtils]: 49: Hoare triple {16621#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16621#true} is VALID [2018-11-14 18:50:30,278 INFO L273 TraceCheckUtils]: 50: Hoare triple {16621#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16621#true} is VALID [2018-11-14 18:50:30,278 INFO L273 TraceCheckUtils]: 51: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:30,278 INFO L273 TraceCheckUtils]: 52: Hoare triple {16621#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16621#true} is VALID [2018-11-14 18:50:30,278 INFO L273 TraceCheckUtils]: 53: Hoare triple {16621#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16621#true} is VALID [2018-11-14 18:50:30,279 INFO L273 TraceCheckUtils]: 54: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:30,279 INFO L273 TraceCheckUtils]: 55: Hoare triple {16621#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16621#true} is VALID [2018-11-14 18:50:30,279 INFO L273 TraceCheckUtils]: 56: Hoare triple {16621#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16621#true} is VALID [2018-11-14 18:50:30,279 INFO L273 TraceCheckUtils]: 57: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:30,279 INFO L273 TraceCheckUtils]: 58: Hoare triple {16621#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16621#true} is VALID [2018-11-14 18:50:30,279 INFO L273 TraceCheckUtils]: 59: Hoare triple {16621#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16621#true} is VALID [2018-11-14 18:50:30,279 INFO L273 TraceCheckUtils]: 60: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:30,279 INFO L273 TraceCheckUtils]: 61: Hoare triple {16621#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16621#true} is VALID [2018-11-14 18:50:30,279 INFO L273 TraceCheckUtils]: 62: Hoare triple {16621#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16621#true} is VALID [2018-11-14 18:50:30,280 INFO L273 TraceCheckUtils]: 63: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:30,280 INFO L273 TraceCheckUtils]: 64: Hoare triple {16621#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16621#true} is VALID [2018-11-14 18:50:30,280 INFO L273 TraceCheckUtils]: 65: Hoare triple {16621#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16621#true} is VALID [2018-11-14 18:50:30,280 INFO L273 TraceCheckUtils]: 66: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:30,280 INFO L273 TraceCheckUtils]: 67: Hoare triple {16621#true} assume !(~i~1 < 20); {16621#true} is VALID [2018-11-14 18:50:30,280 INFO L256 TraceCheckUtils]: 68: Hoare triple {16621#true} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {16621#true} is VALID [2018-11-14 18:50:30,280 INFO L273 TraceCheckUtils]: 69: Hoare triple {16621#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {16621#true} is VALID [2018-11-14 18:50:30,280 INFO L273 TraceCheckUtils]: 70: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:30,280 INFO L273 TraceCheckUtils]: 71: Hoare triple {16621#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {16621#true} is VALID [2018-11-14 18:50:30,280 INFO L273 TraceCheckUtils]: 72: Hoare triple {16621#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16621#true} is VALID [2018-11-14 18:50:30,281 INFO L273 TraceCheckUtils]: 73: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:30,281 INFO L273 TraceCheckUtils]: 74: Hoare triple {16621#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {16621#true} is VALID [2018-11-14 18:50:30,281 INFO L273 TraceCheckUtils]: 75: Hoare triple {16621#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16621#true} is VALID [2018-11-14 18:50:30,281 INFO L273 TraceCheckUtils]: 76: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:30,281 INFO L273 TraceCheckUtils]: 77: Hoare triple {16621#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {16621#true} is VALID [2018-11-14 18:50:30,281 INFO L273 TraceCheckUtils]: 78: Hoare triple {16621#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16621#true} is VALID [2018-11-14 18:50:30,281 INFO L273 TraceCheckUtils]: 79: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:30,281 INFO L273 TraceCheckUtils]: 80: Hoare triple {16621#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {16621#true} is VALID [2018-11-14 18:50:30,281 INFO L273 TraceCheckUtils]: 81: Hoare triple {16621#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16621#true} is VALID [2018-11-14 18:50:30,282 INFO L273 TraceCheckUtils]: 82: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:30,282 INFO L273 TraceCheckUtils]: 83: Hoare triple {16621#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {16621#true} is VALID [2018-11-14 18:50:30,282 INFO L273 TraceCheckUtils]: 84: Hoare triple {16621#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16621#true} is VALID [2018-11-14 18:50:30,282 INFO L273 TraceCheckUtils]: 85: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:30,282 INFO L273 TraceCheckUtils]: 86: Hoare triple {16621#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {16621#true} is VALID [2018-11-14 18:50:30,282 INFO L273 TraceCheckUtils]: 87: Hoare triple {16621#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16621#true} is VALID [2018-11-14 18:50:30,282 INFO L273 TraceCheckUtils]: 88: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:30,282 INFO L273 TraceCheckUtils]: 89: Hoare triple {16621#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {16621#true} is VALID [2018-11-14 18:50:30,282 INFO L273 TraceCheckUtils]: 90: Hoare triple {16621#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16621#true} is VALID [2018-11-14 18:50:30,282 INFO L273 TraceCheckUtils]: 91: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:30,283 INFO L273 TraceCheckUtils]: 92: Hoare triple {16621#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {16621#true} is VALID [2018-11-14 18:50:30,283 INFO L273 TraceCheckUtils]: 93: Hoare triple {16621#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16621#true} is VALID [2018-11-14 18:50:30,283 INFO L273 TraceCheckUtils]: 94: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:30,283 INFO L273 TraceCheckUtils]: 95: Hoare triple {16621#true} assume !(~i~0 < 20); {16621#true} is VALID [2018-11-14 18:50:30,283 INFO L273 TraceCheckUtils]: 96: Hoare triple {16621#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {16621#true} is VALID [2018-11-14 18:50:30,283 INFO L273 TraceCheckUtils]: 97: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:30,283 INFO L268 TraceCheckUtils]: 98: Hoare quadruple {16621#true} {16621#true} #73#return; {16621#true} is VALID [2018-11-14 18:50:30,283 INFO L273 TraceCheckUtils]: 99: Hoare triple {16621#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); {16621#true} is VALID [2018-11-14 18:50:30,283 INFO L256 TraceCheckUtils]: 100: Hoare triple {16621#true} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {16621#true} is VALID [2018-11-14 18:50:30,284 INFO L273 TraceCheckUtils]: 101: Hoare triple {16621#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {16621#true} is VALID [2018-11-14 18:50:30,284 INFO L273 TraceCheckUtils]: 102: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:30,284 INFO L273 TraceCheckUtils]: 103: Hoare triple {16621#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {16621#true} is VALID [2018-11-14 18:50:30,284 INFO L273 TraceCheckUtils]: 104: Hoare triple {16621#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16621#true} is VALID [2018-11-14 18:50:30,284 INFO L273 TraceCheckUtils]: 105: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:30,284 INFO L273 TraceCheckUtils]: 106: Hoare triple {16621#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {16621#true} is VALID [2018-11-14 18:50:30,284 INFO L273 TraceCheckUtils]: 107: Hoare triple {16621#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16621#true} is VALID [2018-11-14 18:50:30,284 INFO L273 TraceCheckUtils]: 108: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:30,284 INFO L273 TraceCheckUtils]: 109: Hoare triple {16621#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {16621#true} is VALID [2018-11-14 18:50:30,284 INFO L273 TraceCheckUtils]: 110: Hoare triple {16621#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16621#true} is VALID [2018-11-14 18:50:30,285 INFO L273 TraceCheckUtils]: 111: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:30,285 INFO L273 TraceCheckUtils]: 112: Hoare triple {16621#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {16621#true} is VALID [2018-11-14 18:50:30,285 INFO L273 TraceCheckUtils]: 113: Hoare triple {16621#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16621#true} is VALID [2018-11-14 18:50:30,285 INFO L273 TraceCheckUtils]: 114: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:30,285 INFO L273 TraceCheckUtils]: 115: Hoare triple {16621#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {16621#true} is VALID [2018-11-14 18:50:30,285 INFO L273 TraceCheckUtils]: 116: Hoare triple {16621#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16621#true} is VALID [2018-11-14 18:50:30,285 INFO L273 TraceCheckUtils]: 117: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:30,285 INFO L273 TraceCheckUtils]: 118: Hoare triple {16621#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {16621#true} is VALID [2018-11-14 18:50:30,285 INFO L273 TraceCheckUtils]: 119: Hoare triple {16621#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16621#true} is VALID [2018-11-14 18:50:30,286 INFO L273 TraceCheckUtils]: 120: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:30,286 INFO L273 TraceCheckUtils]: 121: Hoare triple {16621#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {16621#true} is VALID [2018-11-14 18:50:30,286 INFO L273 TraceCheckUtils]: 122: Hoare triple {16621#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16621#true} is VALID [2018-11-14 18:50:30,286 INFO L273 TraceCheckUtils]: 123: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:30,286 INFO L273 TraceCheckUtils]: 124: Hoare triple {16621#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {16621#true} is VALID [2018-11-14 18:50:30,286 INFO L273 TraceCheckUtils]: 125: Hoare triple {16621#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16621#true} is VALID [2018-11-14 18:50:30,286 INFO L273 TraceCheckUtils]: 126: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:30,286 INFO L273 TraceCheckUtils]: 127: Hoare triple {16621#true} assume !(~i~0 < 20); {16621#true} is VALID [2018-11-14 18:50:30,286 INFO L273 TraceCheckUtils]: 128: Hoare triple {16621#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {16621#true} is VALID [2018-11-14 18:50:30,286 INFO L273 TraceCheckUtils]: 129: Hoare triple {16621#true} assume true; {16621#true} is VALID [2018-11-14 18:50:30,287 INFO L268 TraceCheckUtils]: 130: Hoare quadruple {16621#true} {16621#true} #75#return; {16621#true} is VALID [2018-11-14 18:50:30,287 INFO L273 TraceCheckUtils]: 131: Hoare triple {16621#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; {17028#(<= main_~i~2 0)} is VALID [2018-11-14 18:50:30,287 INFO L273 TraceCheckUtils]: 132: Hoare triple {17028#(<= main_~i~2 0)} assume true; {17028#(<= main_~i~2 0)} is VALID [2018-11-14 18:50:30,288 INFO L273 TraceCheckUtils]: 133: Hoare triple {17028#(<= main_~i~2 0)} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {17028#(<= main_~i~2 0)} is VALID [2018-11-14 18:50:30,288 INFO L273 TraceCheckUtils]: 134: Hoare triple {17028#(<= main_~i~2 0)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {17038#(<= main_~i~2 1)} is VALID [2018-11-14 18:50:30,289 INFO L273 TraceCheckUtils]: 135: Hoare triple {17038#(<= main_~i~2 1)} assume true; {17038#(<= main_~i~2 1)} is VALID [2018-11-14 18:50:30,289 INFO L273 TraceCheckUtils]: 136: Hoare triple {17038#(<= main_~i~2 1)} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {17038#(<= main_~i~2 1)} is VALID [2018-11-14 18:50:30,289 INFO L273 TraceCheckUtils]: 137: Hoare triple {17038#(<= main_~i~2 1)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {17048#(<= main_~i~2 2)} is VALID [2018-11-14 18:50:30,290 INFO L273 TraceCheckUtils]: 138: Hoare triple {17048#(<= main_~i~2 2)} assume true; {17048#(<= main_~i~2 2)} is VALID [2018-11-14 18:50:30,290 INFO L273 TraceCheckUtils]: 139: Hoare triple {17048#(<= main_~i~2 2)} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {17048#(<= main_~i~2 2)} is VALID [2018-11-14 18:50:30,290 INFO L273 TraceCheckUtils]: 140: Hoare triple {17048#(<= main_~i~2 2)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {17058#(<= main_~i~2 3)} is VALID [2018-11-14 18:50:30,291 INFO L273 TraceCheckUtils]: 141: Hoare triple {17058#(<= main_~i~2 3)} assume true; {17058#(<= main_~i~2 3)} is VALID [2018-11-14 18:50:30,291 INFO L273 TraceCheckUtils]: 142: Hoare triple {17058#(<= main_~i~2 3)} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {17058#(<= main_~i~2 3)} is VALID [2018-11-14 18:50:30,291 INFO L273 TraceCheckUtils]: 143: Hoare triple {17058#(<= main_~i~2 3)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {17068#(<= main_~i~2 4)} is VALID [2018-11-14 18:50:30,292 INFO L273 TraceCheckUtils]: 144: Hoare triple {17068#(<= main_~i~2 4)} assume true; {17068#(<= main_~i~2 4)} is VALID [2018-11-14 18:50:30,292 INFO L273 TraceCheckUtils]: 145: Hoare triple {17068#(<= main_~i~2 4)} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {17068#(<= main_~i~2 4)} is VALID [2018-11-14 18:50:30,293 INFO L273 TraceCheckUtils]: 146: Hoare triple {17068#(<= main_~i~2 4)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {17078#(<= main_~i~2 5)} is VALID [2018-11-14 18:50:30,294 INFO L273 TraceCheckUtils]: 147: Hoare triple {17078#(<= main_~i~2 5)} assume true; {17078#(<= main_~i~2 5)} is VALID [2018-11-14 18:50:30,294 INFO L273 TraceCheckUtils]: 148: Hoare triple {17078#(<= main_~i~2 5)} assume !(~i~2 < 19); {16622#false} is VALID [2018-11-14 18:50:30,294 INFO L273 TraceCheckUtils]: 149: Hoare triple {16622#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {16622#false} is VALID [2018-11-14 18:50:30,295 INFO L256 TraceCheckUtils]: 150: Hoare triple {16622#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {16622#false} is VALID [2018-11-14 18:50:30,295 INFO L273 TraceCheckUtils]: 151: Hoare triple {16622#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {16622#false} is VALID [2018-11-14 18:50:30,295 INFO L273 TraceCheckUtils]: 152: Hoare triple {16622#false} assume true; {16622#false} is VALID [2018-11-14 18:50:30,295 INFO L273 TraceCheckUtils]: 153: Hoare triple {16622#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {16622#false} is VALID [2018-11-14 18:50:30,295 INFO L273 TraceCheckUtils]: 154: Hoare triple {16622#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16622#false} is VALID [2018-11-14 18:50:30,296 INFO L273 TraceCheckUtils]: 155: Hoare triple {16622#false} assume true; {16622#false} is VALID [2018-11-14 18:50:30,296 INFO L273 TraceCheckUtils]: 156: Hoare triple {16622#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {16622#false} is VALID [2018-11-14 18:50:30,296 INFO L273 TraceCheckUtils]: 157: Hoare triple {16622#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16622#false} is VALID [2018-11-14 18:50:30,296 INFO L273 TraceCheckUtils]: 158: Hoare triple {16622#false} assume true; {16622#false} is VALID [2018-11-14 18:50:30,296 INFO L273 TraceCheckUtils]: 159: Hoare triple {16622#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {16622#false} is VALID [2018-11-14 18:50:30,296 INFO L273 TraceCheckUtils]: 160: Hoare triple {16622#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16622#false} is VALID [2018-11-14 18:50:30,297 INFO L273 TraceCheckUtils]: 161: Hoare triple {16622#false} assume true; {16622#false} is VALID [2018-11-14 18:50:30,297 INFO L273 TraceCheckUtils]: 162: Hoare triple {16622#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {16622#false} is VALID [2018-11-14 18:50:30,297 INFO L273 TraceCheckUtils]: 163: Hoare triple {16622#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16622#false} is VALID [2018-11-14 18:50:30,297 INFO L273 TraceCheckUtils]: 164: Hoare triple {16622#false} assume true; {16622#false} is VALID [2018-11-14 18:50:30,297 INFO L273 TraceCheckUtils]: 165: Hoare triple {16622#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {16622#false} is VALID [2018-11-14 18:50:30,298 INFO L273 TraceCheckUtils]: 166: Hoare triple {16622#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16622#false} is VALID [2018-11-14 18:50:30,298 INFO L273 TraceCheckUtils]: 167: Hoare triple {16622#false} assume true; {16622#false} is VALID [2018-11-14 18:50:30,298 INFO L273 TraceCheckUtils]: 168: Hoare triple {16622#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {16622#false} is VALID [2018-11-14 18:50:30,298 INFO L273 TraceCheckUtils]: 169: Hoare triple {16622#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16622#false} is VALID [2018-11-14 18:50:30,298 INFO L273 TraceCheckUtils]: 170: Hoare triple {16622#false} assume true; {16622#false} is VALID [2018-11-14 18:50:30,298 INFO L273 TraceCheckUtils]: 171: Hoare triple {16622#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {16622#false} is VALID [2018-11-14 18:50:30,299 INFO L273 TraceCheckUtils]: 172: Hoare triple {16622#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16622#false} is VALID [2018-11-14 18:50:30,299 INFO L273 TraceCheckUtils]: 173: Hoare triple {16622#false} assume true; {16622#false} is VALID [2018-11-14 18:50:30,299 INFO L273 TraceCheckUtils]: 174: Hoare triple {16622#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {16622#false} is VALID [2018-11-14 18:50:30,299 INFO L273 TraceCheckUtils]: 175: Hoare triple {16622#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16622#false} is VALID [2018-11-14 18:50:30,299 INFO L273 TraceCheckUtils]: 176: Hoare triple {16622#false} assume true; {16622#false} is VALID [2018-11-14 18:50:30,299 INFO L273 TraceCheckUtils]: 177: Hoare triple {16622#false} assume !(~i~0 < 20); {16622#false} is VALID [2018-11-14 18:50:30,300 INFO L273 TraceCheckUtils]: 178: Hoare triple {16622#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {16622#false} is VALID [2018-11-14 18:50:30,300 INFO L273 TraceCheckUtils]: 179: Hoare triple {16622#false} assume true; {16622#false} is VALID [2018-11-14 18:50:30,300 INFO L268 TraceCheckUtils]: 180: Hoare quadruple {16622#false} {16622#false} #77#return; {16622#false} is VALID [2018-11-14 18:50:30,300 INFO L273 TraceCheckUtils]: 181: Hoare triple {16622#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {16622#false} is VALID [2018-11-14 18:50:30,300 INFO L273 TraceCheckUtils]: 182: Hoare triple {16622#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {16622#false} is VALID [2018-11-14 18:50:30,300 INFO L273 TraceCheckUtils]: 183: Hoare triple {16622#false} assume !false; {16622#false} is VALID [2018-11-14 18:50:30,313 INFO L134 CoverageAnalysis]: Checked inductivity of 1640 backedges. 460 proven. 40 refuted. 0 times theorem prover too weak. 1140 trivial. 0 not checked. [2018-11-14 18:50:30,332 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:50:30,333 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 8] total 17 [2018-11-14 18:50:30,333 INFO L78 Accepts]: Start accepts. Automaton has 17 states. Word has length 184 [2018-11-14 18:50:30,333 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:50:30,334 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states. [2018-11-14 18:50:30,417 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 91 edges. 91 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:50:30,418 INFO L459 AbstractCegarLoop]: Interpolant automaton has 17 states [2018-11-14 18:50:30,418 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2018-11-14 18:50:30,418 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=82, Invalid=190, Unknown=0, NotChecked=0, Total=272 [2018-11-14 18:50:30,419 INFO L87 Difference]: Start difference. First operand 125 states and 129 transitions. Second operand 17 states. [2018-11-14 18:50:30,869 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:30,869 INFO L93 Difference]: Finished difference Result 189 states and 200 transitions. [2018-11-14 18:50:30,869 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2018-11-14 18:50:30,869 INFO L78 Accepts]: Start accepts. Automaton has 17 states. Word has length 184 [2018-11-14 18:50:30,869 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:50:30,869 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 17 states. [2018-11-14 18:50:30,870 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 104 transitions. [2018-11-14 18:50:30,871 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 17 states. [2018-11-14 18:50:30,871 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 104 transitions. [2018-11-14 18:50:30,872 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states and 104 transitions. [2018-11-14 18:50:30,979 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 104 edges. 104 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:50:30,982 INFO L225 Difference]: With dead ends: 189 [2018-11-14 18:50:30,982 INFO L226 Difference]: Without dead ends: 133 [2018-11-14 18:50:30,983 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 194 GetRequests, 179 SyntacticMatches, 0 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 48 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=82, Invalid=190, Unknown=0, NotChecked=0, Total=272 [2018-11-14 18:50:30,983 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 133 states. [2018-11-14 18:50:31,022 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 133 to 131. [2018-11-14 18:50:31,022 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:50:31,023 INFO L82 GeneralOperation]: Start isEquivalent. First operand 133 states. Second operand 131 states. [2018-11-14 18:50:31,023 INFO L74 IsIncluded]: Start isIncluded. First operand 133 states. Second operand 131 states. [2018-11-14 18:50:31,023 INFO L87 Difference]: Start difference. First operand 133 states. Second operand 131 states. [2018-11-14 18:50:31,026 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:31,026 INFO L93 Difference]: Finished difference Result 133 states and 137 transitions. [2018-11-14 18:50:31,026 INFO L276 IsEmpty]: Start isEmpty. Operand 133 states and 137 transitions. [2018-11-14 18:50:31,026 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:50:31,027 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:50:31,027 INFO L74 IsIncluded]: Start isIncluded. First operand 131 states. Second operand 133 states. [2018-11-14 18:50:31,027 INFO L87 Difference]: Start difference. First operand 131 states. Second operand 133 states. [2018-11-14 18:50:31,029 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:31,029 INFO L93 Difference]: Finished difference Result 133 states and 137 transitions. [2018-11-14 18:50:31,029 INFO L276 IsEmpty]: Start isEmpty. Operand 133 states and 137 transitions. [2018-11-14 18:50:31,030 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:50:31,030 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:50:31,030 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:50:31,030 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:50:31,030 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 131 states. [2018-11-14 18:50:31,032 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 131 states to 131 states and 135 transitions. [2018-11-14 18:50:31,033 INFO L78 Accepts]: Start accepts. Automaton has 131 states and 135 transitions. Word has length 184 [2018-11-14 18:50:31,033 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:50:31,033 INFO L480 AbstractCegarLoop]: Abstraction has 131 states and 135 transitions. [2018-11-14 18:50:31,033 INFO L481 AbstractCegarLoop]: Interpolant automaton has 17 states. [2018-11-14 18:50:31,033 INFO L276 IsEmpty]: Start isEmpty. Operand 131 states and 135 transitions. [2018-11-14 18:50:31,034 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 197 [2018-11-14 18:50:31,034 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:50:31,035 INFO L375 BasicCegarLoop]: trace histogram [30, 27, 27, 21, 20, 20, 7, 6, 6, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:50:31,035 INFO L423 AbstractCegarLoop]: === Iteration 26 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:50:31,035 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:50:31,035 INFO L82 PathProgramCache]: Analyzing trace with hash -1138650331, now seen corresponding path program 22 times [2018-11-14 18:50:31,035 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:50:31,036 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:50:31,036 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:50:31,036 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 18:50:31,036 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:50:31,062 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:50:31,376 INFO L256 TraceCheckUtils]: 0: Hoare triple {17885#true} call ULTIMATE.init(); {17885#true} is VALID [2018-11-14 18:50:31,377 INFO L273 TraceCheckUtils]: 1: Hoare triple {17885#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {17885#true} is VALID [2018-11-14 18:50:31,377 INFO L273 TraceCheckUtils]: 2: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,377 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {17885#true} {17885#true} #69#return; {17885#true} is VALID [2018-11-14 18:50:31,377 INFO L256 TraceCheckUtils]: 4: Hoare triple {17885#true} call #t~ret12 := main(); {17885#true} is VALID [2018-11-14 18:50:31,377 INFO L273 TraceCheckUtils]: 5: Hoare triple {17885#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {17885#true} is VALID [2018-11-14 18:50:31,377 INFO L273 TraceCheckUtils]: 6: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,377 INFO L273 TraceCheckUtils]: 7: Hoare triple {17885#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17885#true} is VALID [2018-11-14 18:50:31,378 INFO L273 TraceCheckUtils]: 8: Hoare triple {17885#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17885#true} is VALID [2018-11-14 18:50:31,378 INFO L273 TraceCheckUtils]: 9: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,378 INFO L273 TraceCheckUtils]: 10: Hoare triple {17885#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17885#true} is VALID [2018-11-14 18:50:31,378 INFO L273 TraceCheckUtils]: 11: Hoare triple {17885#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17885#true} is VALID [2018-11-14 18:50:31,378 INFO L273 TraceCheckUtils]: 12: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,378 INFO L273 TraceCheckUtils]: 13: Hoare triple {17885#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17885#true} is VALID [2018-11-14 18:50:31,379 INFO L273 TraceCheckUtils]: 14: Hoare triple {17885#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17885#true} is VALID [2018-11-14 18:50:31,379 INFO L273 TraceCheckUtils]: 15: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,379 INFO L273 TraceCheckUtils]: 16: Hoare triple {17885#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17885#true} is VALID [2018-11-14 18:50:31,379 INFO L273 TraceCheckUtils]: 17: Hoare triple {17885#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17885#true} is VALID [2018-11-14 18:50:31,379 INFO L273 TraceCheckUtils]: 18: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,379 INFO L273 TraceCheckUtils]: 19: Hoare triple {17885#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17885#true} is VALID [2018-11-14 18:50:31,379 INFO L273 TraceCheckUtils]: 20: Hoare triple {17885#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17885#true} is VALID [2018-11-14 18:50:31,379 INFO L273 TraceCheckUtils]: 21: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,379 INFO L273 TraceCheckUtils]: 22: Hoare triple {17885#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17885#true} is VALID [2018-11-14 18:50:31,379 INFO L273 TraceCheckUtils]: 23: Hoare triple {17885#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17885#true} is VALID [2018-11-14 18:50:31,380 INFO L273 TraceCheckUtils]: 24: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,380 INFO L273 TraceCheckUtils]: 25: Hoare triple {17885#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17885#true} is VALID [2018-11-14 18:50:31,380 INFO L273 TraceCheckUtils]: 26: Hoare triple {17885#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17885#true} is VALID [2018-11-14 18:50:31,380 INFO L273 TraceCheckUtils]: 27: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,380 INFO L273 TraceCheckUtils]: 28: Hoare triple {17885#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17885#true} is VALID [2018-11-14 18:50:31,380 INFO L273 TraceCheckUtils]: 29: Hoare triple {17885#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17885#true} is VALID [2018-11-14 18:50:31,380 INFO L273 TraceCheckUtils]: 30: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,380 INFO L273 TraceCheckUtils]: 31: Hoare triple {17885#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17885#true} is VALID [2018-11-14 18:50:31,380 INFO L273 TraceCheckUtils]: 32: Hoare triple {17885#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17885#true} is VALID [2018-11-14 18:50:31,381 INFO L273 TraceCheckUtils]: 33: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,381 INFO L273 TraceCheckUtils]: 34: Hoare triple {17885#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17885#true} is VALID [2018-11-14 18:50:31,381 INFO L273 TraceCheckUtils]: 35: Hoare triple {17885#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17885#true} is VALID [2018-11-14 18:50:31,381 INFO L273 TraceCheckUtils]: 36: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,381 INFO L273 TraceCheckUtils]: 37: Hoare triple {17885#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17885#true} is VALID [2018-11-14 18:50:31,381 INFO L273 TraceCheckUtils]: 38: Hoare triple {17885#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17885#true} is VALID [2018-11-14 18:50:31,381 INFO L273 TraceCheckUtils]: 39: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,381 INFO L273 TraceCheckUtils]: 40: Hoare triple {17885#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17885#true} is VALID [2018-11-14 18:50:31,381 INFO L273 TraceCheckUtils]: 41: Hoare triple {17885#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17885#true} is VALID [2018-11-14 18:50:31,381 INFO L273 TraceCheckUtils]: 42: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,382 INFO L273 TraceCheckUtils]: 43: Hoare triple {17885#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17885#true} is VALID [2018-11-14 18:50:31,382 INFO L273 TraceCheckUtils]: 44: Hoare triple {17885#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17885#true} is VALID [2018-11-14 18:50:31,382 INFO L273 TraceCheckUtils]: 45: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,382 INFO L273 TraceCheckUtils]: 46: Hoare triple {17885#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17885#true} is VALID [2018-11-14 18:50:31,382 INFO L273 TraceCheckUtils]: 47: Hoare triple {17885#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17885#true} is VALID [2018-11-14 18:50:31,382 INFO L273 TraceCheckUtils]: 48: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,382 INFO L273 TraceCheckUtils]: 49: Hoare triple {17885#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17885#true} is VALID [2018-11-14 18:50:31,382 INFO L273 TraceCheckUtils]: 50: Hoare triple {17885#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17885#true} is VALID [2018-11-14 18:50:31,382 INFO L273 TraceCheckUtils]: 51: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,383 INFO L273 TraceCheckUtils]: 52: Hoare triple {17885#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17885#true} is VALID [2018-11-14 18:50:31,383 INFO L273 TraceCheckUtils]: 53: Hoare triple {17885#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17885#true} is VALID [2018-11-14 18:50:31,383 INFO L273 TraceCheckUtils]: 54: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,383 INFO L273 TraceCheckUtils]: 55: Hoare triple {17885#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17885#true} is VALID [2018-11-14 18:50:31,383 INFO L273 TraceCheckUtils]: 56: Hoare triple {17885#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17885#true} is VALID [2018-11-14 18:50:31,383 INFO L273 TraceCheckUtils]: 57: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,383 INFO L273 TraceCheckUtils]: 58: Hoare triple {17885#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17885#true} is VALID [2018-11-14 18:50:31,383 INFO L273 TraceCheckUtils]: 59: Hoare triple {17885#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17885#true} is VALID [2018-11-14 18:50:31,383 INFO L273 TraceCheckUtils]: 60: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,383 INFO L273 TraceCheckUtils]: 61: Hoare triple {17885#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17885#true} is VALID [2018-11-14 18:50:31,384 INFO L273 TraceCheckUtils]: 62: Hoare triple {17885#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17885#true} is VALID [2018-11-14 18:50:31,384 INFO L273 TraceCheckUtils]: 63: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,384 INFO L273 TraceCheckUtils]: 64: Hoare triple {17885#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17885#true} is VALID [2018-11-14 18:50:31,384 INFO L273 TraceCheckUtils]: 65: Hoare triple {17885#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17885#true} is VALID [2018-11-14 18:50:31,384 INFO L273 TraceCheckUtils]: 66: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,384 INFO L273 TraceCheckUtils]: 67: Hoare triple {17885#true} assume !(~i~1 < 20); {17885#true} is VALID [2018-11-14 18:50:31,384 INFO L256 TraceCheckUtils]: 68: Hoare triple {17885#true} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {17885#true} is VALID [2018-11-14 18:50:31,384 INFO L273 TraceCheckUtils]: 69: Hoare triple {17885#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {17887#(= avg_~i~0 0)} is VALID [2018-11-14 18:50:31,385 INFO L273 TraceCheckUtils]: 70: Hoare triple {17887#(= avg_~i~0 0)} assume true; {17887#(= avg_~i~0 0)} is VALID [2018-11-14 18:50:31,385 INFO L273 TraceCheckUtils]: 71: Hoare triple {17887#(= avg_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17887#(= avg_~i~0 0)} is VALID [2018-11-14 18:50:31,385 INFO L273 TraceCheckUtils]: 72: Hoare triple {17887#(= avg_~i~0 0)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17888#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:31,386 INFO L273 TraceCheckUtils]: 73: Hoare triple {17888#(<= avg_~i~0 1)} assume true; {17888#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:31,386 INFO L273 TraceCheckUtils]: 74: Hoare triple {17888#(<= avg_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17888#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:31,386 INFO L273 TraceCheckUtils]: 75: Hoare triple {17888#(<= avg_~i~0 1)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17889#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:31,387 INFO L273 TraceCheckUtils]: 76: Hoare triple {17889#(<= avg_~i~0 2)} assume true; {17889#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:31,387 INFO L273 TraceCheckUtils]: 77: Hoare triple {17889#(<= avg_~i~0 2)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17889#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:31,387 INFO L273 TraceCheckUtils]: 78: Hoare triple {17889#(<= avg_~i~0 2)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17890#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:31,388 INFO L273 TraceCheckUtils]: 79: Hoare triple {17890#(<= avg_~i~0 3)} assume true; {17890#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:31,388 INFO L273 TraceCheckUtils]: 80: Hoare triple {17890#(<= avg_~i~0 3)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17890#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:31,389 INFO L273 TraceCheckUtils]: 81: Hoare triple {17890#(<= avg_~i~0 3)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17891#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:31,389 INFO L273 TraceCheckUtils]: 82: Hoare triple {17891#(<= avg_~i~0 4)} assume true; {17891#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:31,390 INFO L273 TraceCheckUtils]: 83: Hoare triple {17891#(<= avg_~i~0 4)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17891#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:31,390 INFO L273 TraceCheckUtils]: 84: Hoare triple {17891#(<= avg_~i~0 4)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17892#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:31,391 INFO L273 TraceCheckUtils]: 85: Hoare triple {17892#(<= avg_~i~0 5)} assume true; {17892#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:31,391 INFO L273 TraceCheckUtils]: 86: Hoare triple {17892#(<= avg_~i~0 5)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17892#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:31,392 INFO L273 TraceCheckUtils]: 87: Hoare triple {17892#(<= avg_~i~0 5)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17893#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:31,392 INFO L273 TraceCheckUtils]: 88: Hoare triple {17893#(<= avg_~i~0 6)} assume true; {17893#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:31,393 INFO L273 TraceCheckUtils]: 89: Hoare triple {17893#(<= avg_~i~0 6)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17893#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:31,394 INFO L273 TraceCheckUtils]: 90: Hoare triple {17893#(<= avg_~i~0 6)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17894#(<= avg_~i~0 7)} is VALID [2018-11-14 18:50:31,394 INFO L273 TraceCheckUtils]: 91: Hoare triple {17894#(<= avg_~i~0 7)} assume true; {17894#(<= avg_~i~0 7)} is VALID [2018-11-14 18:50:31,395 INFO L273 TraceCheckUtils]: 92: Hoare triple {17894#(<= avg_~i~0 7)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17894#(<= avg_~i~0 7)} is VALID [2018-11-14 18:50:31,395 INFO L273 TraceCheckUtils]: 93: Hoare triple {17894#(<= avg_~i~0 7)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17895#(<= avg_~i~0 8)} is VALID [2018-11-14 18:50:31,396 INFO L273 TraceCheckUtils]: 94: Hoare triple {17895#(<= avg_~i~0 8)} assume true; {17895#(<= avg_~i~0 8)} is VALID [2018-11-14 18:50:31,396 INFO L273 TraceCheckUtils]: 95: Hoare triple {17895#(<= avg_~i~0 8)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17895#(<= avg_~i~0 8)} is VALID [2018-11-14 18:50:31,397 INFO L273 TraceCheckUtils]: 96: Hoare triple {17895#(<= avg_~i~0 8)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17896#(<= avg_~i~0 9)} is VALID [2018-11-14 18:50:31,398 INFO L273 TraceCheckUtils]: 97: Hoare triple {17896#(<= avg_~i~0 9)} assume true; {17896#(<= avg_~i~0 9)} is VALID [2018-11-14 18:50:31,398 INFO L273 TraceCheckUtils]: 98: Hoare triple {17896#(<= avg_~i~0 9)} assume !(~i~0 < 20); {17886#false} is VALID [2018-11-14 18:50:31,399 INFO L273 TraceCheckUtils]: 99: Hoare triple {17886#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {17886#false} is VALID [2018-11-14 18:50:31,399 INFO L273 TraceCheckUtils]: 100: Hoare triple {17886#false} assume true; {17886#false} is VALID [2018-11-14 18:50:31,399 INFO L268 TraceCheckUtils]: 101: Hoare quadruple {17886#false} {17885#true} #73#return; {17886#false} is VALID [2018-11-14 18:50:31,399 INFO L273 TraceCheckUtils]: 102: Hoare triple {17886#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); {17886#false} is VALID [2018-11-14 18:50:31,399 INFO L256 TraceCheckUtils]: 103: Hoare triple {17886#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {17885#true} is VALID [2018-11-14 18:50:31,399 INFO L273 TraceCheckUtils]: 104: Hoare triple {17885#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {17885#true} is VALID [2018-11-14 18:50:31,400 INFO L273 TraceCheckUtils]: 105: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,400 INFO L273 TraceCheckUtils]: 106: Hoare triple {17885#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17885#true} is VALID [2018-11-14 18:50:31,400 INFO L273 TraceCheckUtils]: 107: Hoare triple {17885#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17885#true} is VALID [2018-11-14 18:50:31,400 INFO L273 TraceCheckUtils]: 108: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,400 INFO L273 TraceCheckUtils]: 109: Hoare triple {17885#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17885#true} is VALID [2018-11-14 18:50:31,400 INFO L273 TraceCheckUtils]: 110: Hoare triple {17885#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17885#true} is VALID [2018-11-14 18:50:31,401 INFO L273 TraceCheckUtils]: 111: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,401 INFO L273 TraceCheckUtils]: 112: Hoare triple {17885#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17885#true} is VALID [2018-11-14 18:50:31,401 INFO L273 TraceCheckUtils]: 113: Hoare triple {17885#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17885#true} is VALID [2018-11-14 18:50:31,401 INFO L273 TraceCheckUtils]: 114: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,401 INFO L273 TraceCheckUtils]: 115: Hoare triple {17885#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17885#true} is VALID [2018-11-14 18:50:31,401 INFO L273 TraceCheckUtils]: 116: Hoare triple {17885#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17885#true} is VALID [2018-11-14 18:50:31,401 INFO L273 TraceCheckUtils]: 117: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,401 INFO L273 TraceCheckUtils]: 118: Hoare triple {17885#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17885#true} is VALID [2018-11-14 18:50:31,401 INFO L273 TraceCheckUtils]: 119: Hoare triple {17885#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17885#true} is VALID [2018-11-14 18:50:31,402 INFO L273 TraceCheckUtils]: 120: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,402 INFO L273 TraceCheckUtils]: 121: Hoare triple {17885#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17885#true} is VALID [2018-11-14 18:50:31,402 INFO L273 TraceCheckUtils]: 122: Hoare triple {17885#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17885#true} is VALID [2018-11-14 18:50:31,402 INFO L273 TraceCheckUtils]: 123: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,402 INFO L273 TraceCheckUtils]: 124: Hoare triple {17885#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17885#true} is VALID [2018-11-14 18:50:31,402 INFO L273 TraceCheckUtils]: 125: Hoare triple {17885#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17885#true} is VALID [2018-11-14 18:50:31,402 INFO L273 TraceCheckUtils]: 126: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,402 INFO L273 TraceCheckUtils]: 127: Hoare triple {17885#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17885#true} is VALID [2018-11-14 18:50:31,402 INFO L273 TraceCheckUtils]: 128: Hoare triple {17885#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17885#true} is VALID [2018-11-14 18:50:31,402 INFO L273 TraceCheckUtils]: 129: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,403 INFO L273 TraceCheckUtils]: 130: Hoare triple {17885#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17885#true} is VALID [2018-11-14 18:50:31,403 INFO L273 TraceCheckUtils]: 131: Hoare triple {17885#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17885#true} is VALID [2018-11-14 18:50:31,403 INFO L273 TraceCheckUtils]: 132: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,403 INFO L273 TraceCheckUtils]: 133: Hoare triple {17885#true} assume !(~i~0 < 20); {17885#true} is VALID [2018-11-14 18:50:31,403 INFO L273 TraceCheckUtils]: 134: Hoare triple {17885#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {17885#true} is VALID [2018-11-14 18:50:31,403 INFO L273 TraceCheckUtils]: 135: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,403 INFO L268 TraceCheckUtils]: 136: Hoare quadruple {17885#true} {17886#false} #75#return; {17886#false} is VALID [2018-11-14 18:50:31,403 INFO L273 TraceCheckUtils]: 137: Hoare triple {17886#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; {17886#false} is VALID [2018-11-14 18:50:31,403 INFO L273 TraceCheckUtils]: 138: Hoare triple {17886#false} assume true; {17886#false} is VALID [2018-11-14 18:50:31,403 INFO L273 TraceCheckUtils]: 139: Hoare triple {17886#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {17886#false} is VALID [2018-11-14 18:50:31,404 INFO L273 TraceCheckUtils]: 140: Hoare triple {17886#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {17886#false} is VALID [2018-11-14 18:50:31,404 INFO L273 TraceCheckUtils]: 141: Hoare triple {17886#false} assume true; {17886#false} is VALID [2018-11-14 18:50:31,404 INFO L273 TraceCheckUtils]: 142: Hoare triple {17886#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {17886#false} is VALID [2018-11-14 18:50:31,404 INFO L273 TraceCheckUtils]: 143: Hoare triple {17886#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {17886#false} is VALID [2018-11-14 18:50:31,404 INFO L273 TraceCheckUtils]: 144: Hoare triple {17886#false} assume true; {17886#false} is VALID [2018-11-14 18:50:31,404 INFO L273 TraceCheckUtils]: 145: Hoare triple {17886#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {17886#false} is VALID [2018-11-14 18:50:31,404 INFO L273 TraceCheckUtils]: 146: Hoare triple {17886#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {17886#false} is VALID [2018-11-14 18:50:31,404 INFO L273 TraceCheckUtils]: 147: Hoare triple {17886#false} assume true; {17886#false} is VALID [2018-11-14 18:50:31,404 INFO L273 TraceCheckUtils]: 148: Hoare triple {17886#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {17886#false} is VALID [2018-11-14 18:50:31,405 INFO L273 TraceCheckUtils]: 149: Hoare triple {17886#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {17886#false} is VALID [2018-11-14 18:50:31,405 INFO L273 TraceCheckUtils]: 150: Hoare triple {17886#false} assume true; {17886#false} is VALID [2018-11-14 18:50:31,405 INFO L273 TraceCheckUtils]: 151: Hoare triple {17886#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {17886#false} is VALID [2018-11-14 18:50:31,405 INFO L273 TraceCheckUtils]: 152: Hoare triple {17886#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {17886#false} is VALID [2018-11-14 18:50:31,405 INFO L273 TraceCheckUtils]: 153: Hoare triple {17886#false} assume true; {17886#false} is VALID [2018-11-14 18:50:31,405 INFO L273 TraceCheckUtils]: 154: Hoare triple {17886#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {17886#false} is VALID [2018-11-14 18:50:31,405 INFO L273 TraceCheckUtils]: 155: Hoare triple {17886#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {17886#false} is VALID [2018-11-14 18:50:31,405 INFO L273 TraceCheckUtils]: 156: Hoare triple {17886#false} assume true; {17886#false} is VALID [2018-11-14 18:50:31,405 INFO L273 TraceCheckUtils]: 157: Hoare triple {17886#false} assume !(~i~2 < 19); {17886#false} is VALID [2018-11-14 18:50:31,405 INFO L273 TraceCheckUtils]: 158: Hoare triple {17886#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {17886#false} is VALID [2018-11-14 18:50:31,406 INFO L256 TraceCheckUtils]: 159: Hoare triple {17886#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {17885#true} is VALID [2018-11-14 18:50:31,406 INFO L273 TraceCheckUtils]: 160: Hoare triple {17885#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {17885#true} is VALID [2018-11-14 18:50:31,406 INFO L273 TraceCheckUtils]: 161: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,406 INFO L273 TraceCheckUtils]: 162: Hoare triple {17885#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17885#true} is VALID [2018-11-14 18:50:31,406 INFO L273 TraceCheckUtils]: 163: Hoare triple {17885#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17885#true} is VALID [2018-11-14 18:50:31,406 INFO L273 TraceCheckUtils]: 164: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,406 INFO L273 TraceCheckUtils]: 165: Hoare triple {17885#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17885#true} is VALID [2018-11-14 18:50:31,406 INFO L273 TraceCheckUtils]: 166: Hoare triple {17885#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17885#true} is VALID [2018-11-14 18:50:31,406 INFO L273 TraceCheckUtils]: 167: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,407 INFO L273 TraceCheckUtils]: 168: Hoare triple {17885#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17885#true} is VALID [2018-11-14 18:50:31,407 INFO L273 TraceCheckUtils]: 169: Hoare triple {17885#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17885#true} is VALID [2018-11-14 18:50:31,407 INFO L273 TraceCheckUtils]: 170: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,407 INFO L273 TraceCheckUtils]: 171: Hoare triple {17885#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17885#true} is VALID [2018-11-14 18:50:31,407 INFO L273 TraceCheckUtils]: 172: Hoare triple {17885#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17885#true} is VALID [2018-11-14 18:50:31,407 INFO L273 TraceCheckUtils]: 173: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,407 INFO L273 TraceCheckUtils]: 174: Hoare triple {17885#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17885#true} is VALID [2018-11-14 18:50:31,407 INFO L273 TraceCheckUtils]: 175: Hoare triple {17885#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17885#true} is VALID [2018-11-14 18:50:31,407 INFO L273 TraceCheckUtils]: 176: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,407 INFO L273 TraceCheckUtils]: 177: Hoare triple {17885#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17885#true} is VALID [2018-11-14 18:50:31,408 INFO L273 TraceCheckUtils]: 178: Hoare triple {17885#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17885#true} is VALID [2018-11-14 18:50:31,408 INFO L273 TraceCheckUtils]: 179: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,408 INFO L273 TraceCheckUtils]: 180: Hoare triple {17885#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17885#true} is VALID [2018-11-14 18:50:31,408 INFO L273 TraceCheckUtils]: 181: Hoare triple {17885#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17885#true} is VALID [2018-11-14 18:50:31,408 INFO L273 TraceCheckUtils]: 182: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,408 INFO L273 TraceCheckUtils]: 183: Hoare triple {17885#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17885#true} is VALID [2018-11-14 18:50:31,408 INFO L273 TraceCheckUtils]: 184: Hoare triple {17885#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17885#true} is VALID [2018-11-14 18:50:31,408 INFO L273 TraceCheckUtils]: 185: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,408 INFO L273 TraceCheckUtils]: 186: Hoare triple {17885#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17885#true} is VALID [2018-11-14 18:50:31,409 INFO L273 TraceCheckUtils]: 187: Hoare triple {17885#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17885#true} is VALID [2018-11-14 18:50:31,409 INFO L273 TraceCheckUtils]: 188: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,409 INFO L273 TraceCheckUtils]: 189: Hoare triple {17885#true} assume !(~i~0 < 20); {17885#true} is VALID [2018-11-14 18:50:31,409 INFO L273 TraceCheckUtils]: 190: Hoare triple {17885#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {17885#true} is VALID [2018-11-14 18:50:31,409 INFO L273 TraceCheckUtils]: 191: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,409 INFO L268 TraceCheckUtils]: 192: Hoare quadruple {17885#true} {17886#false} #77#return; {17886#false} is VALID [2018-11-14 18:50:31,409 INFO L273 TraceCheckUtils]: 193: Hoare triple {17886#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {17886#false} is VALID [2018-11-14 18:50:31,409 INFO L273 TraceCheckUtils]: 194: Hoare triple {17886#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {17886#false} is VALID [2018-11-14 18:50:31,409 INFO L273 TraceCheckUtils]: 195: Hoare triple {17886#false} assume !false; {17886#false} is VALID [2018-11-14 18:50:31,423 INFO L134 CoverageAnalysis]: Checked inductivity of 1900 backedges. 0 proven. 694 refuted. 0 times theorem prover too weak. 1206 trivial. 0 not checked. [2018-11-14 18:50:31,424 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:50:31,424 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 24 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 24 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:50:31,433 INFO L103 rtionOrderModulation]: Keeping assertion order TERMS_WITH_SMALL_CONSTANTS_FIRST [2018-11-14 18:50:31,502 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2018-11-14 18:50:31,502 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 18:50:31,544 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:50:31,545 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:50:31,722 INFO L256 TraceCheckUtils]: 0: Hoare triple {17885#true} call ULTIMATE.init(); {17885#true} is VALID [2018-11-14 18:50:31,723 INFO L273 TraceCheckUtils]: 1: Hoare triple {17885#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {17885#true} is VALID [2018-11-14 18:50:31,723 INFO L273 TraceCheckUtils]: 2: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,723 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {17885#true} {17885#true} #69#return; {17885#true} is VALID [2018-11-14 18:50:31,723 INFO L256 TraceCheckUtils]: 4: Hoare triple {17885#true} call #t~ret12 := main(); {17885#true} is VALID [2018-11-14 18:50:31,724 INFO L273 TraceCheckUtils]: 5: Hoare triple {17885#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {17885#true} is VALID [2018-11-14 18:50:31,724 INFO L273 TraceCheckUtils]: 6: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,724 INFO L273 TraceCheckUtils]: 7: Hoare triple {17885#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17885#true} is VALID [2018-11-14 18:50:31,724 INFO L273 TraceCheckUtils]: 8: Hoare triple {17885#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17885#true} is VALID [2018-11-14 18:50:31,724 INFO L273 TraceCheckUtils]: 9: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,725 INFO L273 TraceCheckUtils]: 10: Hoare triple {17885#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17885#true} is VALID [2018-11-14 18:50:31,725 INFO L273 TraceCheckUtils]: 11: Hoare triple {17885#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17885#true} is VALID [2018-11-14 18:50:31,725 INFO L273 TraceCheckUtils]: 12: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,725 INFO L273 TraceCheckUtils]: 13: Hoare triple {17885#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17885#true} is VALID [2018-11-14 18:50:31,725 INFO L273 TraceCheckUtils]: 14: Hoare triple {17885#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17885#true} is VALID [2018-11-14 18:50:31,725 INFO L273 TraceCheckUtils]: 15: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,725 INFO L273 TraceCheckUtils]: 16: Hoare triple {17885#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17885#true} is VALID [2018-11-14 18:50:31,725 INFO L273 TraceCheckUtils]: 17: Hoare triple {17885#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17885#true} is VALID [2018-11-14 18:50:31,726 INFO L273 TraceCheckUtils]: 18: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,726 INFO L273 TraceCheckUtils]: 19: Hoare triple {17885#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17885#true} is VALID [2018-11-14 18:50:31,726 INFO L273 TraceCheckUtils]: 20: Hoare triple {17885#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17885#true} is VALID [2018-11-14 18:50:31,726 INFO L273 TraceCheckUtils]: 21: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,726 INFO L273 TraceCheckUtils]: 22: Hoare triple {17885#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17885#true} is VALID [2018-11-14 18:50:31,726 INFO L273 TraceCheckUtils]: 23: Hoare triple {17885#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17885#true} is VALID [2018-11-14 18:50:31,726 INFO L273 TraceCheckUtils]: 24: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,726 INFO L273 TraceCheckUtils]: 25: Hoare triple {17885#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17885#true} is VALID [2018-11-14 18:50:31,726 INFO L273 TraceCheckUtils]: 26: Hoare triple {17885#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17885#true} is VALID [2018-11-14 18:50:31,726 INFO L273 TraceCheckUtils]: 27: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,727 INFO L273 TraceCheckUtils]: 28: Hoare triple {17885#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17885#true} is VALID [2018-11-14 18:50:31,727 INFO L273 TraceCheckUtils]: 29: Hoare triple {17885#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17885#true} is VALID [2018-11-14 18:50:31,727 INFO L273 TraceCheckUtils]: 30: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,727 INFO L273 TraceCheckUtils]: 31: Hoare triple {17885#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17885#true} is VALID [2018-11-14 18:50:31,727 INFO L273 TraceCheckUtils]: 32: Hoare triple {17885#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17885#true} is VALID [2018-11-14 18:50:31,727 INFO L273 TraceCheckUtils]: 33: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,727 INFO L273 TraceCheckUtils]: 34: Hoare triple {17885#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17885#true} is VALID [2018-11-14 18:50:31,727 INFO L273 TraceCheckUtils]: 35: Hoare triple {17885#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17885#true} is VALID [2018-11-14 18:50:31,727 INFO L273 TraceCheckUtils]: 36: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,728 INFO L273 TraceCheckUtils]: 37: Hoare triple {17885#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17885#true} is VALID [2018-11-14 18:50:31,728 INFO L273 TraceCheckUtils]: 38: Hoare triple {17885#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17885#true} is VALID [2018-11-14 18:50:31,728 INFO L273 TraceCheckUtils]: 39: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,728 INFO L273 TraceCheckUtils]: 40: Hoare triple {17885#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17885#true} is VALID [2018-11-14 18:50:31,728 INFO L273 TraceCheckUtils]: 41: Hoare triple {17885#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17885#true} is VALID [2018-11-14 18:50:31,728 INFO L273 TraceCheckUtils]: 42: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,728 INFO L273 TraceCheckUtils]: 43: Hoare triple {17885#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17885#true} is VALID [2018-11-14 18:50:31,728 INFO L273 TraceCheckUtils]: 44: Hoare triple {17885#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17885#true} is VALID [2018-11-14 18:50:31,728 INFO L273 TraceCheckUtils]: 45: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,728 INFO L273 TraceCheckUtils]: 46: Hoare triple {17885#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17885#true} is VALID [2018-11-14 18:50:31,729 INFO L273 TraceCheckUtils]: 47: Hoare triple {17885#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17885#true} is VALID [2018-11-14 18:50:31,729 INFO L273 TraceCheckUtils]: 48: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,729 INFO L273 TraceCheckUtils]: 49: Hoare triple {17885#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17885#true} is VALID [2018-11-14 18:50:31,729 INFO L273 TraceCheckUtils]: 50: Hoare triple {17885#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17885#true} is VALID [2018-11-14 18:50:31,729 INFO L273 TraceCheckUtils]: 51: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,729 INFO L273 TraceCheckUtils]: 52: Hoare triple {17885#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17885#true} is VALID [2018-11-14 18:50:31,729 INFO L273 TraceCheckUtils]: 53: Hoare triple {17885#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17885#true} is VALID [2018-11-14 18:50:31,729 INFO L273 TraceCheckUtils]: 54: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,729 INFO L273 TraceCheckUtils]: 55: Hoare triple {17885#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17885#true} is VALID [2018-11-14 18:50:31,729 INFO L273 TraceCheckUtils]: 56: Hoare triple {17885#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17885#true} is VALID [2018-11-14 18:50:31,730 INFO L273 TraceCheckUtils]: 57: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,730 INFO L273 TraceCheckUtils]: 58: Hoare triple {17885#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17885#true} is VALID [2018-11-14 18:50:31,730 INFO L273 TraceCheckUtils]: 59: Hoare triple {17885#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17885#true} is VALID [2018-11-14 18:50:31,730 INFO L273 TraceCheckUtils]: 60: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,730 INFO L273 TraceCheckUtils]: 61: Hoare triple {17885#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17885#true} is VALID [2018-11-14 18:50:31,730 INFO L273 TraceCheckUtils]: 62: Hoare triple {17885#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17885#true} is VALID [2018-11-14 18:50:31,730 INFO L273 TraceCheckUtils]: 63: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,730 INFO L273 TraceCheckUtils]: 64: Hoare triple {17885#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17885#true} is VALID [2018-11-14 18:50:31,730 INFO L273 TraceCheckUtils]: 65: Hoare triple {17885#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17885#true} is VALID [2018-11-14 18:50:31,731 INFO L273 TraceCheckUtils]: 66: Hoare triple {17885#true} assume true; {17885#true} is VALID [2018-11-14 18:50:31,731 INFO L273 TraceCheckUtils]: 67: Hoare triple {17885#true} assume !(~i~1 < 20); {17885#true} is VALID [2018-11-14 18:50:31,731 INFO L256 TraceCheckUtils]: 68: Hoare triple {17885#true} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {17885#true} is VALID [2018-11-14 18:50:31,731 INFO L273 TraceCheckUtils]: 69: Hoare triple {17885#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {18107#(<= avg_~i~0 0)} is VALID [2018-11-14 18:50:31,731 INFO L273 TraceCheckUtils]: 70: Hoare triple {18107#(<= avg_~i~0 0)} assume true; {18107#(<= avg_~i~0 0)} is VALID [2018-11-14 18:50:31,732 INFO L273 TraceCheckUtils]: 71: Hoare triple {18107#(<= avg_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {18107#(<= avg_~i~0 0)} is VALID [2018-11-14 18:50:31,732 INFO L273 TraceCheckUtils]: 72: Hoare triple {18107#(<= avg_~i~0 0)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17888#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:31,733 INFO L273 TraceCheckUtils]: 73: Hoare triple {17888#(<= avg_~i~0 1)} assume true; {17888#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:31,733 INFO L273 TraceCheckUtils]: 74: Hoare triple {17888#(<= avg_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17888#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:31,733 INFO L273 TraceCheckUtils]: 75: Hoare triple {17888#(<= avg_~i~0 1)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17889#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:31,734 INFO L273 TraceCheckUtils]: 76: Hoare triple {17889#(<= avg_~i~0 2)} assume true; {17889#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:31,734 INFO L273 TraceCheckUtils]: 77: Hoare triple {17889#(<= avg_~i~0 2)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17889#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:31,734 INFO L273 TraceCheckUtils]: 78: Hoare triple {17889#(<= avg_~i~0 2)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17890#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:31,735 INFO L273 TraceCheckUtils]: 79: Hoare triple {17890#(<= avg_~i~0 3)} assume true; {17890#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:31,735 INFO L273 TraceCheckUtils]: 80: Hoare triple {17890#(<= avg_~i~0 3)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17890#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:31,735 INFO L273 TraceCheckUtils]: 81: Hoare triple {17890#(<= avg_~i~0 3)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17891#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:31,736 INFO L273 TraceCheckUtils]: 82: Hoare triple {17891#(<= avg_~i~0 4)} assume true; {17891#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:31,736 INFO L273 TraceCheckUtils]: 83: Hoare triple {17891#(<= avg_~i~0 4)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17891#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:31,737 INFO L273 TraceCheckUtils]: 84: Hoare triple {17891#(<= avg_~i~0 4)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17892#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:31,738 INFO L273 TraceCheckUtils]: 85: Hoare triple {17892#(<= avg_~i~0 5)} assume true; {17892#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:31,738 INFO L273 TraceCheckUtils]: 86: Hoare triple {17892#(<= avg_~i~0 5)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17892#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:31,739 INFO L273 TraceCheckUtils]: 87: Hoare triple {17892#(<= avg_~i~0 5)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17893#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:31,739 INFO L273 TraceCheckUtils]: 88: Hoare triple {17893#(<= avg_~i~0 6)} assume true; {17893#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:31,740 INFO L273 TraceCheckUtils]: 89: Hoare triple {17893#(<= avg_~i~0 6)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17893#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:31,741 INFO L273 TraceCheckUtils]: 90: Hoare triple {17893#(<= avg_~i~0 6)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17894#(<= avg_~i~0 7)} is VALID [2018-11-14 18:50:31,741 INFO L273 TraceCheckUtils]: 91: Hoare triple {17894#(<= avg_~i~0 7)} assume true; {17894#(<= avg_~i~0 7)} is VALID [2018-11-14 18:50:31,742 INFO L273 TraceCheckUtils]: 92: Hoare triple {17894#(<= avg_~i~0 7)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17894#(<= avg_~i~0 7)} is VALID [2018-11-14 18:50:31,742 INFO L273 TraceCheckUtils]: 93: Hoare triple {17894#(<= avg_~i~0 7)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17895#(<= avg_~i~0 8)} is VALID [2018-11-14 18:50:31,743 INFO L273 TraceCheckUtils]: 94: Hoare triple {17895#(<= avg_~i~0 8)} assume true; {17895#(<= avg_~i~0 8)} is VALID [2018-11-14 18:50:31,743 INFO L273 TraceCheckUtils]: 95: Hoare triple {17895#(<= avg_~i~0 8)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17895#(<= avg_~i~0 8)} is VALID [2018-11-14 18:50:31,744 INFO L273 TraceCheckUtils]: 96: Hoare triple {17895#(<= avg_~i~0 8)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17896#(<= avg_~i~0 9)} is VALID [2018-11-14 18:50:31,745 INFO L273 TraceCheckUtils]: 97: Hoare triple {17896#(<= avg_~i~0 9)} assume true; {17896#(<= avg_~i~0 9)} is VALID [2018-11-14 18:50:31,745 INFO L273 TraceCheckUtils]: 98: Hoare triple {17896#(<= avg_~i~0 9)} assume !(~i~0 < 20); {17886#false} is VALID [2018-11-14 18:50:31,745 INFO L273 TraceCheckUtils]: 99: Hoare triple {17886#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {17886#false} is VALID [2018-11-14 18:50:31,746 INFO L273 TraceCheckUtils]: 100: Hoare triple {17886#false} assume true; {17886#false} is VALID [2018-11-14 18:50:31,746 INFO L268 TraceCheckUtils]: 101: Hoare quadruple {17886#false} {17885#true} #73#return; {17886#false} is VALID [2018-11-14 18:50:31,746 INFO L273 TraceCheckUtils]: 102: Hoare triple {17886#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); {17886#false} is VALID [2018-11-14 18:50:31,746 INFO L256 TraceCheckUtils]: 103: Hoare triple {17886#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {17886#false} is VALID [2018-11-14 18:50:31,746 INFO L273 TraceCheckUtils]: 104: Hoare triple {17886#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {17886#false} is VALID [2018-11-14 18:50:31,746 INFO L273 TraceCheckUtils]: 105: Hoare triple {17886#false} assume true; {17886#false} is VALID [2018-11-14 18:50:31,747 INFO L273 TraceCheckUtils]: 106: Hoare triple {17886#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17886#false} is VALID [2018-11-14 18:50:31,747 INFO L273 TraceCheckUtils]: 107: Hoare triple {17886#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17886#false} is VALID [2018-11-14 18:50:31,747 INFO L273 TraceCheckUtils]: 108: Hoare triple {17886#false} assume true; {17886#false} is VALID [2018-11-14 18:50:31,747 INFO L273 TraceCheckUtils]: 109: Hoare triple {17886#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17886#false} is VALID [2018-11-14 18:50:31,747 INFO L273 TraceCheckUtils]: 110: Hoare triple {17886#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17886#false} is VALID [2018-11-14 18:50:31,748 INFO L273 TraceCheckUtils]: 111: Hoare triple {17886#false} assume true; {17886#false} is VALID [2018-11-14 18:50:31,748 INFO L273 TraceCheckUtils]: 112: Hoare triple {17886#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17886#false} is VALID [2018-11-14 18:50:31,748 INFO L273 TraceCheckUtils]: 113: Hoare triple {17886#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17886#false} is VALID [2018-11-14 18:50:31,748 INFO L273 TraceCheckUtils]: 114: Hoare triple {17886#false} assume true; {17886#false} is VALID [2018-11-14 18:50:31,748 INFO L273 TraceCheckUtils]: 115: Hoare triple {17886#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17886#false} is VALID [2018-11-14 18:50:31,748 INFO L273 TraceCheckUtils]: 116: Hoare triple {17886#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17886#false} is VALID [2018-11-14 18:50:31,748 INFO L273 TraceCheckUtils]: 117: Hoare triple {17886#false} assume true; {17886#false} is VALID [2018-11-14 18:50:31,749 INFO L273 TraceCheckUtils]: 118: Hoare triple {17886#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17886#false} is VALID [2018-11-14 18:50:31,749 INFO L273 TraceCheckUtils]: 119: Hoare triple {17886#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17886#false} is VALID [2018-11-14 18:50:31,749 INFO L273 TraceCheckUtils]: 120: Hoare triple {17886#false} assume true; {17886#false} is VALID [2018-11-14 18:50:31,749 INFO L273 TraceCheckUtils]: 121: Hoare triple {17886#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17886#false} is VALID [2018-11-14 18:50:31,749 INFO L273 TraceCheckUtils]: 122: Hoare triple {17886#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17886#false} is VALID [2018-11-14 18:50:31,749 INFO L273 TraceCheckUtils]: 123: Hoare triple {17886#false} assume true; {17886#false} is VALID [2018-11-14 18:50:31,749 INFO L273 TraceCheckUtils]: 124: Hoare triple {17886#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17886#false} is VALID [2018-11-14 18:50:31,749 INFO L273 TraceCheckUtils]: 125: Hoare triple {17886#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17886#false} is VALID [2018-11-14 18:50:31,749 INFO L273 TraceCheckUtils]: 126: Hoare triple {17886#false} assume true; {17886#false} is VALID [2018-11-14 18:50:31,749 INFO L273 TraceCheckUtils]: 127: Hoare triple {17886#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17886#false} is VALID [2018-11-14 18:50:31,750 INFO L273 TraceCheckUtils]: 128: Hoare triple {17886#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17886#false} is VALID [2018-11-14 18:50:31,750 INFO L273 TraceCheckUtils]: 129: Hoare triple {17886#false} assume true; {17886#false} is VALID [2018-11-14 18:50:31,750 INFO L273 TraceCheckUtils]: 130: Hoare triple {17886#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17886#false} is VALID [2018-11-14 18:50:31,750 INFO L273 TraceCheckUtils]: 131: Hoare triple {17886#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17886#false} is VALID [2018-11-14 18:50:31,750 INFO L273 TraceCheckUtils]: 132: Hoare triple {17886#false} assume true; {17886#false} is VALID [2018-11-14 18:50:31,750 INFO L273 TraceCheckUtils]: 133: Hoare triple {17886#false} assume !(~i~0 < 20); {17886#false} is VALID [2018-11-14 18:50:31,750 INFO L273 TraceCheckUtils]: 134: Hoare triple {17886#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {17886#false} is VALID [2018-11-14 18:50:31,750 INFO L273 TraceCheckUtils]: 135: Hoare triple {17886#false} assume true; {17886#false} is VALID [2018-11-14 18:50:31,750 INFO L268 TraceCheckUtils]: 136: Hoare quadruple {17886#false} {17886#false} #75#return; {17886#false} is VALID [2018-11-14 18:50:31,750 INFO L273 TraceCheckUtils]: 137: Hoare triple {17886#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; {17886#false} is VALID [2018-11-14 18:50:31,751 INFO L273 TraceCheckUtils]: 138: Hoare triple {17886#false} assume true; {17886#false} is VALID [2018-11-14 18:50:31,751 INFO L273 TraceCheckUtils]: 139: Hoare triple {17886#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {17886#false} is VALID [2018-11-14 18:50:31,751 INFO L273 TraceCheckUtils]: 140: Hoare triple {17886#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {17886#false} is VALID [2018-11-14 18:50:31,751 INFO L273 TraceCheckUtils]: 141: Hoare triple {17886#false} assume true; {17886#false} is VALID [2018-11-14 18:50:31,751 INFO L273 TraceCheckUtils]: 142: Hoare triple {17886#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {17886#false} is VALID [2018-11-14 18:50:31,751 INFO L273 TraceCheckUtils]: 143: Hoare triple {17886#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {17886#false} is VALID [2018-11-14 18:50:31,751 INFO L273 TraceCheckUtils]: 144: Hoare triple {17886#false} assume true; {17886#false} is VALID [2018-11-14 18:50:31,751 INFO L273 TraceCheckUtils]: 145: Hoare triple {17886#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {17886#false} is VALID [2018-11-14 18:50:31,751 INFO L273 TraceCheckUtils]: 146: Hoare triple {17886#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {17886#false} is VALID [2018-11-14 18:50:31,752 INFO L273 TraceCheckUtils]: 147: Hoare triple {17886#false} assume true; {17886#false} is VALID [2018-11-14 18:50:31,752 INFO L273 TraceCheckUtils]: 148: Hoare triple {17886#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {17886#false} is VALID [2018-11-14 18:50:31,752 INFO L273 TraceCheckUtils]: 149: Hoare triple {17886#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {17886#false} is VALID [2018-11-14 18:50:31,752 INFO L273 TraceCheckUtils]: 150: Hoare triple {17886#false} assume true; {17886#false} is VALID [2018-11-14 18:50:31,752 INFO L273 TraceCheckUtils]: 151: Hoare triple {17886#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {17886#false} is VALID [2018-11-14 18:50:31,752 INFO L273 TraceCheckUtils]: 152: Hoare triple {17886#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {17886#false} is VALID [2018-11-14 18:50:31,752 INFO L273 TraceCheckUtils]: 153: Hoare triple {17886#false} assume true; {17886#false} is VALID [2018-11-14 18:50:31,752 INFO L273 TraceCheckUtils]: 154: Hoare triple {17886#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {17886#false} is VALID [2018-11-14 18:50:31,752 INFO L273 TraceCheckUtils]: 155: Hoare triple {17886#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {17886#false} is VALID [2018-11-14 18:50:31,752 INFO L273 TraceCheckUtils]: 156: Hoare triple {17886#false} assume true; {17886#false} is VALID [2018-11-14 18:50:31,753 INFO L273 TraceCheckUtils]: 157: Hoare triple {17886#false} assume !(~i~2 < 19); {17886#false} is VALID [2018-11-14 18:50:31,753 INFO L273 TraceCheckUtils]: 158: Hoare triple {17886#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {17886#false} is VALID [2018-11-14 18:50:31,753 INFO L256 TraceCheckUtils]: 159: Hoare triple {17886#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {17886#false} is VALID [2018-11-14 18:50:31,753 INFO L273 TraceCheckUtils]: 160: Hoare triple {17886#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {17886#false} is VALID [2018-11-14 18:50:31,753 INFO L273 TraceCheckUtils]: 161: Hoare triple {17886#false} assume true; {17886#false} is VALID [2018-11-14 18:50:31,753 INFO L273 TraceCheckUtils]: 162: Hoare triple {17886#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17886#false} is VALID [2018-11-14 18:50:31,753 INFO L273 TraceCheckUtils]: 163: Hoare triple {17886#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17886#false} is VALID [2018-11-14 18:50:31,753 INFO L273 TraceCheckUtils]: 164: Hoare triple {17886#false} assume true; {17886#false} is VALID [2018-11-14 18:50:31,753 INFO L273 TraceCheckUtils]: 165: Hoare triple {17886#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17886#false} is VALID [2018-11-14 18:50:31,753 INFO L273 TraceCheckUtils]: 166: Hoare triple {17886#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17886#false} is VALID [2018-11-14 18:50:31,754 INFO L273 TraceCheckUtils]: 167: Hoare triple {17886#false} assume true; {17886#false} is VALID [2018-11-14 18:50:31,754 INFO L273 TraceCheckUtils]: 168: Hoare triple {17886#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17886#false} is VALID [2018-11-14 18:50:31,754 INFO L273 TraceCheckUtils]: 169: Hoare triple {17886#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17886#false} is VALID [2018-11-14 18:50:31,754 INFO L273 TraceCheckUtils]: 170: Hoare triple {17886#false} assume true; {17886#false} is VALID [2018-11-14 18:50:31,754 INFO L273 TraceCheckUtils]: 171: Hoare triple {17886#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17886#false} is VALID [2018-11-14 18:50:31,754 INFO L273 TraceCheckUtils]: 172: Hoare triple {17886#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17886#false} is VALID [2018-11-14 18:50:31,754 INFO L273 TraceCheckUtils]: 173: Hoare triple {17886#false} assume true; {17886#false} is VALID [2018-11-14 18:50:31,754 INFO L273 TraceCheckUtils]: 174: Hoare triple {17886#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17886#false} is VALID [2018-11-14 18:50:31,754 INFO L273 TraceCheckUtils]: 175: Hoare triple {17886#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17886#false} is VALID [2018-11-14 18:50:31,755 INFO L273 TraceCheckUtils]: 176: Hoare triple {17886#false} assume true; {17886#false} is VALID [2018-11-14 18:50:31,755 INFO L273 TraceCheckUtils]: 177: Hoare triple {17886#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17886#false} is VALID [2018-11-14 18:50:31,755 INFO L273 TraceCheckUtils]: 178: Hoare triple {17886#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17886#false} is VALID [2018-11-14 18:50:31,755 INFO L273 TraceCheckUtils]: 179: Hoare triple {17886#false} assume true; {17886#false} is VALID [2018-11-14 18:50:31,755 INFO L273 TraceCheckUtils]: 180: Hoare triple {17886#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17886#false} is VALID [2018-11-14 18:50:31,755 INFO L273 TraceCheckUtils]: 181: Hoare triple {17886#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17886#false} is VALID [2018-11-14 18:50:31,755 INFO L273 TraceCheckUtils]: 182: Hoare triple {17886#false} assume true; {17886#false} is VALID [2018-11-14 18:50:31,755 INFO L273 TraceCheckUtils]: 183: Hoare triple {17886#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17886#false} is VALID [2018-11-14 18:50:31,755 INFO L273 TraceCheckUtils]: 184: Hoare triple {17886#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17886#false} is VALID [2018-11-14 18:50:31,756 INFO L273 TraceCheckUtils]: 185: Hoare triple {17886#false} assume true; {17886#false} is VALID [2018-11-14 18:50:31,756 INFO L273 TraceCheckUtils]: 186: Hoare triple {17886#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {17886#false} is VALID [2018-11-14 18:50:31,756 INFO L273 TraceCheckUtils]: 187: Hoare triple {17886#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17886#false} is VALID [2018-11-14 18:50:31,756 INFO L273 TraceCheckUtils]: 188: Hoare triple {17886#false} assume true; {17886#false} is VALID [2018-11-14 18:50:31,756 INFO L273 TraceCheckUtils]: 189: Hoare triple {17886#false} assume !(~i~0 < 20); {17886#false} is VALID [2018-11-14 18:50:31,756 INFO L273 TraceCheckUtils]: 190: Hoare triple {17886#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {17886#false} is VALID [2018-11-14 18:50:31,756 INFO L273 TraceCheckUtils]: 191: Hoare triple {17886#false} assume true; {17886#false} is VALID [2018-11-14 18:50:31,757 INFO L268 TraceCheckUtils]: 192: Hoare quadruple {17886#false} {17886#false} #77#return; {17886#false} is VALID [2018-11-14 18:50:31,757 INFO L273 TraceCheckUtils]: 193: Hoare triple {17886#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {17886#false} is VALID [2018-11-14 18:50:31,757 INFO L273 TraceCheckUtils]: 194: Hoare triple {17886#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {17886#false} is VALID [2018-11-14 18:50:31,757 INFO L273 TraceCheckUtils]: 195: Hoare triple {17886#false} assume !false; {17886#false} is VALID [2018-11-14 18:50:31,771 INFO L134 CoverageAnalysis]: Checked inductivity of 1900 backedges. 564 proven. 126 refuted. 0 times theorem prover too weak. 1210 trivial. 0 not checked. [2018-11-14 18:50:31,791 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:50:31,791 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 12] total 13 [2018-11-14 18:50:31,792 INFO L78 Accepts]: Start accepts. Automaton has 13 states. Word has length 196 [2018-11-14 18:50:31,793 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:50:31,793 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states. [2018-11-14 18:50:32,730 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 78 edges. 78 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:50:32,731 INFO L459 AbstractCegarLoop]: Interpolant automaton has 13 states [2018-11-14 18:50:32,731 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2018-11-14 18:50:32,731 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=78, Invalid=78, Unknown=0, NotChecked=0, Total=156 [2018-11-14 18:50:32,731 INFO L87 Difference]: Start difference. First operand 131 states and 135 transitions. Second operand 13 states. [2018-11-14 18:50:34,448 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:34,448 INFO L93 Difference]: Finished difference Result 197 states and 207 transitions. [2018-11-14 18:50:34,448 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2018-11-14 18:50:34,448 INFO L78 Accepts]: Start accepts. Automaton has 13 states. Word has length 196 [2018-11-14 18:50:34,449 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:50:34,449 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 13 states. [2018-11-14 18:50:34,449 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 88 transitions. [2018-11-14 18:50:34,449 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 13 states. [2018-11-14 18:50:34,450 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 88 transitions. [2018-11-14 18:50:34,450 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states and 88 transitions. [2018-11-14 18:50:34,549 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 88 edges. 88 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:50:34,551 INFO L225 Difference]: With dead ends: 197 [2018-11-14 18:50:34,551 INFO L226 Difference]: Without dead ends: 135 [2018-11-14 18:50:34,551 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 207 GetRequests, 196 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 16 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=78, Invalid=78, Unknown=0, NotChecked=0, Total=156 [2018-11-14 18:50:34,551 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 135 states. [2018-11-14 18:50:34,673 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 135 to 134. [2018-11-14 18:50:34,673 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:50:34,673 INFO L82 GeneralOperation]: Start isEquivalent. First operand 135 states. Second operand 134 states. [2018-11-14 18:50:34,673 INFO L74 IsIncluded]: Start isIncluded. First operand 135 states. Second operand 134 states. [2018-11-14 18:50:34,673 INFO L87 Difference]: Start difference. First operand 135 states. Second operand 134 states. [2018-11-14 18:50:34,675 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:34,675 INFO L93 Difference]: Finished difference Result 135 states and 139 transitions. [2018-11-14 18:50:34,675 INFO L276 IsEmpty]: Start isEmpty. Operand 135 states and 139 transitions. [2018-11-14 18:50:34,676 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:50:34,676 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:50:34,676 INFO L74 IsIncluded]: Start isIncluded. First operand 134 states. Second operand 135 states. [2018-11-14 18:50:34,676 INFO L87 Difference]: Start difference. First operand 134 states. Second operand 135 states. [2018-11-14 18:50:34,678 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:34,679 INFO L93 Difference]: Finished difference Result 135 states and 139 transitions. [2018-11-14 18:50:34,679 INFO L276 IsEmpty]: Start isEmpty. Operand 135 states and 139 transitions. [2018-11-14 18:50:34,679 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:50:34,679 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:50:34,679 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:50:34,680 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:50:34,680 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 134 states. [2018-11-14 18:50:34,682 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 134 states to 134 states and 138 transitions. [2018-11-14 18:50:34,682 INFO L78 Accepts]: Start accepts. Automaton has 134 states and 138 transitions. Word has length 196 [2018-11-14 18:50:34,682 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:50:34,682 INFO L480 AbstractCegarLoop]: Abstraction has 134 states and 138 transitions. [2018-11-14 18:50:34,682 INFO L481 AbstractCegarLoop]: Interpolant automaton has 13 states. [2018-11-14 18:50:34,683 INFO L276 IsEmpty]: Start isEmpty. Operand 134 states and 138 transitions. [2018-11-14 18:50:34,684 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 206 [2018-11-14 18:50:34,684 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:50:34,684 INFO L375 BasicCegarLoop]: trace histogram [33, 30, 30, 21, 20, 20, 7, 6, 6, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:50:34,684 INFO L423 AbstractCegarLoop]: === Iteration 27 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:50:34,684 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:50:34,685 INFO L82 PathProgramCache]: Analyzing trace with hash 1185440595, now seen corresponding path program 23 times [2018-11-14 18:50:34,685 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:50:34,685 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:50:34,685 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:50:34,686 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 18:50:34,686 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:50:34,711 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:50:34,993 INFO L256 TraceCheckUtils]: 0: Hoare triple {19200#true} call ULTIMATE.init(); {19200#true} is VALID [2018-11-14 18:50:34,994 INFO L273 TraceCheckUtils]: 1: Hoare triple {19200#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {19200#true} is VALID [2018-11-14 18:50:34,994 INFO L273 TraceCheckUtils]: 2: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:34,994 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {19200#true} {19200#true} #69#return; {19200#true} is VALID [2018-11-14 18:50:34,994 INFO L256 TraceCheckUtils]: 4: Hoare triple {19200#true} call #t~ret12 := main(); {19200#true} is VALID [2018-11-14 18:50:34,994 INFO L273 TraceCheckUtils]: 5: Hoare triple {19200#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {19200#true} is VALID [2018-11-14 18:50:34,995 INFO L273 TraceCheckUtils]: 6: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:34,995 INFO L273 TraceCheckUtils]: 7: Hoare triple {19200#true} assume !!(~i~1 < 20);assume -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#true} is VALID [2018-11-14 18:50:34,995 INFO L273 TraceCheckUtils]: 8: Hoare triple {19200#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19200#true} is VALID [2018-11-14 18:50:34,995 INFO L273 TraceCheckUtils]: 9: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:34,995 INFO L273 TraceCheckUtils]: 10: Hoare triple {19200#true} assume !!(~i~1 < 20);assume -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#true} is VALID [2018-11-14 18:50:34,995 INFO L273 TraceCheckUtils]: 11: Hoare triple {19200#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19200#true} is VALID [2018-11-14 18:50:34,995 INFO L273 TraceCheckUtils]: 12: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:34,996 INFO L273 TraceCheckUtils]: 13: Hoare triple {19200#true} assume !!(~i~1 < 20);assume -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#true} is VALID [2018-11-14 18:50:34,996 INFO L273 TraceCheckUtils]: 14: Hoare triple {19200#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19200#true} is VALID [2018-11-14 18:50:34,996 INFO L273 TraceCheckUtils]: 15: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:34,996 INFO L273 TraceCheckUtils]: 16: Hoare triple {19200#true} assume !!(~i~1 < 20);assume -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#true} is VALID [2018-11-14 18:50:34,996 INFO L273 TraceCheckUtils]: 17: Hoare triple {19200#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19200#true} is VALID [2018-11-14 18:50:34,996 INFO L273 TraceCheckUtils]: 18: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:34,996 INFO L273 TraceCheckUtils]: 19: Hoare triple {19200#true} assume !!(~i~1 < 20);assume -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#true} is VALID [2018-11-14 18:50:34,996 INFO L273 TraceCheckUtils]: 20: Hoare triple {19200#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19200#true} is VALID [2018-11-14 18:50:34,996 INFO L273 TraceCheckUtils]: 21: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:34,997 INFO L273 TraceCheckUtils]: 22: Hoare triple {19200#true} assume !!(~i~1 < 20);assume -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#true} is VALID [2018-11-14 18:50:34,997 INFO L273 TraceCheckUtils]: 23: Hoare triple {19200#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19200#true} is VALID [2018-11-14 18:50:34,997 INFO L273 TraceCheckUtils]: 24: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:34,997 INFO L273 TraceCheckUtils]: 25: Hoare triple {19200#true} assume !!(~i~1 < 20);assume -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#true} is VALID [2018-11-14 18:50:34,997 INFO L273 TraceCheckUtils]: 26: Hoare triple {19200#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19200#true} is VALID [2018-11-14 18:50:34,997 INFO L273 TraceCheckUtils]: 27: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:34,997 INFO L273 TraceCheckUtils]: 28: Hoare triple {19200#true} assume !!(~i~1 < 20);assume -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#true} is VALID [2018-11-14 18:50:34,997 INFO L273 TraceCheckUtils]: 29: Hoare triple {19200#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19200#true} is VALID [2018-11-14 18:50:34,997 INFO L273 TraceCheckUtils]: 30: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:34,997 INFO L273 TraceCheckUtils]: 31: Hoare triple {19200#true} assume !!(~i~1 < 20);assume -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#true} is VALID [2018-11-14 18:50:34,998 INFO L273 TraceCheckUtils]: 32: Hoare triple {19200#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19200#true} is VALID [2018-11-14 18:50:34,998 INFO L273 TraceCheckUtils]: 33: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:34,998 INFO L273 TraceCheckUtils]: 34: Hoare triple {19200#true} assume !!(~i~1 < 20);assume -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#true} is VALID [2018-11-14 18:50:34,998 INFO L273 TraceCheckUtils]: 35: Hoare triple {19200#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19200#true} is VALID [2018-11-14 18:50:34,998 INFO L273 TraceCheckUtils]: 36: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:34,998 INFO L273 TraceCheckUtils]: 37: Hoare triple {19200#true} assume !!(~i~1 < 20);assume -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#true} is VALID [2018-11-14 18:50:34,998 INFO L273 TraceCheckUtils]: 38: Hoare triple {19200#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19200#true} is VALID [2018-11-14 18:50:34,998 INFO L273 TraceCheckUtils]: 39: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:34,998 INFO L273 TraceCheckUtils]: 40: Hoare triple {19200#true} assume !!(~i~1 < 20);assume -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#true} is VALID [2018-11-14 18:50:34,998 INFO L273 TraceCheckUtils]: 41: Hoare triple {19200#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19200#true} is VALID [2018-11-14 18:50:34,999 INFO L273 TraceCheckUtils]: 42: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:34,999 INFO L273 TraceCheckUtils]: 43: Hoare triple {19200#true} assume !!(~i~1 < 20);assume -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#true} is VALID [2018-11-14 18:50:34,999 INFO L273 TraceCheckUtils]: 44: Hoare triple {19200#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19200#true} is VALID [2018-11-14 18:50:34,999 INFO L273 TraceCheckUtils]: 45: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:34,999 INFO L273 TraceCheckUtils]: 46: Hoare triple {19200#true} assume !!(~i~1 < 20);assume -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#true} is VALID [2018-11-14 18:50:34,999 INFO L273 TraceCheckUtils]: 47: Hoare triple {19200#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19200#true} is VALID [2018-11-14 18:50:34,999 INFO L273 TraceCheckUtils]: 48: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:34,999 INFO L273 TraceCheckUtils]: 49: Hoare triple {19200#true} assume !!(~i~1 < 20);assume -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#true} is VALID [2018-11-14 18:50:34,999 INFO L273 TraceCheckUtils]: 50: Hoare triple {19200#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19200#true} is VALID [2018-11-14 18:50:35,000 INFO L273 TraceCheckUtils]: 51: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:35,000 INFO L273 TraceCheckUtils]: 52: Hoare triple {19200#true} assume !!(~i~1 < 20);assume -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#true} is VALID [2018-11-14 18:50:35,000 INFO L273 TraceCheckUtils]: 53: Hoare triple {19200#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19200#true} is VALID [2018-11-14 18:50:35,000 INFO L273 TraceCheckUtils]: 54: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:35,000 INFO L273 TraceCheckUtils]: 55: Hoare triple {19200#true} assume !!(~i~1 < 20);assume -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#true} is VALID [2018-11-14 18:50:35,000 INFO L273 TraceCheckUtils]: 56: Hoare triple {19200#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19200#true} is VALID [2018-11-14 18:50:35,000 INFO L273 TraceCheckUtils]: 57: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:35,000 INFO L273 TraceCheckUtils]: 58: Hoare triple {19200#true} assume !!(~i~1 < 20);assume -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#true} is VALID [2018-11-14 18:50:35,000 INFO L273 TraceCheckUtils]: 59: Hoare triple {19200#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19200#true} is VALID [2018-11-14 18:50:35,000 INFO L273 TraceCheckUtils]: 60: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:35,001 INFO L273 TraceCheckUtils]: 61: Hoare triple {19200#true} assume !!(~i~1 < 20);assume -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#true} is VALID [2018-11-14 18:50:35,001 INFO L273 TraceCheckUtils]: 62: Hoare triple {19200#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19200#true} is VALID [2018-11-14 18:50:35,001 INFO L273 TraceCheckUtils]: 63: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:35,001 INFO L273 TraceCheckUtils]: 64: Hoare triple {19200#true} assume !!(~i~1 < 20);assume -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#true} is VALID [2018-11-14 18:50:35,001 INFO L273 TraceCheckUtils]: 65: Hoare triple {19200#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19200#true} is VALID [2018-11-14 18:50:35,001 INFO L273 TraceCheckUtils]: 66: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:35,001 INFO L273 TraceCheckUtils]: 67: Hoare triple {19200#true} assume !(~i~1 < 20); {19200#true} is VALID [2018-11-14 18:50:35,001 INFO L256 TraceCheckUtils]: 68: Hoare triple {19200#true} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {19200#true} is VALID [2018-11-14 18:50:35,002 INFO L273 TraceCheckUtils]: 69: Hoare triple {19200#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {19202#(= avg_~i~0 0)} is VALID [2018-11-14 18:50:35,002 INFO L273 TraceCheckUtils]: 70: Hoare triple {19202#(= avg_~i~0 0)} assume true; {19202#(= avg_~i~0 0)} is VALID [2018-11-14 18:50:35,002 INFO L273 TraceCheckUtils]: 71: Hoare triple {19202#(= avg_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19202#(= avg_~i~0 0)} is VALID [2018-11-14 18:50:35,003 INFO L273 TraceCheckUtils]: 72: Hoare triple {19202#(= avg_~i~0 0)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19203#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:35,003 INFO L273 TraceCheckUtils]: 73: Hoare triple {19203#(<= avg_~i~0 1)} assume true; {19203#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:35,003 INFO L273 TraceCheckUtils]: 74: Hoare triple {19203#(<= avg_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19203#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:35,004 INFO L273 TraceCheckUtils]: 75: Hoare triple {19203#(<= avg_~i~0 1)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19204#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:35,004 INFO L273 TraceCheckUtils]: 76: Hoare triple {19204#(<= avg_~i~0 2)} assume true; {19204#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:35,004 INFO L273 TraceCheckUtils]: 77: Hoare triple {19204#(<= avg_~i~0 2)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19204#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:35,005 INFO L273 TraceCheckUtils]: 78: Hoare triple {19204#(<= avg_~i~0 2)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19205#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:35,005 INFO L273 TraceCheckUtils]: 79: Hoare triple {19205#(<= avg_~i~0 3)} assume true; {19205#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:35,005 INFO L273 TraceCheckUtils]: 80: Hoare triple {19205#(<= avg_~i~0 3)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19205#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:35,006 INFO L273 TraceCheckUtils]: 81: Hoare triple {19205#(<= avg_~i~0 3)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19206#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:35,006 INFO L273 TraceCheckUtils]: 82: Hoare triple {19206#(<= avg_~i~0 4)} assume true; {19206#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:35,006 INFO L273 TraceCheckUtils]: 83: Hoare triple {19206#(<= avg_~i~0 4)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19206#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:35,007 INFO L273 TraceCheckUtils]: 84: Hoare triple {19206#(<= avg_~i~0 4)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19207#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:35,007 INFO L273 TraceCheckUtils]: 85: Hoare triple {19207#(<= avg_~i~0 5)} assume true; {19207#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:35,008 INFO L273 TraceCheckUtils]: 86: Hoare triple {19207#(<= avg_~i~0 5)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19207#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:35,009 INFO L273 TraceCheckUtils]: 87: Hoare triple {19207#(<= avg_~i~0 5)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19208#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:35,009 INFO L273 TraceCheckUtils]: 88: Hoare triple {19208#(<= avg_~i~0 6)} assume true; {19208#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:35,010 INFO L273 TraceCheckUtils]: 89: Hoare triple {19208#(<= avg_~i~0 6)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19208#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:35,010 INFO L273 TraceCheckUtils]: 90: Hoare triple {19208#(<= avg_~i~0 6)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19209#(<= avg_~i~0 7)} is VALID [2018-11-14 18:50:35,011 INFO L273 TraceCheckUtils]: 91: Hoare triple {19209#(<= avg_~i~0 7)} assume true; {19209#(<= avg_~i~0 7)} is VALID [2018-11-14 18:50:35,011 INFO L273 TraceCheckUtils]: 92: Hoare triple {19209#(<= avg_~i~0 7)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19209#(<= avg_~i~0 7)} is VALID [2018-11-14 18:50:35,012 INFO L273 TraceCheckUtils]: 93: Hoare triple {19209#(<= avg_~i~0 7)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19210#(<= avg_~i~0 8)} is VALID [2018-11-14 18:50:35,013 INFO L273 TraceCheckUtils]: 94: Hoare triple {19210#(<= avg_~i~0 8)} assume true; {19210#(<= avg_~i~0 8)} is VALID [2018-11-14 18:50:35,013 INFO L273 TraceCheckUtils]: 95: Hoare triple {19210#(<= avg_~i~0 8)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19210#(<= avg_~i~0 8)} is VALID [2018-11-14 18:50:35,014 INFO L273 TraceCheckUtils]: 96: Hoare triple {19210#(<= avg_~i~0 8)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19211#(<= avg_~i~0 9)} is VALID [2018-11-14 18:50:35,033 INFO L273 TraceCheckUtils]: 97: Hoare triple {19211#(<= avg_~i~0 9)} assume true; {19211#(<= avg_~i~0 9)} is VALID [2018-11-14 18:50:35,048 INFO L273 TraceCheckUtils]: 98: Hoare triple {19211#(<= avg_~i~0 9)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19211#(<= avg_~i~0 9)} is VALID [2018-11-14 18:50:35,061 INFO L273 TraceCheckUtils]: 99: Hoare triple {19211#(<= avg_~i~0 9)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19212#(<= avg_~i~0 10)} is VALID [2018-11-14 18:50:35,069 INFO L273 TraceCheckUtils]: 100: Hoare triple {19212#(<= avg_~i~0 10)} assume true; {19212#(<= avg_~i~0 10)} is VALID [2018-11-14 18:50:35,069 INFO L273 TraceCheckUtils]: 101: Hoare triple {19212#(<= avg_~i~0 10)} assume !(~i~0 < 20); {19201#false} is VALID [2018-11-14 18:50:35,069 INFO L273 TraceCheckUtils]: 102: Hoare triple {19201#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {19201#false} is VALID [2018-11-14 18:50:35,070 INFO L273 TraceCheckUtils]: 103: Hoare triple {19201#false} assume true; {19201#false} is VALID [2018-11-14 18:50:35,070 INFO L268 TraceCheckUtils]: 104: Hoare quadruple {19201#false} {19200#true} #73#return; {19201#false} is VALID [2018-11-14 18:50:35,070 INFO L273 TraceCheckUtils]: 105: Hoare triple {19201#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); {19201#false} is VALID [2018-11-14 18:50:35,070 INFO L256 TraceCheckUtils]: 106: Hoare triple {19201#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {19200#true} is VALID [2018-11-14 18:50:35,070 INFO L273 TraceCheckUtils]: 107: Hoare triple {19200#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {19200#true} is VALID [2018-11-14 18:50:35,070 INFO L273 TraceCheckUtils]: 108: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:35,070 INFO L273 TraceCheckUtils]: 109: Hoare triple {19200#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19200#true} is VALID [2018-11-14 18:50:35,070 INFO L273 TraceCheckUtils]: 110: Hoare triple {19200#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19200#true} is VALID [2018-11-14 18:50:35,070 INFO L273 TraceCheckUtils]: 111: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:35,071 INFO L273 TraceCheckUtils]: 112: Hoare triple {19200#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19200#true} is VALID [2018-11-14 18:50:35,071 INFO L273 TraceCheckUtils]: 113: Hoare triple {19200#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19200#true} is VALID [2018-11-14 18:50:35,071 INFO L273 TraceCheckUtils]: 114: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:35,071 INFO L273 TraceCheckUtils]: 115: Hoare triple {19200#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19200#true} is VALID [2018-11-14 18:50:35,071 INFO L273 TraceCheckUtils]: 116: Hoare triple {19200#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19200#true} is VALID [2018-11-14 18:50:35,071 INFO L273 TraceCheckUtils]: 117: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:35,071 INFO L273 TraceCheckUtils]: 118: Hoare triple {19200#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19200#true} is VALID [2018-11-14 18:50:35,071 INFO L273 TraceCheckUtils]: 119: Hoare triple {19200#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19200#true} is VALID [2018-11-14 18:50:35,071 INFO L273 TraceCheckUtils]: 120: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:35,071 INFO L273 TraceCheckUtils]: 121: Hoare triple {19200#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19200#true} is VALID [2018-11-14 18:50:35,072 INFO L273 TraceCheckUtils]: 122: Hoare triple {19200#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19200#true} is VALID [2018-11-14 18:50:35,072 INFO L273 TraceCheckUtils]: 123: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:35,072 INFO L273 TraceCheckUtils]: 124: Hoare triple {19200#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19200#true} is VALID [2018-11-14 18:50:35,072 INFO L273 TraceCheckUtils]: 125: Hoare triple {19200#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19200#true} is VALID [2018-11-14 18:50:35,072 INFO L273 TraceCheckUtils]: 126: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:35,072 INFO L273 TraceCheckUtils]: 127: Hoare triple {19200#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19200#true} is VALID [2018-11-14 18:50:35,072 INFO L273 TraceCheckUtils]: 128: Hoare triple {19200#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19200#true} is VALID [2018-11-14 18:50:35,072 INFO L273 TraceCheckUtils]: 129: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:35,072 INFO L273 TraceCheckUtils]: 130: Hoare triple {19200#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19200#true} is VALID [2018-11-14 18:50:35,073 INFO L273 TraceCheckUtils]: 131: Hoare triple {19200#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19200#true} is VALID [2018-11-14 18:50:35,073 INFO L273 TraceCheckUtils]: 132: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:35,073 INFO L273 TraceCheckUtils]: 133: Hoare triple {19200#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19200#true} is VALID [2018-11-14 18:50:35,073 INFO L273 TraceCheckUtils]: 134: Hoare triple {19200#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19200#true} is VALID [2018-11-14 18:50:35,073 INFO L273 TraceCheckUtils]: 135: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:35,073 INFO L273 TraceCheckUtils]: 136: Hoare triple {19200#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19200#true} is VALID [2018-11-14 18:50:35,073 INFO L273 TraceCheckUtils]: 137: Hoare triple {19200#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19200#true} is VALID [2018-11-14 18:50:35,073 INFO L273 TraceCheckUtils]: 138: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:35,073 INFO L273 TraceCheckUtils]: 139: Hoare triple {19200#true} assume !(~i~0 < 20); {19200#true} is VALID [2018-11-14 18:50:35,073 INFO L273 TraceCheckUtils]: 140: Hoare triple {19200#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {19200#true} is VALID [2018-11-14 18:50:35,074 INFO L273 TraceCheckUtils]: 141: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:35,074 INFO L268 TraceCheckUtils]: 142: Hoare quadruple {19200#true} {19201#false} #75#return; {19201#false} is VALID [2018-11-14 18:50:35,074 INFO L273 TraceCheckUtils]: 143: Hoare triple {19201#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; {19201#false} is VALID [2018-11-14 18:50:35,074 INFO L273 TraceCheckUtils]: 144: Hoare triple {19201#false} assume true; {19201#false} is VALID [2018-11-14 18:50:35,074 INFO L273 TraceCheckUtils]: 145: Hoare triple {19201#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {19201#false} is VALID [2018-11-14 18:50:35,074 INFO L273 TraceCheckUtils]: 146: Hoare triple {19201#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {19201#false} is VALID [2018-11-14 18:50:35,074 INFO L273 TraceCheckUtils]: 147: Hoare triple {19201#false} assume true; {19201#false} is VALID [2018-11-14 18:50:35,074 INFO L273 TraceCheckUtils]: 148: Hoare triple {19201#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {19201#false} is VALID [2018-11-14 18:50:35,074 INFO L273 TraceCheckUtils]: 149: Hoare triple {19201#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {19201#false} is VALID [2018-11-14 18:50:35,075 INFO L273 TraceCheckUtils]: 150: Hoare triple {19201#false} assume true; {19201#false} is VALID [2018-11-14 18:50:35,075 INFO L273 TraceCheckUtils]: 151: Hoare triple {19201#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {19201#false} is VALID [2018-11-14 18:50:35,075 INFO L273 TraceCheckUtils]: 152: Hoare triple {19201#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {19201#false} is VALID [2018-11-14 18:50:35,075 INFO L273 TraceCheckUtils]: 153: Hoare triple {19201#false} assume true; {19201#false} is VALID [2018-11-14 18:50:35,075 INFO L273 TraceCheckUtils]: 154: Hoare triple {19201#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {19201#false} is VALID [2018-11-14 18:50:35,075 INFO L273 TraceCheckUtils]: 155: Hoare triple {19201#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {19201#false} is VALID [2018-11-14 18:50:35,075 INFO L273 TraceCheckUtils]: 156: Hoare triple {19201#false} assume true; {19201#false} is VALID [2018-11-14 18:50:35,075 INFO L273 TraceCheckUtils]: 157: Hoare triple {19201#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {19201#false} is VALID [2018-11-14 18:50:35,075 INFO L273 TraceCheckUtils]: 158: Hoare triple {19201#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {19201#false} is VALID [2018-11-14 18:50:35,075 INFO L273 TraceCheckUtils]: 159: Hoare triple {19201#false} assume true; {19201#false} is VALID [2018-11-14 18:50:35,076 INFO L273 TraceCheckUtils]: 160: Hoare triple {19201#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {19201#false} is VALID [2018-11-14 18:50:35,076 INFO L273 TraceCheckUtils]: 161: Hoare triple {19201#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {19201#false} is VALID [2018-11-14 18:50:35,076 INFO L273 TraceCheckUtils]: 162: Hoare triple {19201#false} assume true; {19201#false} is VALID [2018-11-14 18:50:35,076 INFO L273 TraceCheckUtils]: 163: Hoare triple {19201#false} assume !(~i~2 < 19); {19201#false} is VALID [2018-11-14 18:50:35,076 INFO L273 TraceCheckUtils]: 164: Hoare triple {19201#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {19201#false} is VALID [2018-11-14 18:50:35,076 INFO L256 TraceCheckUtils]: 165: Hoare triple {19201#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {19200#true} is VALID [2018-11-14 18:50:35,076 INFO L273 TraceCheckUtils]: 166: Hoare triple {19200#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {19200#true} is VALID [2018-11-14 18:50:35,076 INFO L273 TraceCheckUtils]: 167: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:35,076 INFO L273 TraceCheckUtils]: 168: Hoare triple {19200#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19200#true} is VALID [2018-11-14 18:50:35,076 INFO L273 TraceCheckUtils]: 169: Hoare triple {19200#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19200#true} is VALID [2018-11-14 18:50:35,077 INFO L273 TraceCheckUtils]: 170: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:35,077 INFO L273 TraceCheckUtils]: 171: Hoare triple {19200#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19200#true} is VALID [2018-11-14 18:50:35,077 INFO L273 TraceCheckUtils]: 172: Hoare triple {19200#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19200#true} is VALID [2018-11-14 18:50:35,077 INFO L273 TraceCheckUtils]: 173: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:35,077 INFO L273 TraceCheckUtils]: 174: Hoare triple {19200#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19200#true} is VALID [2018-11-14 18:50:35,077 INFO L273 TraceCheckUtils]: 175: Hoare triple {19200#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19200#true} is VALID [2018-11-14 18:50:35,077 INFO L273 TraceCheckUtils]: 176: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:35,077 INFO L273 TraceCheckUtils]: 177: Hoare triple {19200#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19200#true} is VALID [2018-11-14 18:50:35,077 INFO L273 TraceCheckUtils]: 178: Hoare triple {19200#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19200#true} is VALID [2018-11-14 18:50:35,078 INFO L273 TraceCheckUtils]: 179: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:35,078 INFO L273 TraceCheckUtils]: 180: Hoare triple {19200#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19200#true} is VALID [2018-11-14 18:50:35,078 INFO L273 TraceCheckUtils]: 181: Hoare triple {19200#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19200#true} is VALID [2018-11-14 18:50:35,078 INFO L273 TraceCheckUtils]: 182: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:35,078 INFO L273 TraceCheckUtils]: 183: Hoare triple {19200#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19200#true} is VALID [2018-11-14 18:50:35,078 INFO L273 TraceCheckUtils]: 184: Hoare triple {19200#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19200#true} is VALID [2018-11-14 18:50:35,078 INFO L273 TraceCheckUtils]: 185: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:35,078 INFO L273 TraceCheckUtils]: 186: Hoare triple {19200#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19200#true} is VALID [2018-11-14 18:50:35,078 INFO L273 TraceCheckUtils]: 187: Hoare triple {19200#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19200#true} is VALID [2018-11-14 18:50:35,078 INFO L273 TraceCheckUtils]: 188: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:35,079 INFO L273 TraceCheckUtils]: 189: Hoare triple {19200#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19200#true} is VALID [2018-11-14 18:50:35,079 INFO L273 TraceCheckUtils]: 190: Hoare triple {19200#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19200#true} is VALID [2018-11-14 18:50:35,079 INFO L273 TraceCheckUtils]: 191: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:35,079 INFO L273 TraceCheckUtils]: 192: Hoare triple {19200#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19200#true} is VALID [2018-11-14 18:50:35,079 INFO L273 TraceCheckUtils]: 193: Hoare triple {19200#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19200#true} is VALID [2018-11-14 18:50:35,079 INFO L273 TraceCheckUtils]: 194: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:35,079 INFO L273 TraceCheckUtils]: 195: Hoare triple {19200#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19200#true} is VALID [2018-11-14 18:50:35,079 INFO L273 TraceCheckUtils]: 196: Hoare triple {19200#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19200#true} is VALID [2018-11-14 18:50:35,079 INFO L273 TraceCheckUtils]: 197: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:35,079 INFO L273 TraceCheckUtils]: 198: Hoare triple {19200#true} assume !(~i~0 < 20); {19200#true} is VALID [2018-11-14 18:50:35,080 INFO L273 TraceCheckUtils]: 199: Hoare triple {19200#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {19200#true} is VALID [2018-11-14 18:50:35,080 INFO L273 TraceCheckUtils]: 200: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:35,080 INFO L268 TraceCheckUtils]: 201: Hoare quadruple {19200#true} {19201#false} #77#return; {19201#false} is VALID [2018-11-14 18:50:35,080 INFO L273 TraceCheckUtils]: 202: Hoare triple {19201#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {19201#false} is VALID [2018-11-14 18:50:35,080 INFO L273 TraceCheckUtils]: 203: Hoare triple {19201#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {19201#false} is VALID [2018-11-14 18:50:35,080 INFO L273 TraceCheckUtils]: 204: Hoare triple {19201#false} assume !false; {19201#false} is VALID [2018-11-14 18:50:35,096 INFO L134 CoverageAnalysis]: Checked inductivity of 2170 backedges. 0 proven. 845 refuted. 0 times theorem prover too weak. 1325 trivial. 0 not checked. [2018-11-14 18:50:35,096 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:50:35,096 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 25 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 25 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:50:35,104 INFO L103 rtionOrderModulation]: Keeping assertion order INSIDE_LOOP_FIRST1 [2018-11-14 18:50:38,277 INFO L249 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 22 check-sat command(s) [2018-11-14 18:50:38,277 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 18:50:38,325 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:50:38,326 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:50:38,498 INFO L256 TraceCheckUtils]: 0: Hoare triple {19200#true} call ULTIMATE.init(); {19200#true} is VALID [2018-11-14 18:50:38,498 INFO L273 TraceCheckUtils]: 1: Hoare triple {19200#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {19200#true} is VALID [2018-11-14 18:50:38,499 INFO L273 TraceCheckUtils]: 2: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:38,499 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {19200#true} {19200#true} #69#return; {19200#true} is VALID [2018-11-14 18:50:38,499 INFO L256 TraceCheckUtils]: 4: Hoare triple {19200#true} call #t~ret12 := main(); {19200#true} is VALID [2018-11-14 18:50:38,499 INFO L273 TraceCheckUtils]: 5: Hoare triple {19200#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {19200#true} is VALID [2018-11-14 18:50:38,499 INFO L273 TraceCheckUtils]: 6: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:38,500 INFO L273 TraceCheckUtils]: 7: Hoare triple {19200#true} assume !!(~i~1 < 20);assume -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#true} is VALID [2018-11-14 18:50:38,500 INFO L273 TraceCheckUtils]: 8: Hoare triple {19200#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19200#true} is VALID [2018-11-14 18:50:38,500 INFO L273 TraceCheckUtils]: 9: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:38,500 INFO L273 TraceCheckUtils]: 10: Hoare triple {19200#true} assume !!(~i~1 < 20);assume -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#true} is VALID [2018-11-14 18:50:38,500 INFO L273 TraceCheckUtils]: 11: Hoare triple {19200#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19200#true} is VALID [2018-11-14 18:50:38,500 INFO L273 TraceCheckUtils]: 12: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:38,500 INFO L273 TraceCheckUtils]: 13: Hoare triple {19200#true} assume !!(~i~1 < 20);assume -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#true} is VALID [2018-11-14 18:50:38,501 INFO L273 TraceCheckUtils]: 14: Hoare triple {19200#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19200#true} is VALID [2018-11-14 18:50:38,501 INFO L273 TraceCheckUtils]: 15: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:38,501 INFO L273 TraceCheckUtils]: 16: Hoare triple {19200#true} assume !!(~i~1 < 20);assume -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#true} is VALID [2018-11-14 18:50:38,501 INFO L273 TraceCheckUtils]: 17: Hoare triple {19200#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19200#true} is VALID [2018-11-14 18:50:38,501 INFO L273 TraceCheckUtils]: 18: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:38,501 INFO L273 TraceCheckUtils]: 19: Hoare triple {19200#true} assume !!(~i~1 < 20);assume -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#true} is VALID [2018-11-14 18:50:38,501 INFO L273 TraceCheckUtils]: 20: Hoare triple {19200#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19200#true} is VALID [2018-11-14 18:50:38,501 INFO L273 TraceCheckUtils]: 21: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:38,502 INFO L273 TraceCheckUtils]: 22: Hoare triple {19200#true} assume !!(~i~1 < 20);assume -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#true} is VALID [2018-11-14 18:50:38,502 INFO L273 TraceCheckUtils]: 23: Hoare triple {19200#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19200#true} is VALID [2018-11-14 18:50:38,502 INFO L273 TraceCheckUtils]: 24: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:38,502 INFO L273 TraceCheckUtils]: 25: Hoare triple {19200#true} assume !!(~i~1 < 20);assume -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#true} is VALID [2018-11-14 18:50:38,502 INFO L273 TraceCheckUtils]: 26: Hoare triple {19200#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19200#true} is VALID [2018-11-14 18:50:38,502 INFO L273 TraceCheckUtils]: 27: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:38,502 INFO L273 TraceCheckUtils]: 28: Hoare triple {19200#true} assume !!(~i~1 < 20);assume -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#true} is VALID [2018-11-14 18:50:38,502 INFO L273 TraceCheckUtils]: 29: Hoare triple {19200#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19200#true} is VALID [2018-11-14 18:50:38,502 INFO L273 TraceCheckUtils]: 30: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:38,503 INFO L273 TraceCheckUtils]: 31: Hoare triple {19200#true} assume !!(~i~1 < 20);assume -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#true} is VALID [2018-11-14 18:50:38,503 INFO L273 TraceCheckUtils]: 32: Hoare triple {19200#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19200#true} is VALID [2018-11-14 18:50:38,503 INFO L273 TraceCheckUtils]: 33: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:38,503 INFO L273 TraceCheckUtils]: 34: Hoare triple {19200#true} assume !!(~i~1 < 20);assume -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#true} is VALID [2018-11-14 18:50:38,503 INFO L273 TraceCheckUtils]: 35: Hoare triple {19200#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19200#true} is VALID [2018-11-14 18:50:38,503 INFO L273 TraceCheckUtils]: 36: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:38,503 INFO L273 TraceCheckUtils]: 37: Hoare triple {19200#true} assume !!(~i~1 < 20);assume -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#true} is VALID [2018-11-14 18:50:38,503 INFO L273 TraceCheckUtils]: 38: Hoare triple {19200#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19200#true} is VALID [2018-11-14 18:50:38,503 INFO L273 TraceCheckUtils]: 39: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:38,503 INFO L273 TraceCheckUtils]: 40: Hoare triple {19200#true} assume !!(~i~1 < 20);assume -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#true} is VALID [2018-11-14 18:50:38,504 INFO L273 TraceCheckUtils]: 41: Hoare triple {19200#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19200#true} is VALID [2018-11-14 18:50:38,504 INFO L273 TraceCheckUtils]: 42: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:38,504 INFO L273 TraceCheckUtils]: 43: Hoare triple {19200#true} assume !!(~i~1 < 20);assume -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#true} is VALID [2018-11-14 18:50:38,504 INFO L273 TraceCheckUtils]: 44: Hoare triple {19200#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19200#true} is VALID [2018-11-14 18:50:38,504 INFO L273 TraceCheckUtils]: 45: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:38,504 INFO L273 TraceCheckUtils]: 46: Hoare triple {19200#true} assume !!(~i~1 < 20);assume -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#true} is VALID [2018-11-14 18:50:38,504 INFO L273 TraceCheckUtils]: 47: Hoare triple {19200#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19200#true} is VALID [2018-11-14 18:50:38,504 INFO L273 TraceCheckUtils]: 48: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:38,504 INFO L273 TraceCheckUtils]: 49: Hoare triple {19200#true} assume !!(~i~1 < 20);assume -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#true} is VALID [2018-11-14 18:50:38,505 INFO L273 TraceCheckUtils]: 50: Hoare triple {19200#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19200#true} is VALID [2018-11-14 18:50:38,505 INFO L273 TraceCheckUtils]: 51: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:38,505 INFO L273 TraceCheckUtils]: 52: Hoare triple {19200#true} assume !!(~i~1 < 20);assume -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#true} is VALID [2018-11-14 18:50:38,505 INFO L273 TraceCheckUtils]: 53: Hoare triple {19200#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19200#true} is VALID [2018-11-14 18:50:38,505 INFO L273 TraceCheckUtils]: 54: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:38,505 INFO L273 TraceCheckUtils]: 55: Hoare triple {19200#true} assume !!(~i~1 < 20);assume -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#true} is VALID [2018-11-14 18:50:38,506 INFO L273 TraceCheckUtils]: 56: Hoare triple {19200#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19200#true} is VALID [2018-11-14 18:50:38,506 INFO L273 TraceCheckUtils]: 57: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:38,506 INFO L273 TraceCheckUtils]: 58: Hoare triple {19200#true} assume !!(~i~1 < 20);assume -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#true} is VALID [2018-11-14 18:50:38,506 INFO L273 TraceCheckUtils]: 59: Hoare triple {19200#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19200#true} is VALID [2018-11-14 18:50:38,506 INFO L273 TraceCheckUtils]: 60: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:38,506 INFO L273 TraceCheckUtils]: 61: Hoare triple {19200#true} assume !!(~i~1 < 20);assume -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#true} is VALID [2018-11-14 18:50:38,506 INFO L273 TraceCheckUtils]: 62: Hoare triple {19200#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19200#true} is VALID [2018-11-14 18:50:38,507 INFO L273 TraceCheckUtils]: 63: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:38,507 INFO L273 TraceCheckUtils]: 64: Hoare triple {19200#true} assume !!(~i~1 < 20);assume -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#true} is VALID [2018-11-14 18:50:38,507 INFO L273 TraceCheckUtils]: 65: Hoare triple {19200#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19200#true} is VALID [2018-11-14 18:50:38,507 INFO L273 TraceCheckUtils]: 66: Hoare triple {19200#true} assume true; {19200#true} is VALID [2018-11-14 18:50:38,507 INFO L273 TraceCheckUtils]: 67: Hoare triple {19200#true} assume !(~i~1 < 20); {19200#true} is VALID [2018-11-14 18:50:38,507 INFO L256 TraceCheckUtils]: 68: Hoare triple {19200#true} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {19200#true} is VALID [2018-11-14 18:50:38,507 INFO L273 TraceCheckUtils]: 69: Hoare triple {19200#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {19423#(<= avg_~i~0 0)} is VALID [2018-11-14 18:50:38,508 INFO L273 TraceCheckUtils]: 70: Hoare triple {19423#(<= avg_~i~0 0)} assume true; {19423#(<= avg_~i~0 0)} is VALID [2018-11-14 18:50:38,508 INFO L273 TraceCheckUtils]: 71: Hoare triple {19423#(<= avg_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19423#(<= avg_~i~0 0)} is VALID [2018-11-14 18:50:38,509 INFO L273 TraceCheckUtils]: 72: Hoare triple {19423#(<= avg_~i~0 0)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19203#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:38,509 INFO L273 TraceCheckUtils]: 73: Hoare triple {19203#(<= avg_~i~0 1)} assume true; {19203#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:38,509 INFO L273 TraceCheckUtils]: 74: Hoare triple {19203#(<= avg_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19203#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:38,510 INFO L273 TraceCheckUtils]: 75: Hoare triple {19203#(<= avg_~i~0 1)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19204#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:38,510 INFO L273 TraceCheckUtils]: 76: Hoare triple {19204#(<= avg_~i~0 2)} assume true; {19204#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:38,511 INFO L273 TraceCheckUtils]: 77: Hoare triple {19204#(<= avg_~i~0 2)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19204#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:38,511 INFO L273 TraceCheckUtils]: 78: Hoare triple {19204#(<= avg_~i~0 2)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19205#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:38,512 INFO L273 TraceCheckUtils]: 79: Hoare triple {19205#(<= avg_~i~0 3)} assume true; {19205#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:38,516 INFO L273 TraceCheckUtils]: 80: Hoare triple {19205#(<= avg_~i~0 3)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19205#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:38,516 INFO L273 TraceCheckUtils]: 81: Hoare triple {19205#(<= avg_~i~0 3)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19206#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:38,516 INFO L273 TraceCheckUtils]: 82: Hoare triple {19206#(<= avg_~i~0 4)} assume true; {19206#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:38,517 INFO L273 TraceCheckUtils]: 83: Hoare triple {19206#(<= avg_~i~0 4)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19206#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:38,517 INFO L273 TraceCheckUtils]: 84: Hoare triple {19206#(<= avg_~i~0 4)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19207#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:38,517 INFO L273 TraceCheckUtils]: 85: Hoare triple {19207#(<= avg_~i~0 5)} assume true; {19207#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:38,518 INFO L273 TraceCheckUtils]: 86: Hoare triple {19207#(<= avg_~i~0 5)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19207#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:38,518 INFO L273 TraceCheckUtils]: 87: Hoare triple {19207#(<= avg_~i~0 5)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19208#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:38,518 INFO L273 TraceCheckUtils]: 88: Hoare triple {19208#(<= avg_~i~0 6)} assume true; {19208#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:38,519 INFO L273 TraceCheckUtils]: 89: Hoare triple {19208#(<= avg_~i~0 6)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19208#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:38,519 INFO L273 TraceCheckUtils]: 90: Hoare triple {19208#(<= avg_~i~0 6)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19209#(<= avg_~i~0 7)} is VALID [2018-11-14 18:50:38,520 INFO L273 TraceCheckUtils]: 91: Hoare triple {19209#(<= avg_~i~0 7)} assume true; {19209#(<= avg_~i~0 7)} is VALID [2018-11-14 18:50:38,520 INFO L273 TraceCheckUtils]: 92: Hoare triple {19209#(<= avg_~i~0 7)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19209#(<= avg_~i~0 7)} is VALID [2018-11-14 18:50:38,521 INFO L273 TraceCheckUtils]: 93: Hoare triple {19209#(<= avg_~i~0 7)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19210#(<= avg_~i~0 8)} is VALID [2018-11-14 18:50:38,521 INFO L273 TraceCheckUtils]: 94: Hoare triple {19210#(<= avg_~i~0 8)} assume true; {19210#(<= avg_~i~0 8)} is VALID [2018-11-14 18:50:38,522 INFO L273 TraceCheckUtils]: 95: Hoare triple {19210#(<= avg_~i~0 8)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19210#(<= avg_~i~0 8)} is VALID [2018-11-14 18:50:38,522 INFO L273 TraceCheckUtils]: 96: Hoare triple {19210#(<= avg_~i~0 8)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19211#(<= avg_~i~0 9)} is VALID [2018-11-14 18:50:38,523 INFO L273 TraceCheckUtils]: 97: Hoare triple {19211#(<= avg_~i~0 9)} assume true; {19211#(<= avg_~i~0 9)} is VALID [2018-11-14 18:50:38,523 INFO L273 TraceCheckUtils]: 98: Hoare triple {19211#(<= avg_~i~0 9)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19211#(<= avg_~i~0 9)} is VALID [2018-11-14 18:50:38,524 INFO L273 TraceCheckUtils]: 99: Hoare triple {19211#(<= avg_~i~0 9)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19212#(<= avg_~i~0 10)} is VALID [2018-11-14 18:50:38,524 INFO L273 TraceCheckUtils]: 100: Hoare triple {19212#(<= avg_~i~0 10)} assume true; {19212#(<= avg_~i~0 10)} is VALID [2018-11-14 18:50:38,525 INFO L273 TraceCheckUtils]: 101: Hoare triple {19212#(<= avg_~i~0 10)} assume !(~i~0 < 20); {19201#false} is VALID [2018-11-14 18:50:38,525 INFO L273 TraceCheckUtils]: 102: Hoare triple {19201#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {19201#false} is VALID [2018-11-14 18:50:38,526 INFO L273 TraceCheckUtils]: 103: Hoare triple {19201#false} assume true; {19201#false} is VALID [2018-11-14 18:50:38,526 INFO L268 TraceCheckUtils]: 104: Hoare quadruple {19201#false} {19200#true} #73#return; {19201#false} is VALID [2018-11-14 18:50:38,526 INFO L273 TraceCheckUtils]: 105: Hoare triple {19201#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); {19201#false} is VALID [2018-11-14 18:50:38,526 INFO L256 TraceCheckUtils]: 106: Hoare triple {19201#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {19201#false} is VALID [2018-11-14 18:50:38,526 INFO L273 TraceCheckUtils]: 107: Hoare triple {19201#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {19201#false} is VALID [2018-11-14 18:50:38,526 INFO L273 TraceCheckUtils]: 108: Hoare triple {19201#false} assume true; {19201#false} is VALID [2018-11-14 18:50:38,527 INFO L273 TraceCheckUtils]: 109: Hoare triple {19201#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19201#false} is VALID [2018-11-14 18:50:38,527 INFO L273 TraceCheckUtils]: 110: Hoare triple {19201#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19201#false} is VALID [2018-11-14 18:50:38,527 INFO L273 TraceCheckUtils]: 111: Hoare triple {19201#false} assume true; {19201#false} is VALID [2018-11-14 18:50:38,527 INFO L273 TraceCheckUtils]: 112: Hoare triple {19201#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19201#false} is VALID [2018-11-14 18:50:38,527 INFO L273 TraceCheckUtils]: 113: Hoare triple {19201#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19201#false} is VALID [2018-11-14 18:50:38,528 INFO L273 TraceCheckUtils]: 114: Hoare triple {19201#false} assume true; {19201#false} is VALID [2018-11-14 18:50:38,528 INFO L273 TraceCheckUtils]: 115: Hoare triple {19201#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19201#false} is VALID [2018-11-14 18:50:38,528 INFO L273 TraceCheckUtils]: 116: Hoare triple {19201#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19201#false} is VALID [2018-11-14 18:50:38,528 INFO L273 TraceCheckUtils]: 117: Hoare triple {19201#false} assume true; {19201#false} is VALID [2018-11-14 18:50:38,528 INFO L273 TraceCheckUtils]: 118: Hoare triple {19201#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19201#false} is VALID [2018-11-14 18:50:38,528 INFO L273 TraceCheckUtils]: 119: Hoare triple {19201#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19201#false} is VALID [2018-11-14 18:50:38,528 INFO L273 TraceCheckUtils]: 120: Hoare triple {19201#false} assume true; {19201#false} is VALID [2018-11-14 18:50:38,528 INFO L273 TraceCheckUtils]: 121: Hoare triple {19201#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19201#false} is VALID [2018-11-14 18:50:38,528 INFO L273 TraceCheckUtils]: 122: Hoare triple {19201#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19201#false} is VALID [2018-11-14 18:50:38,529 INFO L273 TraceCheckUtils]: 123: Hoare triple {19201#false} assume true; {19201#false} is VALID [2018-11-14 18:50:38,529 INFO L273 TraceCheckUtils]: 124: Hoare triple {19201#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19201#false} is VALID [2018-11-14 18:50:38,529 INFO L273 TraceCheckUtils]: 125: Hoare triple {19201#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19201#false} is VALID [2018-11-14 18:50:38,529 INFO L273 TraceCheckUtils]: 126: Hoare triple {19201#false} assume true; {19201#false} is VALID [2018-11-14 18:50:38,529 INFO L273 TraceCheckUtils]: 127: Hoare triple {19201#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19201#false} is VALID [2018-11-14 18:50:38,529 INFO L273 TraceCheckUtils]: 128: Hoare triple {19201#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19201#false} is VALID [2018-11-14 18:50:38,529 INFO L273 TraceCheckUtils]: 129: Hoare triple {19201#false} assume true; {19201#false} is VALID [2018-11-14 18:50:38,529 INFO L273 TraceCheckUtils]: 130: Hoare triple {19201#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19201#false} is VALID [2018-11-14 18:50:38,529 INFO L273 TraceCheckUtils]: 131: Hoare triple {19201#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19201#false} is VALID [2018-11-14 18:50:38,530 INFO L273 TraceCheckUtils]: 132: Hoare triple {19201#false} assume true; {19201#false} is VALID [2018-11-14 18:50:38,530 INFO L273 TraceCheckUtils]: 133: Hoare triple {19201#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19201#false} is VALID [2018-11-14 18:50:38,530 INFO L273 TraceCheckUtils]: 134: Hoare triple {19201#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19201#false} is VALID [2018-11-14 18:50:38,530 INFO L273 TraceCheckUtils]: 135: Hoare triple {19201#false} assume true; {19201#false} is VALID [2018-11-14 18:50:38,530 INFO L273 TraceCheckUtils]: 136: Hoare triple {19201#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19201#false} is VALID [2018-11-14 18:50:38,530 INFO L273 TraceCheckUtils]: 137: Hoare triple {19201#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19201#false} is VALID [2018-11-14 18:50:38,530 INFO L273 TraceCheckUtils]: 138: Hoare triple {19201#false} assume true; {19201#false} is VALID [2018-11-14 18:50:38,530 INFO L273 TraceCheckUtils]: 139: Hoare triple {19201#false} assume !(~i~0 < 20); {19201#false} is VALID [2018-11-14 18:50:38,530 INFO L273 TraceCheckUtils]: 140: Hoare triple {19201#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {19201#false} is VALID [2018-11-14 18:50:38,530 INFO L273 TraceCheckUtils]: 141: Hoare triple {19201#false} assume true; {19201#false} is VALID [2018-11-14 18:50:38,531 INFO L268 TraceCheckUtils]: 142: Hoare quadruple {19201#false} {19201#false} #75#return; {19201#false} is VALID [2018-11-14 18:50:38,531 INFO L273 TraceCheckUtils]: 143: Hoare triple {19201#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; {19201#false} is VALID [2018-11-14 18:50:38,531 INFO L273 TraceCheckUtils]: 144: Hoare triple {19201#false} assume true; {19201#false} is VALID [2018-11-14 18:50:38,531 INFO L273 TraceCheckUtils]: 145: Hoare triple {19201#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {19201#false} is VALID [2018-11-14 18:50:38,531 INFO L273 TraceCheckUtils]: 146: Hoare triple {19201#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {19201#false} is VALID [2018-11-14 18:50:38,531 INFO L273 TraceCheckUtils]: 147: Hoare triple {19201#false} assume true; {19201#false} is VALID [2018-11-14 18:50:38,531 INFO L273 TraceCheckUtils]: 148: Hoare triple {19201#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {19201#false} is VALID [2018-11-14 18:50:38,531 INFO L273 TraceCheckUtils]: 149: Hoare triple {19201#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {19201#false} is VALID [2018-11-14 18:50:38,531 INFO L273 TraceCheckUtils]: 150: Hoare triple {19201#false} assume true; {19201#false} is VALID [2018-11-14 18:50:38,531 INFO L273 TraceCheckUtils]: 151: Hoare triple {19201#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {19201#false} is VALID [2018-11-14 18:50:38,532 INFO L273 TraceCheckUtils]: 152: Hoare triple {19201#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {19201#false} is VALID [2018-11-14 18:50:38,532 INFO L273 TraceCheckUtils]: 153: Hoare triple {19201#false} assume true; {19201#false} is VALID [2018-11-14 18:50:38,532 INFO L273 TraceCheckUtils]: 154: Hoare triple {19201#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {19201#false} is VALID [2018-11-14 18:50:38,532 INFO L273 TraceCheckUtils]: 155: Hoare triple {19201#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {19201#false} is VALID [2018-11-14 18:50:38,532 INFO L273 TraceCheckUtils]: 156: Hoare triple {19201#false} assume true; {19201#false} is VALID [2018-11-14 18:50:38,532 INFO L273 TraceCheckUtils]: 157: Hoare triple {19201#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {19201#false} is VALID [2018-11-14 18:50:38,532 INFO L273 TraceCheckUtils]: 158: Hoare triple {19201#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {19201#false} is VALID [2018-11-14 18:50:38,532 INFO L273 TraceCheckUtils]: 159: Hoare triple {19201#false} assume true; {19201#false} is VALID [2018-11-14 18:50:38,532 INFO L273 TraceCheckUtils]: 160: Hoare triple {19201#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {19201#false} is VALID [2018-11-14 18:50:38,532 INFO L273 TraceCheckUtils]: 161: Hoare triple {19201#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {19201#false} is VALID [2018-11-14 18:50:38,533 INFO L273 TraceCheckUtils]: 162: Hoare triple {19201#false} assume true; {19201#false} is VALID [2018-11-14 18:50:38,533 INFO L273 TraceCheckUtils]: 163: Hoare triple {19201#false} assume !(~i~2 < 19); {19201#false} is VALID [2018-11-14 18:50:38,533 INFO L273 TraceCheckUtils]: 164: Hoare triple {19201#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {19201#false} is VALID [2018-11-14 18:50:38,533 INFO L256 TraceCheckUtils]: 165: Hoare triple {19201#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {19201#false} is VALID [2018-11-14 18:50:38,533 INFO L273 TraceCheckUtils]: 166: Hoare triple {19201#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {19201#false} is VALID [2018-11-14 18:50:38,533 INFO L273 TraceCheckUtils]: 167: Hoare triple {19201#false} assume true; {19201#false} is VALID [2018-11-14 18:50:38,533 INFO L273 TraceCheckUtils]: 168: Hoare triple {19201#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19201#false} is VALID [2018-11-14 18:50:38,533 INFO L273 TraceCheckUtils]: 169: Hoare triple {19201#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19201#false} is VALID [2018-11-14 18:50:38,533 INFO L273 TraceCheckUtils]: 170: Hoare triple {19201#false} assume true; {19201#false} is VALID [2018-11-14 18:50:38,534 INFO L273 TraceCheckUtils]: 171: Hoare triple {19201#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19201#false} is VALID [2018-11-14 18:50:38,534 INFO L273 TraceCheckUtils]: 172: Hoare triple {19201#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19201#false} is VALID [2018-11-14 18:50:38,534 INFO L273 TraceCheckUtils]: 173: Hoare triple {19201#false} assume true; {19201#false} is VALID [2018-11-14 18:50:38,534 INFO L273 TraceCheckUtils]: 174: Hoare triple {19201#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19201#false} is VALID [2018-11-14 18:50:38,534 INFO L273 TraceCheckUtils]: 175: Hoare triple {19201#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19201#false} is VALID [2018-11-14 18:50:38,534 INFO L273 TraceCheckUtils]: 176: Hoare triple {19201#false} assume true; {19201#false} is VALID [2018-11-14 18:50:38,534 INFO L273 TraceCheckUtils]: 177: Hoare triple {19201#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19201#false} is VALID [2018-11-14 18:50:38,534 INFO L273 TraceCheckUtils]: 178: Hoare triple {19201#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19201#false} is VALID [2018-11-14 18:50:38,534 INFO L273 TraceCheckUtils]: 179: Hoare triple {19201#false} assume true; {19201#false} is VALID [2018-11-14 18:50:38,534 INFO L273 TraceCheckUtils]: 180: Hoare triple {19201#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19201#false} is VALID [2018-11-14 18:50:38,535 INFO L273 TraceCheckUtils]: 181: Hoare triple {19201#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19201#false} is VALID [2018-11-14 18:50:38,535 INFO L273 TraceCheckUtils]: 182: Hoare triple {19201#false} assume true; {19201#false} is VALID [2018-11-14 18:50:38,535 INFO L273 TraceCheckUtils]: 183: Hoare triple {19201#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19201#false} is VALID [2018-11-14 18:50:38,535 INFO L273 TraceCheckUtils]: 184: Hoare triple {19201#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19201#false} is VALID [2018-11-14 18:50:38,535 INFO L273 TraceCheckUtils]: 185: Hoare triple {19201#false} assume true; {19201#false} is VALID [2018-11-14 18:50:38,535 INFO L273 TraceCheckUtils]: 186: Hoare triple {19201#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19201#false} is VALID [2018-11-14 18:50:38,535 INFO L273 TraceCheckUtils]: 187: Hoare triple {19201#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19201#false} is VALID [2018-11-14 18:50:38,535 INFO L273 TraceCheckUtils]: 188: Hoare triple {19201#false} assume true; {19201#false} is VALID [2018-11-14 18:50:38,535 INFO L273 TraceCheckUtils]: 189: Hoare triple {19201#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19201#false} is VALID [2018-11-14 18:50:38,535 INFO L273 TraceCheckUtils]: 190: Hoare triple {19201#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19201#false} is VALID [2018-11-14 18:50:38,536 INFO L273 TraceCheckUtils]: 191: Hoare triple {19201#false} assume true; {19201#false} is VALID [2018-11-14 18:50:38,536 INFO L273 TraceCheckUtils]: 192: Hoare triple {19201#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19201#false} is VALID [2018-11-14 18:50:38,536 INFO L273 TraceCheckUtils]: 193: Hoare triple {19201#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19201#false} is VALID [2018-11-14 18:50:38,536 INFO L273 TraceCheckUtils]: 194: Hoare triple {19201#false} assume true; {19201#false} is VALID [2018-11-14 18:50:38,536 INFO L273 TraceCheckUtils]: 195: Hoare triple {19201#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {19201#false} is VALID [2018-11-14 18:50:38,536 INFO L273 TraceCheckUtils]: 196: Hoare triple {19201#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19201#false} is VALID [2018-11-14 18:50:38,536 INFO L273 TraceCheckUtils]: 197: Hoare triple {19201#false} assume true; {19201#false} is VALID [2018-11-14 18:50:38,536 INFO L273 TraceCheckUtils]: 198: Hoare triple {19201#false} assume !(~i~0 < 20); {19201#false} is VALID [2018-11-14 18:50:38,536 INFO L273 TraceCheckUtils]: 199: Hoare triple {19201#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {19201#false} is VALID [2018-11-14 18:50:38,536 INFO L273 TraceCheckUtils]: 200: Hoare triple {19201#false} assume true; {19201#false} is VALID [2018-11-14 18:50:38,537 INFO L268 TraceCheckUtils]: 201: Hoare quadruple {19201#false} {19201#false} #77#return; {19201#false} is VALID [2018-11-14 18:50:38,537 INFO L273 TraceCheckUtils]: 202: Hoare triple {19201#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {19201#false} is VALID [2018-11-14 18:50:38,537 INFO L273 TraceCheckUtils]: 203: Hoare triple {19201#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {19201#false} is VALID [2018-11-14 18:50:38,537 INFO L273 TraceCheckUtils]: 204: Hoare triple {19201#false} assume !false; {19201#false} is VALID [2018-11-14 18:50:38,553 INFO L134 CoverageAnalysis]: Checked inductivity of 2170 backedges. 686 proven. 155 refuted. 0 times theorem prover too weak. 1329 trivial. 0 not checked. [2018-11-14 18:50:38,575 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:50:38,575 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 14 [2018-11-14 18:50:38,576 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 205 [2018-11-14 18:50:38,577 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:50:38,577 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states. [2018-11-14 18:50:38,653 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 81 edges. 81 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:50:38,654 INFO L459 AbstractCegarLoop]: Interpolant automaton has 14 states [2018-11-14 18:50:38,654 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2018-11-14 18:50:38,654 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=91, Invalid=91, Unknown=0, NotChecked=0, Total=182 [2018-11-14 18:50:38,654 INFO L87 Difference]: Start difference. First operand 134 states and 138 transitions. Second operand 14 states. [2018-11-14 18:50:39,353 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:39,353 INFO L93 Difference]: Finished difference Result 203 states and 213 transitions. [2018-11-14 18:50:39,353 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2018-11-14 18:50:39,353 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 205 [2018-11-14 18:50:39,353 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:50:39,353 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2018-11-14 18:50:39,354 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 91 transitions. [2018-11-14 18:50:39,354 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2018-11-14 18:50:39,355 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 91 transitions. [2018-11-14 18:50:39,355 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states and 91 transitions. [2018-11-14 18:50:39,480 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 91 edges. 91 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:50:39,483 INFO L225 Difference]: With dead ends: 203 [2018-11-14 18:50:39,483 INFO L226 Difference]: Without dead ends: 138 [2018-11-14 18:50:39,483 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 217 GetRequests, 205 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 18:50:39,484 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 138 states. [2018-11-14 18:50:39,529 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 138 to 137. [2018-11-14 18:50:39,529 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:50:39,529 INFO L82 GeneralOperation]: Start isEquivalent. First operand 138 states. Second operand 137 states. [2018-11-14 18:50:39,529 INFO L74 IsIncluded]: Start isIncluded. First operand 138 states. Second operand 137 states. [2018-11-14 18:50:39,529 INFO L87 Difference]: Start difference. First operand 138 states. Second operand 137 states. [2018-11-14 18:50:39,532 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:39,532 INFO L93 Difference]: Finished difference Result 138 states and 142 transitions. [2018-11-14 18:50:39,532 INFO L276 IsEmpty]: Start isEmpty. Operand 138 states and 142 transitions. [2018-11-14 18:50:39,532 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:50:39,532 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:50:39,532 INFO L74 IsIncluded]: Start isIncluded. First operand 137 states. Second operand 138 states. [2018-11-14 18:50:39,533 INFO L87 Difference]: Start difference. First operand 137 states. Second operand 138 states. [2018-11-14 18:50:39,534 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:39,534 INFO L93 Difference]: Finished difference Result 138 states and 142 transitions. [2018-11-14 18:50:39,534 INFO L276 IsEmpty]: Start isEmpty. Operand 138 states and 142 transitions. [2018-11-14 18:50:39,535 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:50:39,535 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:50:39,535 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:50:39,535 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:50:39,535 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 137 states. [2018-11-14 18:50:39,537 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 137 states to 137 states and 141 transitions. [2018-11-14 18:50:39,537 INFO L78 Accepts]: Start accepts. Automaton has 137 states and 141 transitions. Word has length 205 [2018-11-14 18:50:39,537 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:50:39,537 INFO L480 AbstractCegarLoop]: Abstraction has 137 states and 141 transitions. [2018-11-14 18:50:39,537 INFO L481 AbstractCegarLoop]: Interpolant automaton has 14 states. [2018-11-14 18:50:39,537 INFO L276 IsEmpty]: Start isEmpty. Operand 137 states and 141 transitions. [2018-11-14 18:50:39,538 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 215 [2018-11-14 18:50:39,538 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:50:39,538 INFO L375 BasicCegarLoop]: trace histogram [36, 33, 33, 21, 20, 20, 7, 6, 6, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:50:39,539 INFO L423 AbstractCegarLoop]: === Iteration 28 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:50:39,539 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:50:39,539 INFO L82 PathProgramCache]: Analyzing trace with hash 2015947493, now seen corresponding path program 24 times [2018-11-14 18:50:39,539 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:50:39,539 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:50:39,540 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:50:39,540 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 18:50:39,540 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:50:39,567 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:50:40,006 INFO L256 TraceCheckUtils]: 0: Hoare triple {20561#true} call ULTIMATE.init(); {20561#true} is VALID [2018-11-14 18:50:40,006 INFO L273 TraceCheckUtils]: 1: Hoare triple {20561#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {20561#true} is VALID [2018-11-14 18:50:40,007 INFO L273 TraceCheckUtils]: 2: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,007 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {20561#true} {20561#true} #69#return; {20561#true} is VALID [2018-11-14 18:50:40,007 INFO L256 TraceCheckUtils]: 4: Hoare triple {20561#true} call #t~ret12 := main(); {20561#true} is VALID [2018-11-14 18:50:40,008 INFO L273 TraceCheckUtils]: 5: Hoare triple {20561#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {20561#true} is VALID [2018-11-14 18:50:40,008 INFO L273 TraceCheckUtils]: 6: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,008 INFO L273 TraceCheckUtils]: 7: Hoare triple {20561#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20561#true} is VALID [2018-11-14 18:50:40,009 INFO L273 TraceCheckUtils]: 8: Hoare triple {20561#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20561#true} is VALID [2018-11-14 18:50:40,009 INFO L273 TraceCheckUtils]: 9: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,009 INFO L273 TraceCheckUtils]: 10: Hoare triple {20561#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20561#true} is VALID [2018-11-14 18:50:40,009 INFO L273 TraceCheckUtils]: 11: Hoare triple {20561#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20561#true} is VALID [2018-11-14 18:50:40,010 INFO L273 TraceCheckUtils]: 12: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,010 INFO L273 TraceCheckUtils]: 13: Hoare triple {20561#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20561#true} is VALID [2018-11-14 18:50:40,010 INFO L273 TraceCheckUtils]: 14: Hoare triple {20561#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20561#true} is VALID [2018-11-14 18:50:40,010 INFO L273 TraceCheckUtils]: 15: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,011 INFO L273 TraceCheckUtils]: 16: Hoare triple {20561#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20561#true} is VALID [2018-11-14 18:50:40,011 INFO L273 TraceCheckUtils]: 17: Hoare triple {20561#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20561#true} is VALID [2018-11-14 18:50:40,011 INFO L273 TraceCheckUtils]: 18: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,011 INFO L273 TraceCheckUtils]: 19: Hoare triple {20561#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20561#true} is VALID [2018-11-14 18:50:40,011 INFO L273 TraceCheckUtils]: 20: Hoare triple {20561#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20561#true} is VALID [2018-11-14 18:50:40,012 INFO L273 TraceCheckUtils]: 21: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,012 INFO L273 TraceCheckUtils]: 22: Hoare triple {20561#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20561#true} is VALID [2018-11-14 18:50:40,012 INFO L273 TraceCheckUtils]: 23: Hoare triple {20561#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20561#true} is VALID [2018-11-14 18:50:40,012 INFO L273 TraceCheckUtils]: 24: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,012 INFO L273 TraceCheckUtils]: 25: Hoare triple {20561#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20561#true} is VALID [2018-11-14 18:50:40,012 INFO L273 TraceCheckUtils]: 26: Hoare triple {20561#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20561#true} is VALID [2018-11-14 18:50:40,012 INFO L273 TraceCheckUtils]: 27: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,013 INFO L273 TraceCheckUtils]: 28: Hoare triple {20561#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20561#true} is VALID [2018-11-14 18:50:40,013 INFO L273 TraceCheckUtils]: 29: Hoare triple {20561#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20561#true} is VALID [2018-11-14 18:50:40,013 INFO L273 TraceCheckUtils]: 30: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,013 INFO L273 TraceCheckUtils]: 31: Hoare triple {20561#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20561#true} is VALID [2018-11-14 18:50:40,013 INFO L273 TraceCheckUtils]: 32: Hoare triple {20561#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20561#true} is VALID [2018-11-14 18:50:40,013 INFO L273 TraceCheckUtils]: 33: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,013 INFO L273 TraceCheckUtils]: 34: Hoare triple {20561#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20561#true} is VALID [2018-11-14 18:50:40,013 INFO L273 TraceCheckUtils]: 35: Hoare triple {20561#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20561#true} is VALID [2018-11-14 18:50:40,014 INFO L273 TraceCheckUtils]: 36: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,014 INFO L273 TraceCheckUtils]: 37: Hoare triple {20561#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20561#true} is VALID [2018-11-14 18:50:40,014 INFO L273 TraceCheckUtils]: 38: Hoare triple {20561#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20561#true} is VALID [2018-11-14 18:50:40,014 INFO L273 TraceCheckUtils]: 39: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,014 INFO L273 TraceCheckUtils]: 40: Hoare triple {20561#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20561#true} is VALID [2018-11-14 18:50:40,014 INFO L273 TraceCheckUtils]: 41: Hoare triple {20561#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20561#true} is VALID [2018-11-14 18:50:40,014 INFO L273 TraceCheckUtils]: 42: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,015 INFO L273 TraceCheckUtils]: 43: Hoare triple {20561#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20561#true} is VALID [2018-11-14 18:50:40,015 INFO L273 TraceCheckUtils]: 44: Hoare triple {20561#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20561#true} is VALID [2018-11-14 18:50:40,015 INFO L273 TraceCheckUtils]: 45: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,015 INFO L273 TraceCheckUtils]: 46: Hoare triple {20561#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20561#true} is VALID [2018-11-14 18:50:40,015 INFO L273 TraceCheckUtils]: 47: Hoare triple {20561#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20561#true} is VALID [2018-11-14 18:50:40,015 INFO L273 TraceCheckUtils]: 48: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,015 INFO L273 TraceCheckUtils]: 49: Hoare triple {20561#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20561#true} is VALID [2018-11-14 18:50:40,015 INFO L273 TraceCheckUtils]: 50: Hoare triple {20561#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20561#true} is VALID [2018-11-14 18:50:40,016 INFO L273 TraceCheckUtils]: 51: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,016 INFO L273 TraceCheckUtils]: 52: Hoare triple {20561#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20561#true} is VALID [2018-11-14 18:50:40,016 INFO L273 TraceCheckUtils]: 53: Hoare triple {20561#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20561#true} is VALID [2018-11-14 18:50:40,016 INFO L273 TraceCheckUtils]: 54: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,016 INFO L273 TraceCheckUtils]: 55: Hoare triple {20561#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20561#true} is VALID [2018-11-14 18:50:40,016 INFO L273 TraceCheckUtils]: 56: Hoare triple {20561#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20561#true} is VALID [2018-11-14 18:50:40,016 INFO L273 TraceCheckUtils]: 57: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,017 INFO L273 TraceCheckUtils]: 58: Hoare triple {20561#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20561#true} is VALID [2018-11-14 18:50:40,017 INFO L273 TraceCheckUtils]: 59: Hoare triple {20561#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20561#true} is VALID [2018-11-14 18:50:40,017 INFO L273 TraceCheckUtils]: 60: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,017 INFO L273 TraceCheckUtils]: 61: Hoare triple {20561#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20561#true} is VALID [2018-11-14 18:50:40,017 INFO L273 TraceCheckUtils]: 62: Hoare triple {20561#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20561#true} is VALID [2018-11-14 18:50:40,017 INFO L273 TraceCheckUtils]: 63: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,017 INFO L273 TraceCheckUtils]: 64: Hoare triple {20561#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20561#true} is VALID [2018-11-14 18:50:40,018 INFO L273 TraceCheckUtils]: 65: Hoare triple {20561#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20561#true} is VALID [2018-11-14 18:50:40,018 INFO L273 TraceCheckUtils]: 66: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,018 INFO L273 TraceCheckUtils]: 67: Hoare triple {20561#true} assume !(~i~1 < 20); {20561#true} is VALID [2018-11-14 18:50:40,018 INFO L256 TraceCheckUtils]: 68: Hoare triple {20561#true} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {20561#true} is VALID [2018-11-14 18:50:40,018 INFO L273 TraceCheckUtils]: 69: Hoare triple {20561#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {20563#(= avg_~i~0 0)} is VALID [2018-11-14 18:50:40,019 INFO L273 TraceCheckUtils]: 70: Hoare triple {20563#(= avg_~i~0 0)} assume true; {20563#(= avg_~i~0 0)} is VALID [2018-11-14 18:50:40,019 INFO L273 TraceCheckUtils]: 71: Hoare triple {20563#(= avg_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20563#(= avg_~i~0 0)} is VALID [2018-11-14 18:50:40,020 INFO L273 TraceCheckUtils]: 72: Hoare triple {20563#(= avg_~i~0 0)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20564#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:40,020 INFO L273 TraceCheckUtils]: 73: Hoare triple {20564#(<= avg_~i~0 1)} assume true; {20564#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:40,020 INFO L273 TraceCheckUtils]: 74: Hoare triple {20564#(<= avg_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20564#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:40,021 INFO L273 TraceCheckUtils]: 75: Hoare triple {20564#(<= avg_~i~0 1)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20565#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:40,021 INFO L273 TraceCheckUtils]: 76: Hoare triple {20565#(<= avg_~i~0 2)} assume true; {20565#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:40,022 INFO L273 TraceCheckUtils]: 77: Hoare triple {20565#(<= avg_~i~0 2)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20565#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:40,023 INFO L273 TraceCheckUtils]: 78: Hoare triple {20565#(<= avg_~i~0 2)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20566#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:40,023 INFO L273 TraceCheckUtils]: 79: Hoare triple {20566#(<= avg_~i~0 3)} assume true; {20566#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:40,024 INFO L273 TraceCheckUtils]: 80: Hoare triple {20566#(<= avg_~i~0 3)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20566#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:40,025 INFO L273 TraceCheckUtils]: 81: Hoare triple {20566#(<= avg_~i~0 3)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20567#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:40,025 INFO L273 TraceCheckUtils]: 82: Hoare triple {20567#(<= avg_~i~0 4)} assume true; {20567#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:40,026 INFO L273 TraceCheckUtils]: 83: Hoare triple {20567#(<= avg_~i~0 4)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20567#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:40,027 INFO L273 TraceCheckUtils]: 84: Hoare triple {20567#(<= avg_~i~0 4)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20568#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:40,027 INFO L273 TraceCheckUtils]: 85: Hoare triple {20568#(<= avg_~i~0 5)} assume true; {20568#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:40,028 INFO L273 TraceCheckUtils]: 86: Hoare triple {20568#(<= avg_~i~0 5)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20568#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:40,029 INFO L273 TraceCheckUtils]: 87: Hoare triple {20568#(<= avg_~i~0 5)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20569#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:40,029 INFO L273 TraceCheckUtils]: 88: Hoare triple {20569#(<= avg_~i~0 6)} assume true; {20569#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:40,030 INFO L273 TraceCheckUtils]: 89: Hoare triple {20569#(<= avg_~i~0 6)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20569#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:40,031 INFO L273 TraceCheckUtils]: 90: Hoare triple {20569#(<= avg_~i~0 6)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20570#(<= avg_~i~0 7)} is VALID [2018-11-14 18:50:40,031 INFO L273 TraceCheckUtils]: 91: Hoare triple {20570#(<= avg_~i~0 7)} assume true; {20570#(<= avg_~i~0 7)} is VALID [2018-11-14 18:50:40,032 INFO L273 TraceCheckUtils]: 92: Hoare triple {20570#(<= avg_~i~0 7)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20570#(<= avg_~i~0 7)} is VALID [2018-11-14 18:50:40,032 INFO L273 TraceCheckUtils]: 93: Hoare triple {20570#(<= avg_~i~0 7)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20571#(<= avg_~i~0 8)} is VALID [2018-11-14 18:50:40,033 INFO L273 TraceCheckUtils]: 94: Hoare triple {20571#(<= avg_~i~0 8)} assume true; {20571#(<= avg_~i~0 8)} is VALID [2018-11-14 18:50:40,033 INFO L273 TraceCheckUtils]: 95: Hoare triple {20571#(<= avg_~i~0 8)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20571#(<= avg_~i~0 8)} is VALID [2018-11-14 18:50:40,034 INFO L273 TraceCheckUtils]: 96: Hoare triple {20571#(<= avg_~i~0 8)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20572#(<= avg_~i~0 9)} is VALID [2018-11-14 18:50:40,035 INFO L273 TraceCheckUtils]: 97: Hoare triple {20572#(<= avg_~i~0 9)} assume true; {20572#(<= avg_~i~0 9)} is VALID [2018-11-14 18:50:40,035 INFO L273 TraceCheckUtils]: 98: Hoare triple {20572#(<= avg_~i~0 9)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20572#(<= avg_~i~0 9)} is VALID [2018-11-14 18:50:40,036 INFO L273 TraceCheckUtils]: 99: Hoare triple {20572#(<= avg_~i~0 9)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20573#(<= avg_~i~0 10)} is VALID [2018-11-14 18:50:40,036 INFO L273 TraceCheckUtils]: 100: Hoare triple {20573#(<= avg_~i~0 10)} assume true; {20573#(<= avg_~i~0 10)} is VALID [2018-11-14 18:50:40,037 INFO L273 TraceCheckUtils]: 101: Hoare triple {20573#(<= avg_~i~0 10)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20573#(<= avg_~i~0 10)} is VALID [2018-11-14 18:50:40,038 INFO L273 TraceCheckUtils]: 102: Hoare triple {20573#(<= avg_~i~0 10)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20574#(<= avg_~i~0 11)} is VALID [2018-11-14 18:50:40,038 INFO L273 TraceCheckUtils]: 103: Hoare triple {20574#(<= avg_~i~0 11)} assume true; {20574#(<= avg_~i~0 11)} is VALID [2018-11-14 18:50:40,039 INFO L273 TraceCheckUtils]: 104: Hoare triple {20574#(<= avg_~i~0 11)} assume !(~i~0 < 20); {20562#false} is VALID [2018-11-14 18:50:40,039 INFO L273 TraceCheckUtils]: 105: Hoare triple {20562#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {20562#false} is VALID [2018-11-14 18:50:40,039 INFO L273 TraceCheckUtils]: 106: Hoare triple {20562#false} assume true; {20562#false} is VALID [2018-11-14 18:50:40,039 INFO L268 TraceCheckUtils]: 107: Hoare quadruple {20562#false} {20561#true} #73#return; {20562#false} is VALID [2018-11-14 18:50:40,040 INFO L273 TraceCheckUtils]: 108: Hoare triple {20562#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); {20562#false} is VALID [2018-11-14 18:50:40,040 INFO L256 TraceCheckUtils]: 109: Hoare triple {20562#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {20561#true} is VALID [2018-11-14 18:50:40,040 INFO L273 TraceCheckUtils]: 110: Hoare triple {20561#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {20561#true} is VALID [2018-11-14 18:50:40,040 INFO L273 TraceCheckUtils]: 111: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,040 INFO L273 TraceCheckUtils]: 112: Hoare triple {20561#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20561#true} is VALID [2018-11-14 18:50:40,041 INFO L273 TraceCheckUtils]: 113: Hoare triple {20561#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20561#true} is VALID [2018-11-14 18:50:40,041 INFO L273 TraceCheckUtils]: 114: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,041 INFO L273 TraceCheckUtils]: 115: Hoare triple {20561#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20561#true} is VALID [2018-11-14 18:50:40,041 INFO L273 TraceCheckUtils]: 116: Hoare triple {20561#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20561#true} is VALID [2018-11-14 18:50:40,041 INFO L273 TraceCheckUtils]: 117: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,041 INFO L273 TraceCheckUtils]: 118: Hoare triple {20561#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20561#true} is VALID [2018-11-14 18:50:40,042 INFO L273 TraceCheckUtils]: 119: Hoare triple {20561#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20561#true} is VALID [2018-11-14 18:50:40,042 INFO L273 TraceCheckUtils]: 120: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,042 INFO L273 TraceCheckUtils]: 121: Hoare triple {20561#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20561#true} is VALID [2018-11-14 18:50:40,042 INFO L273 TraceCheckUtils]: 122: Hoare triple {20561#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20561#true} is VALID [2018-11-14 18:50:40,042 INFO L273 TraceCheckUtils]: 123: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,042 INFO L273 TraceCheckUtils]: 124: Hoare triple {20561#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20561#true} is VALID [2018-11-14 18:50:40,042 INFO L273 TraceCheckUtils]: 125: Hoare triple {20561#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20561#true} is VALID [2018-11-14 18:50:40,042 INFO L273 TraceCheckUtils]: 126: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,043 INFO L273 TraceCheckUtils]: 127: Hoare triple {20561#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20561#true} is VALID [2018-11-14 18:50:40,043 INFO L273 TraceCheckUtils]: 128: Hoare triple {20561#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20561#true} is VALID [2018-11-14 18:50:40,043 INFO L273 TraceCheckUtils]: 129: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,043 INFO L273 TraceCheckUtils]: 130: Hoare triple {20561#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20561#true} is VALID [2018-11-14 18:50:40,043 INFO L273 TraceCheckUtils]: 131: Hoare triple {20561#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20561#true} is VALID [2018-11-14 18:50:40,043 INFO L273 TraceCheckUtils]: 132: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,043 INFO L273 TraceCheckUtils]: 133: Hoare triple {20561#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20561#true} is VALID [2018-11-14 18:50:40,044 INFO L273 TraceCheckUtils]: 134: Hoare triple {20561#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20561#true} is VALID [2018-11-14 18:50:40,044 INFO L273 TraceCheckUtils]: 135: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,044 INFO L273 TraceCheckUtils]: 136: Hoare triple {20561#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20561#true} is VALID [2018-11-14 18:50:40,044 INFO L273 TraceCheckUtils]: 137: Hoare triple {20561#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20561#true} is VALID [2018-11-14 18:50:40,044 INFO L273 TraceCheckUtils]: 138: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,044 INFO L273 TraceCheckUtils]: 139: Hoare triple {20561#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20561#true} is VALID [2018-11-14 18:50:40,044 INFO L273 TraceCheckUtils]: 140: Hoare triple {20561#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20561#true} is VALID [2018-11-14 18:50:40,044 INFO L273 TraceCheckUtils]: 141: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,045 INFO L273 TraceCheckUtils]: 142: Hoare triple {20561#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20561#true} is VALID [2018-11-14 18:50:40,045 INFO L273 TraceCheckUtils]: 143: Hoare triple {20561#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20561#true} is VALID [2018-11-14 18:50:40,045 INFO L273 TraceCheckUtils]: 144: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,045 INFO L273 TraceCheckUtils]: 145: Hoare triple {20561#true} assume !(~i~0 < 20); {20561#true} is VALID [2018-11-14 18:50:40,045 INFO L273 TraceCheckUtils]: 146: Hoare triple {20561#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {20561#true} is VALID [2018-11-14 18:50:40,045 INFO L273 TraceCheckUtils]: 147: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,045 INFO L268 TraceCheckUtils]: 148: Hoare quadruple {20561#true} {20562#false} #75#return; {20562#false} is VALID [2018-11-14 18:50:40,046 INFO L273 TraceCheckUtils]: 149: Hoare triple {20562#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; {20562#false} is VALID [2018-11-14 18:50:40,046 INFO L273 TraceCheckUtils]: 150: Hoare triple {20562#false} assume true; {20562#false} is VALID [2018-11-14 18:50:40,046 INFO L273 TraceCheckUtils]: 151: Hoare triple {20562#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {20562#false} is VALID [2018-11-14 18:50:40,046 INFO L273 TraceCheckUtils]: 152: Hoare triple {20562#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {20562#false} is VALID [2018-11-14 18:50:40,046 INFO L273 TraceCheckUtils]: 153: Hoare triple {20562#false} assume true; {20562#false} is VALID [2018-11-14 18:50:40,046 INFO L273 TraceCheckUtils]: 154: Hoare triple {20562#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {20562#false} is VALID [2018-11-14 18:50:40,046 INFO L273 TraceCheckUtils]: 155: Hoare triple {20562#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {20562#false} is VALID [2018-11-14 18:50:40,046 INFO L273 TraceCheckUtils]: 156: Hoare triple {20562#false} assume true; {20562#false} is VALID [2018-11-14 18:50:40,047 INFO L273 TraceCheckUtils]: 157: Hoare triple {20562#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {20562#false} is VALID [2018-11-14 18:50:40,047 INFO L273 TraceCheckUtils]: 158: Hoare triple {20562#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {20562#false} is VALID [2018-11-14 18:50:40,047 INFO L273 TraceCheckUtils]: 159: Hoare triple {20562#false} assume true; {20562#false} is VALID [2018-11-14 18:50:40,047 INFO L273 TraceCheckUtils]: 160: Hoare triple {20562#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {20562#false} is VALID [2018-11-14 18:50:40,047 INFO L273 TraceCheckUtils]: 161: Hoare triple {20562#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {20562#false} is VALID [2018-11-14 18:50:40,047 INFO L273 TraceCheckUtils]: 162: Hoare triple {20562#false} assume true; {20562#false} is VALID [2018-11-14 18:50:40,047 INFO L273 TraceCheckUtils]: 163: Hoare triple {20562#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {20562#false} is VALID [2018-11-14 18:50:40,048 INFO L273 TraceCheckUtils]: 164: Hoare triple {20562#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {20562#false} is VALID [2018-11-14 18:50:40,048 INFO L273 TraceCheckUtils]: 165: Hoare triple {20562#false} assume true; {20562#false} is VALID [2018-11-14 18:50:40,048 INFO L273 TraceCheckUtils]: 166: Hoare triple {20562#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {20562#false} is VALID [2018-11-14 18:50:40,048 INFO L273 TraceCheckUtils]: 167: Hoare triple {20562#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {20562#false} is VALID [2018-11-14 18:50:40,048 INFO L273 TraceCheckUtils]: 168: Hoare triple {20562#false} assume true; {20562#false} is VALID [2018-11-14 18:50:40,048 INFO L273 TraceCheckUtils]: 169: Hoare triple {20562#false} assume !(~i~2 < 19); {20562#false} is VALID [2018-11-14 18:50:40,048 INFO L273 TraceCheckUtils]: 170: Hoare triple {20562#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {20562#false} is VALID [2018-11-14 18:50:40,049 INFO L256 TraceCheckUtils]: 171: Hoare triple {20562#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {20561#true} is VALID [2018-11-14 18:50:40,049 INFO L273 TraceCheckUtils]: 172: Hoare triple {20561#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {20561#true} is VALID [2018-11-14 18:50:40,049 INFO L273 TraceCheckUtils]: 173: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,049 INFO L273 TraceCheckUtils]: 174: Hoare triple {20561#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20561#true} is VALID [2018-11-14 18:50:40,049 INFO L273 TraceCheckUtils]: 175: Hoare triple {20561#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20561#true} is VALID [2018-11-14 18:50:40,049 INFO L273 TraceCheckUtils]: 176: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,049 INFO L273 TraceCheckUtils]: 177: Hoare triple {20561#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20561#true} is VALID [2018-11-14 18:50:40,049 INFO L273 TraceCheckUtils]: 178: Hoare triple {20561#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20561#true} is VALID [2018-11-14 18:50:40,050 INFO L273 TraceCheckUtils]: 179: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,050 INFO L273 TraceCheckUtils]: 180: Hoare triple {20561#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20561#true} is VALID [2018-11-14 18:50:40,050 INFO L273 TraceCheckUtils]: 181: Hoare triple {20561#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20561#true} is VALID [2018-11-14 18:50:40,050 INFO L273 TraceCheckUtils]: 182: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,050 INFO L273 TraceCheckUtils]: 183: Hoare triple {20561#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20561#true} is VALID [2018-11-14 18:50:40,050 INFO L273 TraceCheckUtils]: 184: Hoare triple {20561#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20561#true} is VALID [2018-11-14 18:50:40,050 INFO L273 TraceCheckUtils]: 185: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,051 INFO L273 TraceCheckUtils]: 186: Hoare triple {20561#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20561#true} is VALID [2018-11-14 18:50:40,051 INFO L273 TraceCheckUtils]: 187: Hoare triple {20561#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20561#true} is VALID [2018-11-14 18:50:40,051 INFO L273 TraceCheckUtils]: 188: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,051 INFO L273 TraceCheckUtils]: 189: Hoare triple {20561#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20561#true} is VALID [2018-11-14 18:50:40,052 INFO L273 TraceCheckUtils]: 190: Hoare triple {20561#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20561#true} is VALID [2018-11-14 18:50:40,052 INFO L273 TraceCheckUtils]: 191: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,052 INFO L273 TraceCheckUtils]: 192: Hoare triple {20561#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20561#true} is VALID [2018-11-14 18:50:40,052 INFO L273 TraceCheckUtils]: 193: Hoare triple {20561#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20561#true} is VALID [2018-11-14 18:50:40,052 INFO L273 TraceCheckUtils]: 194: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,052 INFO L273 TraceCheckUtils]: 195: Hoare triple {20561#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20561#true} is VALID [2018-11-14 18:50:40,052 INFO L273 TraceCheckUtils]: 196: Hoare triple {20561#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20561#true} is VALID [2018-11-14 18:50:40,052 INFO L273 TraceCheckUtils]: 197: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,052 INFO L273 TraceCheckUtils]: 198: Hoare triple {20561#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20561#true} is VALID [2018-11-14 18:50:40,053 INFO L273 TraceCheckUtils]: 199: Hoare triple {20561#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20561#true} is VALID [2018-11-14 18:50:40,053 INFO L273 TraceCheckUtils]: 200: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,053 INFO L273 TraceCheckUtils]: 201: Hoare triple {20561#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20561#true} is VALID [2018-11-14 18:50:40,053 INFO L273 TraceCheckUtils]: 202: Hoare triple {20561#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20561#true} is VALID [2018-11-14 18:50:40,053 INFO L273 TraceCheckUtils]: 203: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,053 INFO L273 TraceCheckUtils]: 204: Hoare triple {20561#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20561#true} is VALID [2018-11-14 18:50:40,053 INFO L273 TraceCheckUtils]: 205: Hoare triple {20561#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20561#true} is VALID [2018-11-14 18:50:40,053 INFO L273 TraceCheckUtils]: 206: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,053 INFO L273 TraceCheckUtils]: 207: Hoare triple {20561#true} assume !(~i~0 < 20); {20561#true} is VALID [2018-11-14 18:50:40,054 INFO L273 TraceCheckUtils]: 208: Hoare triple {20561#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {20561#true} is VALID [2018-11-14 18:50:40,054 INFO L273 TraceCheckUtils]: 209: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,054 INFO L268 TraceCheckUtils]: 210: Hoare quadruple {20561#true} {20562#false} #77#return; {20562#false} is VALID [2018-11-14 18:50:40,054 INFO L273 TraceCheckUtils]: 211: Hoare triple {20562#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {20562#false} is VALID [2018-11-14 18:50:40,054 INFO L273 TraceCheckUtils]: 212: Hoare triple {20562#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {20562#false} is VALID [2018-11-14 18:50:40,054 INFO L273 TraceCheckUtils]: 213: Hoare triple {20562#false} assume !false; {20562#false} is VALID [2018-11-14 18:50:40,093 INFO L134 CoverageAnalysis]: Checked inductivity of 2467 backedges. 0 proven. 1011 refuted. 0 times theorem prover too weak. 1456 trivial. 0 not checked. [2018-11-14 18:50:40,094 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:50:40,094 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 26 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 26 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:50:40,121 INFO L103 rtionOrderModulation]: Keeping assertion order MIX_INSIDE_OUTSIDE [2018-11-14 18:50:40,501 INFO L249 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 15 check-sat command(s) [2018-11-14 18:50:40,501 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 18:50:40,535 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:50:40,537 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:50:40,781 INFO L256 TraceCheckUtils]: 0: Hoare triple {20561#true} call ULTIMATE.init(); {20561#true} is VALID [2018-11-14 18:50:40,781 INFO L273 TraceCheckUtils]: 1: Hoare triple {20561#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {20561#true} is VALID [2018-11-14 18:50:40,781 INFO L273 TraceCheckUtils]: 2: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,781 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {20561#true} {20561#true} #69#return; {20561#true} is VALID [2018-11-14 18:50:40,782 INFO L256 TraceCheckUtils]: 4: Hoare triple {20561#true} call #t~ret12 := main(); {20561#true} is VALID [2018-11-14 18:50:40,782 INFO L273 TraceCheckUtils]: 5: Hoare triple {20561#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {20561#true} is VALID [2018-11-14 18:50:40,782 INFO L273 TraceCheckUtils]: 6: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,782 INFO L273 TraceCheckUtils]: 7: Hoare triple {20561#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20561#true} is VALID [2018-11-14 18:50:40,782 INFO L273 TraceCheckUtils]: 8: Hoare triple {20561#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20561#true} is VALID [2018-11-14 18:50:40,782 INFO L273 TraceCheckUtils]: 9: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,782 INFO L273 TraceCheckUtils]: 10: Hoare triple {20561#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20561#true} is VALID [2018-11-14 18:50:40,782 INFO L273 TraceCheckUtils]: 11: Hoare triple {20561#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20561#true} is VALID [2018-11-14 18:50:40,782 INFO L273 TraceCheckUtils]: 12: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,782 INFO L273 TraceCheckUtils]: 13: Hoare triple {20561#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20561#true} is VALID [2018-11-14 18:50:40,783 INFO L273 TraceCheckUtils]: 14: Hoare triple {20561#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20561#true} is VALID [2018-11-14 18:50:40,783 INFO L273 TraceCheckUtils]: 15: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,783 INFO L273 TraceCheckUtils]: 16: Hoare triple {20561#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20561#true} is VALID [2018-11-14 18:50:40,783 INFO L273 TraceCheckUtils]: 17: Hoare triple {20561#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20561#true} is VALID [2018-11-14 18:50:40,783 INFO L273 TraceCheckUtils]: 18: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,783 INFO L273 TraceCheckUtils]: 19: Hoare triple {20561#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20561#true} is VALID [2018-11-14 18:50:40,783 INFO L273 TraceCheckUtils]: 20: Hoare triple {20561#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20561#true} is VALID [2018-11-14 18:50:40,783 INFO L273 TraceCheckUtils]: 21: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,783 INFO L273 TraceCheckUtils]: 22: Hoare triple {20561#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20561#true} is VALID [2018-11-14 18:50:40,783 INFO L273 TraceCheckUtils]: 23: Hoare triple {20561#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20561#true} is VALID [2018-11-14 18:50:40,784 INFO L273 TraceCheckUtils]: 24: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,784 INFO L273 TraceCheckUtils]: 25: Hoare triple {20561#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20561#true} is VALID [2018-11-14 18:50:40,784 INFO L273 TraceCheckUtils]: 26: Hoare triple {20561#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20561#true} is VALID [2018-11-14 18:50:40,784 INFO L273 TraceCheckUtils]: 27: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,784 INFO L273 TraceCheckUtils]: 28: Hoare triple {20561#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20561#true} is VALID [2018-11-14 18:50:40,784 INFO L273 TraceCheckUtils]: 29: Hoare triple {20561#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20561#true} is VALID [2018-11-14 18:50:40,784 INFO L273 TraceCheckUtils]: 30: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,784 INFO L273 TraceCheckUtils]: 31: Hoare triple {20561#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20561#true} is VALID [2018-11-14 18:50:40,784 INFO L273 TraceCheckUtils]: 32: Hoare triple {20561#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20561#true} is VALID [2018-11-14 18:50:40,784 INFO L273 TraceCheckUtils]: 33: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,785 INFO L273 TraceCheckUtils]: 34: Hoare triple {20561#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20561#true} is VALID [2018-11-14 18:50:40,785 INFO L273 TraceCheckUtils]: 35: Hoare triple {20561#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20561#true} is VALID [2018-11-14 18:50:40,785 INFO L273 TraceCheckUtils]: 36: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,785 INFO L273 TraceCheckUtils]: 37: Hoare triple {20561#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20561#true} is VALID [2018-11-14 18:50:40,785 INFO L273 TraceCheckUtils]: 38: Hoare triple {20561#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20561#true} is VALID [2018-11-14 18:50:40,785 INFO L273 TraceCheckUtils]: 39: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,785 INFO L273 TraceCheckUtils]: 40: Hoare triple {20561#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20561#true} is VALID [2018-11-14 18:50:40,785 INFO L273 TraceCheckUtils]: 41: Hoare triple {20561#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20561#true} is VALID [2018-11-14 18:50:40,785 INFO L273 TraceCheckUtils]: 42: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,786 INFO L273 TraceCheckUtils]: 43: Hoare triple {20561#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20561#true} is VALID [2018-11-14 18:50:40,786 INFO L273 TraceCheckUtils]: 44: Hoare triple {20561#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20561#true} is VALID [2018-11-14 18:50:40,786 INFO L273 TraceCheckUtils]: 45: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,786 INFO L273 TraceCheckUtils]: 46: Hoare triple {20561#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20561#true} is VALID [2018-11-14 18:50:40,786 INFO L273 TraceCheckUtils]: 47: Hoare triple {20561#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20561#true} is VALID [2018-11-14 18:50:40,786 INFO L273 TraceCheckUtils]: 48: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,786 INFO L273 TraceCheckUtils]: 49: Hoare triple {20561#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20561#true} is VALID [2018-11-14 18:50:40,786 INFO L273 TraceCheckUtils]: 50: Hoare triple {20561#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20561#true} is VALID [2018-11-14 18:50:40,786 INFO L273 TraceCheckUtils]: 51: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,786 INFO L273 TraceCheckUtils]: 52: Hoare triple {20561#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20561#true} is VALID [2018-11-14 18:50:40,787 INFO L273 TraceCheckUtils]: 53: Hoare triple {20561#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20561#true} is VALID [2018-11-14 18:50:40,787 INFO L273 TraceCheckUtils]: 54: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,787 INFO L273 TraceCheckUtils]: 55: Hoare triple {20561#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20561#true} is VALID [2018-11-14 18:50:40,787 INFO L273 TraceCheckUtils]: 56: Hoare triple {20561#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20561#true} is VALID [2018-11-14 18:50:40,787 INFO L273 TraceCheckUtils]: 57: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,787 INFO L273 TraceCheckUtils]: 58: Hoare triple {20561#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20561#true} is VALID [2018-11-14 18:50:40,787 INFO L273 TraceCheckUtils]: 59: Hoare triple {20561#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20561#true} is VALID [2018-11-14 18:50:40,787 INFO L273 TraceCheckUtils]: 60: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,787 INFO L273 TraceCheckUtils]: 61: Hoare triple {20561#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20561#true} is VALID [2018-11-14 18:50:40,787 INFO L273 TraceCheckUtils]: 62: Hoare triple {20561#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20561#true} is VALID [2018-11-14 18:50:40,788 INFO L273 TraceCheckUtils]: 63: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,788 INFO L273 TraceCheckUtils]: 64: Hoare triple {20561#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20561#true} is VALID [2018-11-14 18:50:40,788 INFO L273 TraceCheckUtils]: 65: Hoare triple {20561#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20561#true} is VALID [2018-11-14 18:50:40,788 INFO L273 TraceCheckUtils]: 66: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,788 INFO L273 TraceCheckUtils]: 67: Hoare triple {20561#true} assume !(~i~1 < 20); {20561#true} is VALID [2018-11-14 18:50:40,788 INFO L256 TraceCheckUtils]: 68: Hoare triple {20561#true} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {20561#true} is VALID [2018-11-14 18:50:40,788 INFO L273 TraceCheckUtils]: 69: Hoare triple {20561#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {20561#true} is VALID [2018-11-14 18:50:40,788 INFO L273 TraceCheckUtils]: 70: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,788 INFO L273 TraceCheckUtils]: 71: Hoare triple {20561#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20561#true} is VALID [2018-11-14 18:50:40,788 INFO L273 TraceCheckUtils]: 72: Hoare triple {20561#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20561#true} is VALID [2018-11-14 18:50:40,789 INFO L273 TraceCheckUtils]: 73: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,789 INFO L273 TraceCheckUtils]: 74: Hoare triple {20561#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20561#true} is VALID [2018-11-14 18:50:40,789 INFO L273 TraceCheckUtils]: 75: Hoare triple {20561#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20561#true} is VALID [2018-11-14 18:50:40,789 INFO L273 TraceCheckUtils]: 76: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,789 INFO L273 TraceCheckUtils]: 77: Hoare triple {20561#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20561#true} is VALID [2018-11-14 18:50:40,789 INFO L273 TraceCheckUtils]: 78: Hoare triple {20561#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20561#true} is VALID [2018-11-14 18:50:40,789 INFO L273 TraceCheckUtils]: 79: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,789 INFO L273 TraceCheckUtils]: 80: Hoare triple {20561#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20561#true} is VALID [2018-11-14 18:50:40,789 INFO L273 TraceCheckUtils]: 81: Hoare triple {20561#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20561#true} is VALID [2018-11-14 18:50:40,790 INFO L273 TraceCheckUtils]: 82: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,790 INFO L273 TraceCheckUtils]: 83: Hoare triple {20561#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20561#true} is VALID [2018-11-14 18:50:40,790 INFO L273 TraceCheckUtils]: 84: Hoare triple {20561#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20561#true} is VALID [2018-11-14 18:50:40,790 INFO L273 TraceCheckUtils]: 85: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,790 INFO L273 TraceCheckUtils]: 86: Hoare triple {20561#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20561#true} is VALID [2018-11-14 18:50:40,790 INFO L273 TraceCheckUtils]: 87: Hoare triple {20561#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20561#true} is VALID [2018-11-14 18:50:40,790 INFO L273 TraceCheckUtils]: 88: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,790 INFO L273 TraceCheckUtils]: 89: Hoare triple {20561#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20561#true} is VALID [2018-11-14 18:50:40,790 INFO L273 TraceCheckUtils]: 90: Hoare triple {20561#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20561#true} is VALID [2018-11-14 18:50:40,790 INFO L273 TraceCheckUtils]: 91: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,791 INFO L273 TraceCheckUtils]: 92: Hoare triple {20561#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20561#true} is VALID [2018-11-14 18:50:40,791 INFO L273 TraceCheckUtils]: 93: Hoare triple {20561#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20561#true} is VALID [2018-11-14 18:50:40,791 INFO L273 TraceCheckUtils]: 94: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,791 INFO L273 TraceCheckUtils]: 95: Hoare triple {20561#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20561#true} is VALID [2018-11-14 18:50:40,791 INFO L273 TraceCheckUtils]: 96: Hoare triple {20561#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20561#true} is VALID [2018-11-14 18:50:40,791 INFO L273 TraceCheckUtils]: 97: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,791 INFO L273 TraceCheckUtils]: 98: Hoare triple {20561#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20561#true} is VALID [2018-11-14 18:50:40,791 INFO L273 TraceCheckUtils]: 99: Hoare triple {20561#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20561#true} is VALID [2018-11-14 18:50:40,791 INFO L273 TraceCheckUtils]: 100: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,791 INFO L273 TraceCheckUtils]: 101: Hoare triple {20561#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20561#true} is VALID [2018-11-14 18:50:40,792 INFO L273 TraceCheckUtils]: 102: Hoare triple {20561#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20561#true} is VALID [2018-11-14 18:50:40,792 INFO L273 TraceCheckUtils]: 103: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,792 INFO L273 TraceCheckUtils]: 104: Hoare triple {20561#true} assume !(~i~0 < 20); {20561#true} is VALID [2018-11-14 18:50:40,792 INFO L273 TraceCheckUtils]: 105: Hoare triple {20561#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {20561#true} is VALID [2018-11-14 18:50:40,792 INFO L273 TraceCheckUtils]: 106: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,792 INFO L268 TraceCheckUtils]: 107: Hoare quadruple {20561#true} {20561#true} #73#return; {20561#true} is VALID [2018-11-14 18:50:40,792 INFO L273 TraceCheckUtils]: 108: Hoare triple {20561#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); {20561#true} is VALID [2018-11-14 18:50:40,792 INFO L256 TraceCheckUtils]: 109: Hoare triple {20561#true} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {20561#true} is VALID [2018-11-14 18:50:40,792 INFO L273 TraceCheckUtils]: 110: Hoare triple {20561#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {20561#true} is VALID [2018-11-14 18:50:40,792 INFO L273 TraceCheckUtils]: 111: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,793 INFO L273 TraceCheckUtils]: 112: Hoare triple {20561#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20561#true} is VALID [2018-11-14 18:50:40,793 INFO L273 TraceCheckUtils]: 113: Hoare triple {20561#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20561#true} is VALID [2018-11-14 18:50:40,793 INFO L273 TraceCheckUtils]: 114: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,793 INFO L273 TraceCheckUtils]: 115: Hoare triple {20561#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20561#true} is VALID [2018-11-14 18:50:40,793 INFO L273 TraceCheckUtils]: 116: Hoare triple {20561#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20561#true} is VALID [2018-11-14 18:50:40,793 INFO L273 TraceCheckUtils]: 117: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,793 INFO L273 TraceCheckUtils]: 118: Hoare triple {20561#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20561#true} is VALID [2018-11-14 18:50:40,793 INFO L273 TraceCheckUtils]: 119: Hoare triple {20561#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20561#true} is VALID [2018-11-14 18:50:40,793 INFO L273 TraceCheckUtils]: 120: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,794 INFO L273 TraceCheckUtils]: 121: Hoare triple {20561#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20561#true} is VALID [2018-11-14 18:50:40,794 INFO L273 TraceCheckUtils]: 122: Hoare triple {20561#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20561#true} is VALID [2018-11-14 18:50:40,794 INFO L273 TraceCheckUtils]: 123: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,794 INFO L273 TraceCheckUtils]: 124: Hoare triple {20561#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20561#true} is VALID [2018-11-14 18:50:40,794 INFO L273 TraceCheckUtils]: 125: Hoare triple {20561#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20561#true} is VALID [2018-11-14 18:50:40,794 INFO L273 TraceCheckUtils]: 126: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,794 INFO L273 TraceCheckUtils]: 127: Hoare triple {20561#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20561#true} is VALID [2018-11-14 18:50:40,794 INFO L273 TraceCheckUtils]: 128: Hoare triple {20561#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20561#true} is VALID [2018-11-14 18:50:40,794 INFO L273 TraceCheckUtils]: 129: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,794 INFO L273 TraceCheckUtils]: 130: Hoare triple {20561#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20561#true} is VALID [2018-11-14 18:50:40,795 INFO L273 TraceCheckUtils]: 131: Hoare triple {20561#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20561#true} is VALID [2018-11-14 18:50:40,795 INFO L273 TraceCheckUtils]: 132: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,795 INFO L273 TraceCheckUtils]: 133: Hoare triple {20561#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20561#true} is VALID [2018-11-14 18:50:40,795 INFO L273 TraceCheckUtils]: 134: Hoare triple {20561#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20561#true} is VALID [2018-11-14 18:50:40,795 INFO L273 TraceCheckUtils]: 135: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,795 INFO L273 TraceCheckUtils]: 136: Hoare triple {20561#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20561#true} is VALID [2018-11-14 18:50:40,795 INFO L273 TraceCheckUtils]: 137: Hoare triple {20561#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20561#true} is VALID [2018-11-14 18:50:40,795 INFO L273 TraceCheckUtils]: 138: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,795 INFO L273 TraceCheckUtils]: 139: Hoare triple {20561#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20561#true} is VALID [2018-11-14 18:50:40,795 INFO L273 TraceCheckUtils]: 140: Hoare triple {20561#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20561#true} is VALID [2018-11-14 18:50:40,796 INFO L273 TraceCheckUtils]: 141: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,796 INFO L273 TraceCheckUtils]: 142: Hoare triple {20561#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20561#true} is VALID [2018-11-14 18:50:40,796 INFO L273 TraceCheckUtils]: 143: Hoare triple {20561#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20561#true} is VALID [2018-11-14 18:50:40,796 INFO L273 TraceCheckUtils]: 144: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,796 INFO L273 TraceCheckUtils]: 145: Hoare triple {20561#true} assume !(~i~0 < 20); {20561#true} is VALID [2018-11-14 18:50:40,796 INFO L273 TraceCheckUtils]: 146: Hoare triple {20561#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {20561#true} is VALID [2018-11-14 18:50:40,796 INFO L273 TraceCheckUtils]: 147: Hoare triple {20561#true} assume true; {20561#true} is VALID [2018-11-14 18:50:40,796 INFO L268 TraceCheckUtils]: 148: Hoare quadruple {20561#true} {20561#true} #75#return; {20561#true} is VALID [2018-11-14 18:50:40,797 INFO L273 TraceCheckUtils]: 149: Hoare triple {20561#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; {21025#(<= main_~i~2 0)} is VALID [2018-11-14 18:50:40,797 INFO L273 TraceCheckUtils]: 150: Hoare triple {21025#(<= main_~i~2 0)} assume true; {21025#(<= main_~i~2 0)} is VALID [2018-11-14 18:50:40,797 INFO L273 TraceCheckUtils]: 151: Hoare triple {21025#(<= main_~i~2 0)} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.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 0)} is VALID [2018-11-14 18:50:40,798 INFO L273 TraceCheckUtils]: 152: Hoare triple {21025#(<= main_~i~2 0)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {21035#(<= main_~i~2 1)} is VALID [2018-11-14 18:50:40,798 INFO L273 TraceCheckUtils]: 153: Hoare triple {21035#(<= main_~i~2 1)} assume true; {21035#(<= main_~i~2 1)} is VALID [2018-11-14 18:50:40,798 INFO L273 TraceCheckUtils]: 154: Hoare triple {21035#(<= main_~i~2 1)} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {21035#(<= main_~i~2 1)} is VALID [2018-11-14 18:50:40,799 INFO L273 TraceCheckUtils]: 155: Hoare triple {21035#(<= main_~i~2 1)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {21045#(<= main_~i~2 2)} is VALID [2018-11-14 18:50:40,799 INFO L273 TraceCheckUtils]: 156: Hoare triple {21045#(<= main_~i~2 2)} assume true; {21045#(<= main_~i~2 2)} is VALID [2018-11-14 18:50:40,799 INFO L273 TraceCheckUtils]: 157: Hoare triple {21045#(<= main_~i~2 2)} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {21045#(<= main_~i~2 2)} is VALID [2018-11-14 18:50:40,800 INFO L273 TraceCheckUtils]: 158: Hoare triple {21045#(<= main_~i~2 2)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {21055#(<= main_~i~2 3)} is VALID [2018-11-14 18:50:40,800 INFO L273 TraceCheckUtils]: 159: Hoare triple {21055#(<= main_~i~2 3)} assume true; {21055#(<= main_~i~2 3)} is VALID [2018-11-14 18:50:40,800 INFO L273 TraceCheckUtils]: 160: Hoare triple {21055#(<= main_~i~2 3)} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {21055#(<= main_~i~2 3)} is VALID [2018-11-14 18:50:40,801 INFO L273 TraceCheckUtils]: 161: Hoare triple {21055#(<= main_~i~2 3)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {21065#(<= main_~i~2 4)} is VALID [2018-11-14 18:50:40,801 INFO L273 TraceCheckUtils]: 162: Hoare triple {21065#(<= main_~i~2 4)} assume true; {21065#(<= main_~i~2 4)} is VALID [2018-11-14 18:50:40,802 INFO L273 TraceCheckUtils]: 163: Hoare triple {21065#(<= main_~i~2 4)} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {21065#(<= main_~i~2 4)} is VALID [2018-11-14 18:50:40,802 INFO L273 TraceCheckUtils]: 164: Hoare triple {21065#(<= main_~i~2 4)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {21075#(<= main_~i~2 5)} is VALID [2018-11-14 18:50:40,803 INFO L273 TraceCheckUtils]: 165: Hoare triple {21075#(<= main_~i~2 5)} assume true; {21075#(<= main_~i~2 5)} is VALID [2018-11-14 18:50:40,803 INFO L273 TraceCheckUtils]: 166: Hoare triple {21075#(<= main_~i~2 5)} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {21075#(<= main_~i~2 5)} is VALID [2018-11-14 18:50:40,804 INFO L273 TraceCheckUtils]: 167: Hoare triple {21075#(<= main_~i~2 5)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {21085#(<= main_~i~2 6)} is VALID [2018-11-14 18:50:40,805 INFO L273 TraceCheckUtils]: 168: Hoare triple {21085#(<= main_~i~2 6)} assume true; {21085#(<= main_~i~2 6)} is VALID [2018-11-14 18:50:40,805 INFO L273 TraceCheckUtils]: 169: Hoare triple {21085#(<= main_~i~2 6)} assume !(~i~2 < 19); {20562#false} is VALID [2018-11-14 18:50:40,805 INFO L273 TraceCheckUtils]: 170: Hoare triple {20562#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {20562#false} is VALID [2018-11-14 18:50:40,806 INFO L256 TraceCheckUtils]: 171: Hoare triple {20562#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {20562#false} is VALID [2018-11-14 18:50:40,806 INFO L273 TraceCheckUtils]: 172: Hoare triple {20562#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {20562#false} is VALID [2018-11-14 18:50:40,806 INFO L273 TraceCheckUtils]: 173: Hoare triple {20562#false} assume true; {20562#false} is VALID [2018-11-14 18:50:40,806 INFO L273 TraceCheckUtils]: 174: Hoare triple {20562#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20562#false} is VALID [2018-11-14 18:50:40,806 INFO L273 TraceCheckUtils]: 175: Hoare triple {20562#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20562#false} is VALID [2018-11-14 18:50:40,806 INFO L273 TraceCheckUtils]: 176: Hoare triple {20562#false} assume true; {20562#false} is VALID [2018-11-14 18:50:40,807 INFO L273 TraceCheckUtils]: 177: Hoare triple {20562#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20562#false} is VALID [2018-11-14 18:50:40,807 INFO L273 TraceCheckUtils]: 178: Hoare triple {20562#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20562#false} is VALID [2018-11-14 18:50:40,807 INFO L273 TraceCheckUtils]: 179: Hoare triple {20562#false} assume true; {20562#false} is VALID [2018-11-14 18:50:40,807 INFO L273 TraceCheckUtils]: 180: Hoare triple {20562#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20562#false} is VALID [2018-11-14 18:50:40,807 INFO L273 TraceCheckUtils]: 181: Hoare triple {20562#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20562#false} is VALID [2018-11-14 18:50:40,807 INFO L273 TraceCheckUtils]: 182: Hoare triple {20562#false} assume true; {20562#false} is VALID [2018-11-14 18:50:40,808 INFO L273 TraceCheckUtils]: 183: Hoare triple {20562#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20562#false} is VALID [2018-11-14 18:50:40,808 INFO L273 TraceCheckUtils]: 184: Hoare triple {20562#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20562#false} is VALID [2018-11-14 18:50:40,808 INFO L273 TraceCheckUtils]: 185: Hoare triple {20562#false} assume true; {20562#false} is VALID [2018-11-14 18:50:40,808 INFO L273 TraceCheckUtils]: 186: Hoare triple {20562#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20562#false} is VALID [2018-11-14 18:50:40,808 INFO L273 TraceCheckUtils]: 187: Hoare triple {20562#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20562#false} is VALID [2018-11-14 18:50:40,808 INFO L273 TraceCheckUtils]: 188: Hoare triple {20562#false} assume true; {20562#false} is VALID [2018-11-14 18:50:40,808 INFO L273 TraceCheckUtils]: 189: Hoare triple {20562#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20562#false} is VALID [2018-11-14 18:50:40,808 INFO L273 TraceCheckUtils]: 190: Hoare triple {20562#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20562#false} is VALID [2018-11-14 18:50:40,808 INFO L273 TraceCheckUtils]: 191: Hoare triple {20562#false} assume true; {20562#false} is VALID [2018-11-14 18:50:40,808 INFO L273 TraceCheckUtils]: 192: Hoare triple {20562#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20562#false} is VALID [2018-11-14 18:50:40,809 INFO L273 TraceCheckUtils]: 193: Hoare triple {20562#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20562#false} is VALID [2018-11-14 18:50:40,809 INFO L273 TraceCheckUtils]: 194: Hoare triple {20562#false} assume true; {20562#false} is VALID [2018-11-14 18:50:40,809 INFO L273 TraceCheckUtils]: 195: Hoare triple {20562#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20562#false} is VALID [2018-11-14 18:50:40,809 INFO L273 TraceCheckUtils]: 196: Hoare triple {20562#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20562#false} is VALID [2018-11-14 18:50:40,809 INFO L273 TraceCheckUtils]: 197: Hoare triple {20562#false} assume true; {20562#false} is VALID [2018-11-14 18:50:40,809 INFO L273 TraceCheckUtils]: 198: Hoare triple {20562#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20562#false} is VALID [2018-11-14 18:50:40,809 INFO L273 TraceCheckUtils]: 199: Hoare triple {20562#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20562#false} is VALID [2018-11-14 18:50:40,809 INFO L273 TraceCheckUtils]: 200: Hoare triple {20562#false} assume true; {20562#false} is VALID [2018-11-14 18:50:40,809 INFO L273 TraceCheckUtils]: 201: Hoare triple {20562#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20562#false} is VALID [2018-11-14 18:50:40,809 INFO L273 TraceCheckUtils]: 202: Hoare triple {20562#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20562#false} is VALID [2018-11-14 18:50:40,810 INFO L273 TraceCheckUtils]: 203: Hoare triple {20562#false} assume true; {20562#false} is VALID [2018-11-14 18:50:40,810 INFO L273 TraceCheckUtils]: 204: Hoare triple {20562#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {20562#false} is VALID [2018-11-14 18:50:40,810 INFO L273 TraceCheckUtils]: 205: Hoare triple {20562#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20562#false} is VALID [2018-11-14 18:50:40,810 INFO L273 TraceCheckUtils]: 206: Hoare triple {20562#false} assume true; {20562#false} is VALID [2018-11-14 18:50:40,810 INFO L273 TraceCheckUtils]: 207: Hoare triple {20562#false} assume !(~i~0 < 20); {20562#false} is VALID [2018-11-14 18:50:40,810 INFO L273 TraceCheckUtils]: 208: Hoare triple {20562#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {20562#false} is VALID [2018-11-14 18:50:40,810 INFO L273 TraceCheckUtils]: 209: Hoare triple {20562#false} assume true; {20562#false} is VALID [2018-11-14 18:50:40,810 INFO L268 TraceCheckUtils]: 210: Hoare quadruple {20562#false} {20562#false} #77#return; {20562#false} is VALID [2018-11-14 18:50:40,810 INFO L273 TraceCheckUtils]: 211: Hoare triple {20562#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {20562#false} is VALID [2018-11-14 18:50:40,810 INFO L273 TraceCheckUtils]: 212: Hoare triple {20562#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {20562#false} is VALID [2018-11-14 18:50:40,811 INFO L273 TraceCheckUtils]: 213: Hoare triple {20562#false} assume !false; {20562#false} is VALID [2018-11-14 18:50:40,827 INFO L134 CoverageAnalysis]: Checked inductivity of 2467 backedges. 826 proven. 57 refuted. 0 times theorem prover too weak. 1584 trivial. 0 not checked. [2018-11-14 18:50:40,847 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:50:40,847 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 9] total 21 [2018-11-14 18:50:40,848 INFO L78 Accepts]: Start accepts. Automaton has 21 states. Word has length 214 [2018-11-14 18:50:40,848 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:50:40,848 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 21 states. [2018-11-14 18:50:40,943 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 103 edges. 103 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:50:40,943 INFO L459 AbstractCegarLoop]: Interpolant automaton has 21 states [2018-11-14 18:50:40,943 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2018-11-14 18:50:40,943 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=126, Invalid=294, Unknown=0, NotChecked=0, Total=420 [2018-11-14 18:50:40,943 INFO L87 Difference]: Start difference. First operand 137 states and 141 transitions. Second operand 21 states. [2018-11-14 18:50:41,481 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:41,481 INFO L93 Difference]: Finished difference Result 213 states and 224 transitions. [2018-11-14 18:50:41,481 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 21 states. [2018-11-14 18:50:41,481 INFO L78 Accepts]: Start accepts. Automaton has 21 states. Word has length 214 [2018-11-14 18:50:41,481 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:50:41,481 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 21 states. [2018-11-14 18:50:41,482 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 116 transitions. [2018-11-14 18:50:41,483 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 21 states. [2018-11-14 18:50:41,484 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 116 transitions. [2018-11-14 18:50:41,484 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 21 states and 116 transitions. [2018-11-14 18:50:41,602 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 116 edges. 116 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:50:41,606 INFO L225 Difference]: With dead ends: 213 [2018-11-14 18:50:41,606 INFO L226 Difference]: Without dead ends: 145 [2018-11-14 18:50:41,606 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 227 GetRequests, 208 SyntacticMatches, 0 SemanticMatches, 19 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 77 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=126, Invalid=294, Unknown=0, NotChecked=0, Total=420 [2018-11-14 18:50:41,606 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 145 states. [2018-11-14 18:50:41,692 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 145 to 143. [2018-11-14 18:50:41,692 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:50:41,692 INFO L82 GeneralOperation]: Start isEquivalent. First operand 145 states. Second operand 143 states. [2018-11-14 18:50:41,692 INFO L74 IsIncluded]: Start isIncluded. First operand 145 states. Second operand 143 states. [2018-11-14 18:50:41,693 INFO L87 Difference]: Start difference. First operand 145 states. Second operand 143 states. [2018-11-14 18:50:41,695 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:41,695 INFO L93 Difference]: Finished difference Result 145 states and 149 transitions. [2018-11-14 18:50:41,695 INFO L276 IsEmpty]: Start isEmpty. Operand 145 states and 149 transitions. [2018-11-14 18:50:41,696 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:50:41,696 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:50:41,696 INFO L74 IsIncluded]: Start isIncluded. First operand 143 states. Second operand 145 states. [2018-11-14 18:50:41,696 INFO L87 Difference]: Start difference. First operand 143 states. Second operand 145 states. [2018-11-14 18:50:41,699 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:41,699 INFO L93 Difference]: Finished difference Result 145 states and 149 transitions. [2018-11-14 18:50:41,699 INFO L276 IsEmpty]: Start isEmpty. Operand 145 states and 149 transitions. [2018-11-14 18:50:41,699 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:50:41,699 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:50:41,699 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:50:41,700 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:50:41,700 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 143 states. [2018-11-14 18:50:41,702 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 143 states to 143 states and 147 transitions. [2018-11-14 18:50:41,702 INFO L78 Accepts]: Start accepts. Automaton has 143 states and 147 transitions. Word has length 214 [2018-11-14 18:50:41,702 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:50:41,702 INFO L480 AbstractCegarLoop]: Abstraction has 143 states and 147 transitions. [2018-11-14 18:50:41,702 INFO L481 AbstractCegarLoop]: Interpolant automaton has 21 states. [2018-11-14 18:50:41,702 INFO L276 IsEmpty]: Start isEmpty. Operand 143 states and 147 transitions. [2018-11-14 18:50:41,703 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 227 [2018-11-14 18:50:41,703 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:50:41,704 INFO L375 BasicCegarLoop]: trace histogram [39, 36, 36, 21, 20, 20, 8, 7, 7, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:50:41,704 INFO L423 AbstractCegarLoop]: === Iteration 29 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:50:41,704 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:50:41,704 INFO L82 PathProgramCache]: Analyzing trace with hash -2144545323, now seen corresponding path program 25 times [2018-11-14 18:50:41,704 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:50:41,704 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:50:41,705 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:50:41,705 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 18:50:41,705 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:50:41,734 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:50:42,154 INFO L256 TraceCheckUtils]: 0: Hoare triple {21991#true} call ULTIMATE.init(); {21991#true} is VALID [2018-11-14 18:50:42,154 INFO L273 TraceCheckUtils]: 1: Hoare triple {21991#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {21991#true} is VALID [2018-11-14 18:50:42,154 INFO L273 TraceCheckUtils]: 2: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,155 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {21991#true} {21991#true} #69#return; {21991#true} is VALID [2018-11-14 18:50:42,155 INFO L256 TraceCheckUtils]: 4: Hoare triple {21991#true} call #t~ret12 := main(); {21991#true} is VALID [2018-11-14 18:50:42,155 INFO L273 TraceCheckUtils]: 5: Hoare triple {21991#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {21991#true} is VALID [2018-11-14 18:50:42,155 INFO L273 TraceCheckUtils]: 6: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,155 INFO L273 TraceCheckUtils]: 7: Hoare triple {21991#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21991#true} is VALID [2018-11-14 18:50:42,155 INFO L273 TraceCheckUtils]: 8: Hoare triple {21991#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21991#true} is VALID [2018-11-14 18:50:42,155 INFO L273 TraceCheckUtils]: 9: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,155 INFO L273 TraceCheckUtils]: 10: Hoare triple {21991#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21991#true} is VALID [2018-11-14 18:50:42,155 INFO L273 TraceCheckUtils]: 11: Hoare triple {21991#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21991#true} is VALID [2018-11-14 18:50:42,155 INFO L273 TraceCheckUtils]: 12: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,156 INFO L273 TraceCheckUtils]: 13: Hoare triple {21991#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21991#true} is VALID [2018-11-14 18:50:42,156 INFO L273 TraceCheckUtils]: 14: Hoare triple {21991#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21991#true} is VALID [2018-11-14 18:50:42,156 INFO L273 TraceCheckUtils]: 15: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,156 INFO L273 TraceCheckUtils]: 16: Hoare triple {21991#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21991#true} is VALID [2018-11-14 18:50:42,156 INFO L273 TraceCheckUtils]: 17: Hoare triple {21991#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21991#true} is VALID [2018-11-14 18:50:42,156 INFO L273 TraceCheckUtils]: 18: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,156 INFO L273 TraceCheckUtils]: 19: Hoare triple {21991#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21991#true} is VALID [2018-11-14 18:50:42,156 INFO L273 TraceCheckUtils]: 20: Hoare triple {21991#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21991#true} is VALID [2018-11-14 18:50:42,156 INFO L273 TraceCheckUtils]: 21: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,157 INFO L273 TraceCheckUtils]: 22: Hoare triple {21991#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21991#true} is VALID [2018-11-14 18:50:42,157 INFO L273 TraceCheckUtils]: 23: Hoare triple {21991#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21991#true} is VALID [2018-11-14 18:50:42,157 INFO L273 TraceCheckUtils]: 24: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,157 INFO L273 TraceCheckUtils]: 25: Hoare triple {21991#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21991#true} is VALID [2018-11-14 18:50:42,157 INFO L273 TraceCheckUtils]: 26: Hoare triple {21991#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21991#true} is VALID [2018-11-14 18:50:42,157 INFO L273 TraceCheckUtils]: 27: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,157 INFO L273 TraceCheckUtils]: 28: Hoare triple {21991#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21991#true} is VALID [2018-11-14 18:50:42,157 INFO L273 TraceCheckUtils]: 29: Hoare triple {21991#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21991#true} is VALID [2018-11-14 18:50:42,157 INFO L273 TraceCheckUtils]: 30: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,157 INFO L273 TraceCheckUtils]: 31: Hoare triple {21991#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21991#true} is VALID [2018-11-14 18:50:42,158 INFO L273 TraceCheckUtils]: 32: Hoare triple {21991#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21991#true} is VALID [2018-11-14 18:50:42,158 INFO L273 TraceCheckUtils]: 33: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,158 INFO L273 TraceCheckUtils]: 34: Hoare triple {21991#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21991#true} is VALID [2018-11-14 18:50:42,158 INFO L273 TraceCheckUtils]: 35: Hoare triple {21991#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21991#true} is VALID [2018-11-14 18:50:42,158 INFO L273 TraceCheckUtils]: 36: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,158 INFO L273 TraceCheckUtils]: 37: Hoare triple {21991#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21991#true} is VALID [2018-11-14 18:50:42,158 INFO L273 TraceCheckUtils]: 38: Hoare triple {21991#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21991#true} is VALID [2018-11-14 18:50:42,158 INFO L273 TraceCheckUtils]: 39: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,158 INFO L273 TraceCheckUtils]: 40: Hoare triple {21991#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21991#true} is VALID [2018-11-14 18:50:42,158 INFO L273 TraceCheckUtils]: 41: Hoare triple {21991#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21991#true} is VALID [2018-11-14 18:50:42,159 INFO L273 TraceCheckUtils]: 42: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,159 INFO L273 TraceCheckUtils]: 43: Hoare triple {21991#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21991#true} is VALID [2018-11-14 18:50:42,159 INFO L273 TraceCheckUtils]: 44: Hoare triple {21991#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21991#true} is VALID [2018-11-14 18:50:42,159 INFO L273 TraceCheckUtils]: 45: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,159 INFO L273 TraceCheckUtils]: 46: Hoare triple {21991#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21991#true} is VALID [2018-11-14 18:50:42,159 INFO L273 TraceCheckUtils]: 47: Hoare triple {21991#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21991#true} is VALID [2018-11-14 18:50:42,159 INFO L273 TraceCheckUtils]: 48: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,159 INFO L273 TraceCheckUtils]: 49: Hoare triple {21991#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21991#true} is VALID [2018-11-14 18:50:42,159 INFO L273 TraceCheckUtils]: 50: Hoare triple {21991#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21991#true} is VALID [2018-11-14 18:50:42,159 INFO L273 TraceCheckUtils]: 51: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,160 INFO L273 TraceCheckUtils]: 52: Hoare triple {21991#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21991#true} is VALID [2018-11-14 18:50:42,160 INFO L273 TraceCheckUtils]: 53: Hoare triple {21991#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21991#true} is VALID [2018-11-14 18:50:42,160 INFO L273 TraceCheckUtils]: 54: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,160 INFO L273 TraceCheckUtils]: 55: Hoare triple {21991#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21991#true} is VALID [2018-11-14 18:50:42,160 INFO L273 TraceCheckUtils]: 56: Hoare triple {21991#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21991#true} is VALID [2018-11-14 18:50:42,160 INFO L273 TraceCheckUtils]: 57: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,160 INFO L273 TraceCheckUtils]: 58: Hoare triple {21991#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21991#true} is VALID [2018-11-14 18:50:42,160 INFO L273 TraceCheckUtils]: 59: Hoare triple {21991#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21991#true} is VALID [2018-11-14 18:50:42,160 INFO L273 TraceCheckUtils]: 60: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,161 INFO L273 TraceCheckUtils]: 61: Hoare triple {21991#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21991#true} is VALID [2018-11-14 18:50:42,161 INFO L273 TraceCheckUtils]: 62: Hoare triple {21991#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21991#true} is VALID [2018-11-14 18:50:42,161 INFO L273 TraceCheckUtils]: 63: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,161 INFO L273 TraceCheckUtils]: 64: Hoare triple {21991#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21991#true} is VALID [2018-11-14 18:50:42,161 INFO L273 TraceCheckUtils]: 65: Hoare triple {21991#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21991#true} is VALID [2018-11-14 18:50:42,161 INFO L273 TraceCheckUtils]: 66: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,161 INFO L273 TraceCheckUtils]: 67: Hoare triple {21991#true} assume !(~i~1 < 20); {21991#true} is VALID [2018-11-14 18:50:42,161 INFO L256 TraceCheckUtils]: 68: Hoare triple {21991#true} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {21991#true} is VALID [2018-11-14 18:50:42,162 INFO L273 TraceCheckUtils]: 69: Hoare triple {21991#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {21993#(= avg_~i~0 0)} is VALID [2018-11-14 18:50:42,162 INFO L273 TraceCheckUtils]: 70: Hoare triple {21993#(= avg_~i~0 0)} assume true; {21993#(= avg_~i~0 0)} is VALID [2018-11-14 18:50:42,162 INFO L273 TraceCheckUtils]: 71: Hoare triple {21993#(= avg_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21993#(= avg_~i~0 0)} is VALID [2018-11-14 18:50:42,163 INFO L273 TraceCheckUtils]: 72: Hoare triple {21993#(= avg_~i~0 0)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21994#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:42,163 INFO L273 TraceCheckUtils]: 73: Hoare triple {21994#(<= avg_~i~0 1)} assume true; {21994#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:42,163 INFO L273 TraceCheckUtils]: 74: Hoare triple {21994#(<= avg_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21994#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:42,164 INFO L273 TraceCheckUtils]: 75: Hoare triple {21994#(<= avg_~i~0 1)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21995#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:42,164 INFO L273 TraceCheckUtils]: 76: Hoare triple {21995#(<= avg_~i~0 2)} assume true; {21995#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:42,164 INFO L273 TraceCheckUtils]: 77: Hoare triple {21995#(<= avg_~i~0 2)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21995#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:42,165 INFO L273 TraceCheckUtils]: 78: Hoare triple {21995#(<= avg_~i~0 2)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21996#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:42,165 INFO L273 TraceCheckUtils]: 79: Hoare triple {21996#(<= avg_~i~0 3)} assume true; {21996#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:42,165 INFO L273 TraceCheckUtils]: 80: Hoare triple {21996#(<= avg_~i~0 3)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21996#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:42,166 INFO L273 TraceCheckUtils]: 81: Hoare triple {21996#(<= avg_~i~0 3)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21997#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:42,166 INFO L273 TraceCheckUtils]: 82: Hoare triple {21997#(<= avg_~i~0 4)} assume true; {21997#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:42,167 INFO L273 TraceCheckUtils]: 83: Hoare triple {21997#(<= avg_~i~0 4)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21997#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:42,167 INFO L273 TraceCheckUtils]: 84: Hoare triple {21997#(<= avg_~i~0 4)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21998#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:42,168 INFO L273 TraceCheckUtils]: 85: Hoare triple {21998#(<= avg_~i~0 5)} assume true; {21998#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:42,168 INFO L273 TraceCheckUtils]: 86: Hoare triple {21998#(<= avg_~i~0 5)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21998#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:42,169 INFO L273 TraceCheckUtils]: 87: Hoare triple {21998#(<= avg_~i~0 5)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21999#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:42,169 INFO L273 TraceCheckUtils]: 88: Hoare triple {21999#(<= avg_~i~0 6)} assume true; {21999#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:42,170 INFO L273 TraceCheckUtils]: 89: Hoare triple {21999#(<= avg_~i~0 6)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21999#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:42,171 INFO L273 TraceCheckUtils]: 90: Hoare triple {21999#(<= avg_~i~0 6)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {22000#(<= avg_~i~0 7)} is VALID [2018-11-14 18:50:42,171 INFO L273 TraceCheckUtils]: 91: Hoare triple {22000#(<= avg_~i~0 7)} assume true; {22000#(<= avg_~i~0 7)} is VALID [2018-11-14 18:50:42,172 INFO L273 TraceCheckUtils]: 92: Hoare triple {22000#(<= avg_~i~0 7)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {22000#(<= avg_~i~0 7)} is VALID [2018-11-14 18:50:42,172 INFO L273 TraceCheckUtils]: 93: Hoare triple {22000#(<= avg_~i~0 7)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {22001#(<= avg_~i~0 8)} is VALID [2018-11-14 18:50:42,173 INFO L273 TraceCheckUtils]: 94: Hoare triple {22001#(<= avg_~i~0 8)} assume true; {22001#(<= avg_~i~0 8)} is VALID [2018-11-14 18:50:42,173 INFO L273 TraceCheckUtils]: 95: Hoare triple {22001#(<= avg_~i~0 8)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {22001#(<= avg_~i~0 8)} is VALID [2018-11-14 18:50:42,174 INFO L273 TraceCheckUtils]: 96: Hoare triple {22001#(<= avg_~i~0 8)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {22002#(<= avg_~i~0 9)} is VALID [2018-11-14 18:50:42,175 INFO L273 TraceCheckUtils]: 97: Hoare triple {22002#(<= avg_~i~0 9)} assume true; {22002#(<= avg_~i~0 9)} is VALID [2018-11-14 18:50:42,175 INFO L273 TraceCheckUtils]: 98: Hoare triple {22002#(<= avg_~i~0 9)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {22002#(<= avg_~i~0 9)} is VALID [2018-11-14 18:50:42,176 INFO L273 TraceCheckUtils]: 99: Hoare triple {22002#(<= avg_~i~0 9)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {22003#(<= avg_~i~0 10)} is VALID [2018-11-14 18:50:42,176 INFO L273 TraceCheckUtils]: 100: Hoare triple {22003#(<= avg_~i~0 10)} assume true; {22003#(<= avg_~i~0 10)} is VALID [2018-11-14 18:50:42,177 INFO L273 TraceCheckUtils]: 101: Hoare triple {22003#(<= avg_~i~0 10)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {22003#(<= avg_~i~0 10)} is VALID [2018-11-14 18:50:42,178 INFO L273 TraceCheckUtils]: 102: Hoare triple {22003#(<= avg_~i~0 10)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {22004#(<= avg_~i~0 11)} is VALID [2018-11-14 18:50:42,178 INFO L273 TraceCheckUtils]: 103: Hoare triple {22004#(<= avg_~i~0 11)} assume true; {22004#(<= avg_~i~0 11)} is VALID [2018-11-14 18:50:42,179 INFO L273 TraceCheckUtils]: 104: Hoare triple {22004#(<= avg_~i~0 11)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {22004#(<= avg_~i~0 11)} is VALID [2018-11-14 18:50:42,179 INFO L273 TraceCheckUtils]: 105: Hoare triple {22004#(<= avg_~i~0 11)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {22005#(<= avg_~i~0 12)} is VALID [2018-11-14 18:50:42,180 INFO L273 TraceCheckUtils]: 106: Hoare triple {22005#(<= avg_~i~0 12)} assume true; {22005#(<= avg_~i~0 12)} is VALID [2018-11-14 18:50:42,180 INFO L273 TraceCheckUtils]: 107: Hoare triple {22005#(<= avg_~i~0 12)} assume !(~i~0 < 20); {21992#false} is VALID [2018-11-14 18:50:42,181 INFO L273 TraceCheckUtils]: 108: Hoare triple {21992#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {21992#false} is VALID [2018-11-14 18:50:42,181 INFO L273 TraceCheckUtils]: 109: Hoare triple {21992#false} assume true; {21992#false} is VALID [2018-11-14 18:50:42,181 INFO L268 TraceCheckUtils]: 110: Hoare quadruple {21992#false} {21991#true} #73#return; {21992#false} is VALID [2018-11-14 18:50:42,181 INFO L273 TraceCheckUtils]: 111: Hoare triple {21992#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); {21992#false} is VALID [2018-11-14 18:50:42,181 INFO L256 TraceCheckUtils]: 112: Hoare triple {21992#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {21991#true} is VALID [2018-11-14 18:50:42,182 INFO L273 TraceCheckUtils]: 113: Hoare triple {21991#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {21991#true} is VALID [2018-11-14 18:50:42,182 INFO L273 TraceCheckUtils]: 114: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,182 INFO L273 TraceCheckUtils]: 115: Hoare triple {21991#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21991#true} is VALID [2018-11-14 18:50:42,182 INFO L273 TraceCheckUtils]: 116: Hoare triple {21991#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21991#true} is VALID [2018-11-14 18:50:42,182 INFO L273 TraceCheckUtils]: 117: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,182 INFO L273 TraceCheckUtils]: 118: Hoare triple {21991#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21991#true} is VALID [2018-11-14 18:50:42,183 INFO L273 TraceCheckUtils]: 119: Hoare triple {21991#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21991#true} is VALID [2018-11-14 18:50:42,183 INFO L273 TraceCheckUtils]: 120: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,183 INFO L273 TraceCheckUtils]: 121: Hoare triple {21991#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21991#true} is VALID [2018-11-14 18:50:42,183 INFO L273 TraceCheckUtils]: 122: Hoare triple {21991#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21991#true} is VALID [2018-11-14 18:50:42,183 INFO L273 TraceCheckUtils]: 123: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,183 INFO L273 TraceCheckUtils]: 124: Hoare triple {21991#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21991#true} is VALID [2018-11-14 18:50:42,184 INFO L273 TraceCheckUtils]: 125: Hoare triple {21991#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21991#true} is VALID [2018-11-14 18:50:42,184 INFO L273 TraceCheckUtils]: 126: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,184 INFO L273 TraceCheckUtils]: 127: Hoare triple {21991#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21991#true} is VALID [2018-11-14 18:50:42,184 INFO L273 TraceCheckUtils]: 128: Hoare triple {21991#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21991#true} is VALID [2018-11-14 18:50:42,184 INFO L273 TraceCheckUtils]: 129: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,184 INFO L273 TraceCheckUtils]: 130: Hoare triple {21991#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21991#true} is VALID [2018-11-14 18:50:42,184 INFO L273 TraceCheckUtils]: 131: Hoare triple {21991#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21991#true} is VALID [2018-11-14 18:50:42,184 INFO L273 TraceCheckUtils]: 132: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,185 INFO L273 TraceCheckUtils]: 133: Hoare triple {21991#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21991#true} is VALID [2018-11-14 18:50:42,185 INFO L273 TraceCheckUtils]: 134: Hoare triple {21991#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21991#true} is VALID [2018-11-14 18:50:42,185 INFO L273 TraceCheckUtils]: 135: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,185 INFO L273 TraceCheckUtils]: 136: Hoare triple {21991#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21991#true} is VALID [2018-11-14 18:50:42,185 INFO L273 TraceCheckUtils]: 137: Hoare triple {21991#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21991#true} is VALID [2018-11-14 18:50:42,185 INFO L273 TraceCheckUtils]: 138: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,185 INFO L273 TraceCheckUtils]: 139: Hoare triple {21991#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21991#true} is VALID [2018-11-14 18:50:42,185 INFO L273 TraceCheckUtils]: 140: Hoare triple {21991#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21991#true} is VALID [2018-11-14 18:50:42,185 INFO L273 TraceCheckUtils]: 141: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,185 INFO L273 TraceCheckUtils]: 142: Hoare triple {21991#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21991#true} is VALID [2018-11-14 18:50:42,186 INFO L273 TraceCheckUtils]: 143: Hoare triple {21991#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21991#true} is VALID [2018-11-14 18:50:42,186 INFO L273 TraceCheckUtils]: 144: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,186 INFO L273 TraceCheckUtils]: 145: Hoare triple {21991#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21991#true} is VALID [2018-11-14 18:50:42,186 INFO L273 TraceCheckUtils]: 146: Hoare triple {21991#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21991#true} is VALID [2018-11-14 18:50:42,186 INFO L273 TraceCheckUtils]: 147: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,186 INFO L273 TraceCheckUtils]: 148: Hoare triple {21991#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21991#true} is VALID [2018-11-14 18:50:42,186 INFO L273 TraceCheckUtils]: 149: Hoare triple {21991#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21991#true} is VALID [2018-11-14 18:50:42,186 INFO L273 TraceCheckUtils]: 150: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,186 INFO L273 TraceCheckUtils]: 151: Hoare triple {21991#true} assume !(~i~0 < 20); {21991#true} is VALID [2018-11-14 18:50:42,186 INFO L273 TraceCheckUtils]: 152: Hoare triple {21991#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {21991#true} is VALID [2018-11-14 18:50:42,187 INFO L273 TraceCheckUtils]: 153: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,187 INFO L268 TraceCheckUtils]: 154: Hoare quadruple {21991#true} {21992#false} #75#return; {21992#false} is VALID [2018-11-14 18:50:42,187 INFO L273 TraceCheckUtils]: 155: Hoare triple {21992#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; {21992#false} is VALID [2018-11-14 18:50:42,187 INFO L273 TraceCheckUtils]: 156: Hoare triple {21992#false} assume true; {21992#false} is VALID [2018-11-14 18:50:42,187 INFO L273 TraceCheckUtils]: 157: Hoare triple {21992#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {21992#false} is VALID [2018-11-14 18:50:42,187 INFO L273 TraceCheckUtils]: 158: Hoare triple {21992#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {21992#false} is VALID [2018-11-14 18:50:42,187 INFO L273 TraceCheckUtils]: 159: Hoare triple {21992#false} assume true; {21992#false} is VALID [2018-11-14 18:50:42,187 INFO L273 TraceCheckUtils]: 160: Hoare triple {21992#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {21992#false} is VALID [2018-11-14 18:50:42,187 INFO L273 TraceCheckUtils]: 161: Hoare triple {21992#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {21992#false} is VALID [2018-11-14 18:50:42,187 INFO L273 TraceCheckUtils]: 162: Hoare triple {21992#false} assume true; {21992#false} is VALID [2018-11-14 18:50:42,188 INFO L273 TraceCheckUtils]: 163: Hoare triple {21992#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {21992#false} is VALID [2018-11-14 18:50:42,188 INFO L273 TraceCheckUtils]: 164: Hoare triple {21992#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {21992#false} is VALID [2018-11-14 18:50:42,188 INFO L273 TraceCheckUtils]: 165: Hoare triple {21992#false} assume true; {21992#false} is VALID [2018-11-14 18:50:42,188 INFO L273 TraceCheckUtils]: 166: Hoare triple {21992#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {21992#false} is VALID [2018-11-14 18:50:42,188 INFO L273 TraceCheckUtils]: 167: Hoare triple {21992#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {21992#false} is VALID [2018-11-14 18:50:42,188 INFO L273 TraceCheckUtils]: 168: Hoare triple {21992#false} assume true; {21992#false} is VALID [2018-11-14 18:50:42,188 INFO L273 TraceCheckUtils]: 169: Hoare triple {21992#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {21992#false} is VALID [2018-11-14 18:50:42,189 INFO L273 TraceCheckUtils]: 170: Hoare triple {21992#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {21992#false} is VALID [2018-11-14 18:50:42,189 INFO L273 TraceCheckUtils]: 171: Hoare triple {21992#false} assume true; {21992#false} is VALID [2018-11-14 18:50:42,189 INFO L273 TraceCheckUtils]: 172: Hoare triple {21992#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {21992#false} is VALID [2018-11-14 18:50:42,189 INFO L273 TraceCheckUtils]: 173: Hoare triple {21992#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {21992#false} is VALID [2018-11-14 18:50:42,189 INFO L273 TraceCheckUtils]: 174: Hoare triple {21992#false} assume true; {21992#false} is VALID [2018-11-14 18:50:42,189 INFO L273 TraceCheckUtils]: 175: Hoare triple {21992#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {21992#false} is VALID [2018-11-14 18:50:42,190 INFO L273 TraceCheckUtils]: 176: Hoare triple {21992#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {21992#false} is VALID [2018-11-14 18:50:42,190 INFO L273 TraceCheckUtils]: 177: Hoare triple {21992#false} assume true; {21992#false} is VALID [2018-11-14 18:50:42,190 INFO L273 TraceCheckUtils]: 178: Hoare triple {21992#false} assume !(~i~2 < 19); {21992#false} is VALID [2018-11-14 18:50:42,190 INFO L273 TraceCheckUtils]: 179: Hoare triple {21992#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {21992#false} is VALID [2018-11-14 18:50:42,190 INFO L256 TraceCheckUtils]: 180: Hoare triple {21992#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {21991#true} is VALID [2018-11-14 18:50:42,190 INFO L273 TraceCheckUtils]: 181: Hoare triple {21991#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {21991#true} is VALID [2018-11-14 18:50:42,190 INFO L273 TraceCheckUtils]: 182: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,191 INFO L273 TraceCheckUtils]: 183: Hoare triple {21991#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21991#true} is VALID [2018-11-14 18:50:42,191 INFO L273 TraceCheckUtils]: 184: Hoare triple {21991#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21991#true} is VALID [2018-11-14 18:50:42,191 INFO L273 TraceCheckUtils]: 185: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,191 INFO L273 TraceCheckUtils]: 186: Hoare triple {21991#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21991#true} is VALID [2018-11-14 18:50:42,191 INFO L273 TraceCheckUtils]: 187: Hoare triple {21991#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21991#true} is VALID [2018-11-14 18:50:42,191 INFO L273 TraceCheckUtils]: 188: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,191 INFO L273 TraceCheckUtils]: 189: Hoare triple {21991#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21991#true} is VALID [2018-11-14 18:50:42,192 INFO L273 TraceCheckUtils]: 190: Hoare triple {21991#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21991#true} is VALID [2018-11-14 18:50:42,192 INFO L273 TraceCheckUtils]: 191: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,192 INFO L273 TraceCheckUtils]: 192: Hoare triple {21991#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21991#true} is VALID [2018-11-14 18:50:42,192 INFO L273 TraceCheckUtils]: 193: Hoare triple {21991#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21991#true} is VALID [2018-11-14 18:50:42,192 INFO L273 TraceCheckUtils]: 194: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,192 INFO L273 TraceCheckUtils]: 195: Hoare triple {21991#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21991#true} is VALID [2018-11-14 18:50:42,193 INFO L273 TraceCheckUtils]: 196: Hoare triple {21991#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21991#true} is VALID [2018-11-14 18:50:42,193 INFO L273 TraceCheckUtils]: 197: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,193 INFO L273 TraceCheckUtils]: 198: Hoare triple {21991#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21991#true} is VALID [2018-11-14 18:50:42,193 INFO L273 TraceCheckUtils]: 199: Hoare triple {21991#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21991#true} is VALID [2018-11-14 18:50:42,193 INFO L273 TraceCheckUtils]: 200: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,193 INFO L273 TraceCheckUtils]: 201: Hoare triple {21991#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21991#true} is VALID [2018-11-14 18:50:42,193 INFO L273 TraceCheckUtils]: 202: Hoare triple {21991#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21991#true} is VALID [2018-11-14 18:50:42,194 INFO L273 TraceCheckUtils]: 203: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,194 INFO L273 TraceCheckUtils]: 204: Hoare triple {21991#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21991#true} is VALID [2018-11-14 18:50:42,194 INFO L273 TraceCheckUtils]: 205: Hoare triple {21991#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21991#true} is VALID [2018-11-14 18:50:42,194 INFO L273 TraceCheckUtils]: 206: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,194 INFO L273 TraceCheckUtils]: 207: Hoare triple {21991#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21991#true} is VALID [2018-11-14 18:50:42,194 INFO L273 TraceCheckUtils]: 208: Hoare triple {21991#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21991#true} is VALID [2018-11-14 18:50:42,194 INFO L273 TraceCheckUtils]: 209: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,195 INFO L273 TraceCheckUtils]: 210: Hoare triple {21991#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21991#true} is VALID [2018-11-14 18:50:42,195 INFO L273 TraceCheckUtils]: 211: Hoare triple {21991#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21991#true} is VALID [2018-11-14 18:50:42,195 INFO L273 TraceCheckUtils]: 212: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,195 INFO L273 TraceCheckUtils]: 213: Hoare triple {21991#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21991#true} is VALID [2018-11-14 18:50:42,195 INFO L273 TraceCheckUtils]: 214: Hoare triple {21991#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21991#true} is VALID [2018-11-14 18:50:42,195 INFO L273 TraceCheckUtils]: 215: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,195 INFO L273 TraceCheckUtils]: 216: Hoare triple {21991#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21991#true} is VALID [2018-11-14 18:50:42,196 INFO L273 TraceCheckUtils]: 217: Hoare triple {21991#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21991#true} is VALID [2018-11-14 18:50:42,196 INFO L273 TraceCheckUtils]: 218: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,196 INFO L273 TraceCheckUtils]: 219: Hoare triple {21991#true} assume !(~i~0 < 20); {21991#true} is VALID [2018-11-14 18:50:42,196 INFO L273 TraceCheckUtils]: 220: Hoare triple {21991#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {21991#true} is VALID [2018-11-14 18:50:42,196 INFO L273 TraceCheckUtils]: 221: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,196 INFO L268 TraceCheckUtils]: 222: Hoare quadruple {21991#true} {21992#false} #77#return; {21992#false} is VALID [2018-11-14 18:50:42,196 INFO L273 TraceCheckUtils]: 223: Hoare triple {21992#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {21992#false} is VALID [2018-11-14 18:50:42,197 INFO L273 TraceCheckUtils]: 224: Hoare triple {21992#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {21992#false} is VALID [2018-11-14 18:50:42,197 INFO L273 TraceCheckUtils]: 225: Hoare triple {21992#false} assume !false; {21992#false} is VALID [2018-11-14 18:50:42,216 INFO L134 CoverageAnalysis]: Checked inductivity of 2811 backedges. 0 proven. 1192 refuted. 0 times theorem prover too weak. 1619 trivial. 0 not checked. [2018-11-14 18:50:42,216 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:50:42,216 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 27 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 27 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:50:42,227 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 18:50:42,306 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:50:42,355 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:50:42,357 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:50:42,667 INFO L256 TraceCheckUtils]: 0: Hoare triple {21991#true} call ULTIMATE.init(); {21991#true} is VALID [2018-11-14 18:50:42,668 INFO L273 TraceCheckUtils]: 1: Hoare triple {21991#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {21991#true} is VALID [2018-11-14 18:50:42,668 INFO L273 TraceCheckUtils]: 2: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,668 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {21991#true} {21991#true} #69#return; {21991#true} is VALID [2018-11-14 18:50:42,668 INFO L256 TraceCheckUtils]: 4: Hoare triple {21991#true} call #t~ret12 := main(); {21991#true} is VALID [2018-11-14 18:50:42,669 INFO L273 TraceCheckUtils]: 5: Hoare triple {21991#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {21991#true} is VALID [2018-11-14 18:50:42,669 INFO L273 TraceCheckUtils]: 6: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,669 INFO L273 TraceCheckUtils]: 7: Hoare triple {21991#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21991#true} is VALID [2018-11-14 18:50:42,669 INFO L273 TraceCheckUtils]: 8: Hoare triple {21991#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21991#true} is VALID [2018-11-14 18:50:42,669 INFO L273 TraceCheckUtils]: 9: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,669 INFO L273 TraceCheckUtils]: 10: Hoare triple {21991#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21991#true} is VALID [2018-11-14 18:50:42,670 INFO L273 TraceCheckUtils]: 11: Hoare triple {21991#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21991#true} is VALID [2018-11-14 18:50:42,670 INFO L273 TraceCheckUtils]: 12: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,670 INFO L273 TraceCheckUtils]: 13: Hoare triple {21991#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21991#true} is VALID [2018-11-14 18:50:42,670 INFO L273 TraceCheckUtils]: 14: Hoare triple {21991#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21991#true} is VALID [2018-11-14 18:50:42,670 INFO L273 TraceCheckUtils]: 15: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,671 INFO L273 TraceCheckUtils]: 16: Hoare triple {21991#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21991#true} is VALID [2018-11-14 18:50:42,671 INFO L273 TraceCheckUtils]: 17: Hoare triple {21991#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21991#true} is VALID [2018-11-14 18:50:42,671 INFO L273 TraceCheckUtils]: 18: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,671 INFO L273 TraceCheckUtils]: 19: Hoare triple {21991#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21991#true} is VALID [2018-11-14 18:50:42,671 INFO L273 TraceCheckUtils]: 20: Hoare triple {21991#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21991#true} is VALID [2018-11-14 18:50:42,671 INFO L273 TraceCheckUtils]: 21: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,671 INFO L273 TraceCheckUtils]: 22: Hoare triple {21991#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21991#true} is VALID [2018-11-14 18:50:42,671 INFO L273 TraceCheckUtils]: 23: Hoare triple {21991#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21991#true} is VALID [2018-11-14 18:50:42,671 INFO L273 TraceCheckUtils]: 24: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,672 INFO L273 TraceCheckUtils]: 25: Hoare triple {21991#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21991#true} is VALID [2018-11-14 18:50:42,672 INFO L273 TraceCheckUtils]: 26: Hoare triple {21991#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21991#true} is VALID [2018-11-14 18:50:42,672 INFO L273 TraceCheckUtils]: 27: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,672 INFO L273 TraceCheckUtils]: 28: Hoare triple {21991#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21991#true} is VALID [2018-11-14 18:50:42,672 INFO L273 TraceCheckUtils]: 29: Hoare triple {21991#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21991#true} is VALID [2018-11-14 18:50:42,672 INFO L273 TraceCheckUtils]: 30: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,672 INFO L273 TraceCheckUtils]: 31: Hoare triple {21991#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21991#true} is VALID [2018-11-14 18:50:42,672 INFO L273 TraceCheckUtils]: 32: Hoare triple {21991#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21991#true} is VALID [2018-11-14 18:50:42,672 INFO L273 TraceCheckUtils]: 33: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,672 INFO L273 TraceCheckUtils]: 34: Hoare triple {21991#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21991#true} is VALID [2018-11-14 18:50:42,673 INFO L273 TraceCheckUtils]: 35: Hoare triple {21991#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21991#true} is VALID [2018-11-14 18:50:42,673 INFO L273 TraceCheckUtils]: 36: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,673 INFO L273 TraceCheckUtils]: 37: Hoare triple {21991#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21991#true} is VALID [2018-11-14 18:50:42,673 INFO L273 TraceCheckUtils]: 38: Hoare triple {21991#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21991#true} is VALID [2018-11-14 18:50:42,673 INFO L273 TraceCheckUtils]: 39: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,673 INFO L273 TraceCheckUtils]: 40: Hoare triple {21991#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21991#true} is VALID [2018-11-14 18:50:42,673 INFO L273 TraceCheckUtils]: 41: Hoare triple {21991#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21991#true} is VALID [2018-11-14 18:50:42,673 INFO L273 TraceCheckUtils]: 42: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,673 INFO L273 TraceCheckUtils]: 43: Hoare triple {21991#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21991#true} is VALID [2018-11-14 18:50:42,673 INFO L273 TraceCheckUtils]: 44: Hoare triple {21991#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21991#true} is VALID [2018-11-14 18:50:42,674 INFO L273 TraceCheckUtils]: 45: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,674 INFO L273 TraceCheckUtils]: 46: Hoare triple {21991#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21991#true} is VALID [2018-11-14 18:50:42,674 INFO L273 TraceCheckUtils]: 47: Hoare triple {21991#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21991#true} is VALID [2018-11-14 18:50:42,674 INFO L273 TraceCheckUtils]: 48: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,674 INFO L273 TraceCheckUtils]: 49: Hoare triple {21991#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21991#true} is VALID [2018-11-14 18:50:42,674 INFO L273 TraceCheckUtils]: 50: Hoare triple {21991#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21991#true} is VALID [2018-11-14 18:50:42,674 INFO L273 TraceCheckUtils]: 51: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,674 INFO L273 TraceCheckUtils]: 52: Hoare triple {21991#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21991#true} is VALID [2018-11-14 18:50:42,674 INFO L273 TraceCheckUtils]: 53: Hoare triple {21991#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21991#true} is VALID [2018-11-14 18:50:42,674 INFO L273 TraceCheckUtils]: 54: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,675 INFO L273 TraceCheckUtils]: 55: Hoare triple {21991#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21991#true} is VALID [2018-11-14 18:50:42,675 INFO L273 TraceCheckUtils]: 56: Hoare triple {21991#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21991#true} is VALID [2018-11-14 18:50:42,675 INFO L273 TraceCheckUtils]: 57: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,675 INFO L273 TraceCheckUtils]: 58: Hoare triple {21991#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21991#true} is VALID [2018-11-14 18:50:42,675 INFO L273 TraceCheckUtils]: 59: Hoare triple {21991#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21991#true} is VALID [2018-11-14 18:50:42,675 INFO L273 TraceCheckUtils]: 60: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,675 INFO L273 TraceCheckUtils]: 61: Hoare triple {21991#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21991#true} is VALID [2018-11-14 18:50:42,675 INFO L273 TraceCheckUtils]: 62: Hoare triple {21991#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21991#true} is VALID [2018-11-14 18:50:42,675 INFO L273 TraceCheckUtils]: 63: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,676 INFO L273 TraceCheckUtils]: 64: Hoare triple {21991#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21991#true} is VALID [2018-11-14 18:50:42,676 INFO L273 TraceCheckUtils]: 65: Hoare triple {21991#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21991#true} is VALID [2018-11-14 18:50:42,676 INFO L273 TraceCheckUtils]: 66: Hoare triple {21991#true} assume true; {21991#true} is VALID [2018-11-14 18:50:42,676 INFO L273 TraceCheckUtils]: 67: Hoare triple {21991#true} assume !(~i~1 < 20); {21991#true} is VALID [2018-11-14 18:50:42,676 INFO L256 TraceCheckUtils]: 68: Hoare triple {21991#true} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {21991#true} is VALID [2018-11-14 18:50:42,676 INFO L273 TraceCheckUtils]: 69: Hoare triple {21991#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {22216#(<= avg_~i~0 0)} is VALID [2018-11-14 18:50:42,677 INFO L273 TraceCheckUtils]: 70: Hoare triple {22216#(<= avg_~i~0 0)} assume true; {22216#(<= avg_~i~0 0)} is VALID [2018-11-14 18:50:42,677 INFO L273 TraceCheckUtils]: 71: Hoare triple {22216#(<= avg_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {22216#(<= avg_~i~0 0)} is VALID [2018-11-14 18:50:42,677 INFO L273 TraceCheckUtils]: 72: Hoare triple {22216#(<= avg_~i~0 0)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21994#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:42,678 INFO L273 TraceCheckUtils]: 73: Hoare triple {21994#(<= avg_~i~0 1)} assume true; {21994#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:42,678 INFO L273 TraceCheckUtils]: 74: Hoare triple {21994#(<= avg_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21994#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:42,679 INFO L273 TraceCheckUtils]: 75: Hoare triple {21994#(<= avg_~i~0 1)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21995#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:42,679 INFO L273 TraceCheckUtils]: 76: Hoare triple {21995#(<= avg_~i~0 2)} assume true; {21995#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:42,679 INFO L273 TraceCheckUtils]: 77: Hoare triple {21995#(<= avg_~i~0 2)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21995#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:42,680 INFO L273 TraceCheckUtils]: 78: Hoare triple {21995#(<= avg_~i~0 2)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21996#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:42,680 INFO L273 TraceCheckUtils]: 79: Hoare triple {21996#(<= avg_~i~0 3)} assume true; {21996#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:42,680 INFO L273 TraceCheckUtils]: 80: Hoare triple {21996#(<= avg_~i~0 3)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21996#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:42,681 INFO L273 TraceCheckUtils]: 81: Hoare triple {21996#(<= avg_~i~0 3)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21997#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:42,682 INFO L273 TraceCheckUtils]: 82: Hoare triple {21997#(<= avg_~i~0 4)} assume true; {21997#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:42,682 INFO L273 TraceCheckUtils]: 83: Hoare triple {21997#(<= avg_~i~0 4)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21997#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:42,683 INFO L273 TraceCheckUtils]: 84: Hoare triple {21997#(<= avg_~i~0 4)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21998#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:42,683 INFO L273 TraceCheckUtils]: 85: Hoare triple {21998#(<= avg_~i~0 5)} assume true; {21998#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:42,684 INFO L273 TraceCheckUtils]: 86: Hoare triple {21998#(<= avg_~i~0 5)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21998#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:42,685 INFO L273 TraceCheckUtils]: 87: Hoare triple {21998#(<= avg_~i~0 5)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21999#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:42,685 INFO L273 TraceCheckUtils]: 88: Hoare triple {21999#(<= avg_~i~0 6)} assume true; {21999#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:42,686 INFO L273 TraceCheckUtils]: 89: Hoare triple {21999#(<= avg_~i~0 6)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21999#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:42,686 INFO L273 TraceCheckUtils]: 90: Hoare triple {21999#(<= avg_~i~0 6)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {22000#(<= avg_~i~0 7)} is VALID [2018-11-14 18:50:42,687 INFO L273 TraceCheckUtils]: 91: Hoare triple {22000#(<= avg_~i~0 7)} assume true; {22000#(<= avg_~i~0 7)} is VALID [2018-11-14 18:50:42,687 INFO L273 TraceCheckUtils]: 92: Hoare triple {22000#(<= avg_~i~0 7)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {22000#(<= avg_~i~0 7)} is VALID [2018-11-14 18:50:42,688 INFO L273 TraceCheckUtils]: 93: Hoare triple {22000#(<= avg_~i~0 7)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {22001#(<= avg_~i~0 8)} is VALID [2018-11-14 18:50:42,688 INFO L273 TraceCheckUtils]: 94: Hoare triple {22001#(<= avg_~i~0 8)} assume true; {22001#(<= avg_~i~0 8)} is VALID [2018-11-14 18:50:42,689 INFO L273 TraceCheckUtils]: 95: Hoare triple {22001#(<= avg_~i~0 8)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {22001#(<= avg_~i~0 8)} is VALID [2018-11-14 18:50:42,690 INFO L273 TraceCheckUtils]: 96: Hoare triple {22001#(<= avg_~i~0 8)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {22002#(<= avg_~i~0 9)} is VALID [2018-11-14 18:50:42,690 INFO L273 TraceCheckUtils]: 97: Hoare triple {22002#(<= avg_~i~0 9)} assume true; {22002#(<= avg_~i~0 9)} is VALID [2018-11-14 18:50:42,691 INFO L273 TraceCheckUtils]: 98: Hoare triple {22002#(<= avg_~i~0 9)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {22002#(<= avg_~i~0 9)} is VALID [2018-11-14 18:50:42,691 INFO L273 TraceCheckUtils]: 99: Hoare triple {22002#(<= avg_~i~0 9)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {22003#(<= avg_~i~0 10)} is VALID [2018-11-14 18:50:42,692 INFO L273 TraceCheckUtils]: 100: Hoare triple {22003#(<= avg_~i~0 10)} assume true; {22003#(<= avg_~i~0 10)} is VALID [2018-11-14 18:50:42,692 INFO L273 TraceCheckUtils]: 101: Hoare triple {22003#(<= avg_~i~0 10)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {22003#(<= avg_~i~0 10)} is VALID [2018-11-14 18:50:42,693 INFO L273 TraceCheckUtils]: 102: Hoare triple {22003#(<= avg_~i~0 10)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {22004#(<= avg_~i~0 11)} is VALID [2018-11-14 18:50:42,694 INFO L273 TraceCheckUtils]: 103: Hoare triple {22004#(<= avg_~i~0 11)} assume true; {22004#(<= avg_~i~0 11)} is VALID [2018-11-14 18:50:42,694 INFO L273 TraceCheckUtils]: 104: Hoare triple {22004#(<= avg_~i~0 11)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {22004#(<= avg_~i~0 11)} is VALID [2018-11-14 18:50:42,695 INFO L273 TraceCheckUtils]: 105: Hoare triple {22004#(<= avg_~i~0 11)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {22005#(<= avg_~i~0 12)} is VALID [2018-11-14 18:50:42,695 INFO L273 TraceCheckUtils]: 106: Hoare triple {22005#(<= avg_~i~0 12)} assume true; {22005#(<= avg_~i~0 12)} is VALID [2018-11-14 18:50:42,696 INFO L273 TraceCheckUtils]: 107: Hoare triple {22005#(<= avg_~i~0 12)} assume !(~i~0 < 20); {21992#false} is VALID [2018-11-14 18:50:42,696 INFO L273 TraceCheckUtils]: 108: Hoare triple {21992#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {21992#false} is VALID [2018-11-14 18:50:42,696 INFO L273 TraceCheckUtils]: 109: Hoare triple {21992#false} assume true; {21992#false} is VALID [2018-11-14 18:50:42,697 INFO L268 TraceCheckUtils]: 110: Hoare quadruple {21992#false} {21991#true} #73#return; {21992#false} is VALID [2018-11-14 18:50:42,697 INFO L273 TraceCheckUtils]: 111: Hoare triple {21992#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); {21992#false} is VALID [2018-11-14 18:50:42,697 INFO L256 TraceCheckUtils]: 112: Hoare triple {21992#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {21992#false} is VALID [2018-11-14 18:50:42,697 INFO L273 TraceCheckUtils]: 113: Hoare triple {21992#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {21992#false} is VALID [2018-11-14 18:50:42,697 INFO L273 TraceCheckUtils]: 114: Hoare triple {21992#false} assume true; {21992#false} is VALID [2018-11-14 18:50:42,697 INFO L273 TraceCheckUtils]: 115: Hoare triple {21992#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21992#false} is VALID [2018-11-14 18:50:42,698 INFO L273 TraceCheckUtils]: 116: Hoare triple {21992#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21992#false} is VALID [2018-11-14 18:50:42,698 INFO L273 TraceCheckUtils]: 117: Hoare triple {21992#false} assume true; {21992#false} is VALID [2018-11-14 18:50:42,698 INFO L273 TraceCheckUtils]: 118: Hoare triple {21992#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21992#false} is VALID [2018-11-14 18:50:42,698 INFO L273 TraceCheckUtils]: 119: Hoare triple {21992#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21992#false} is VALID [2018-11-14 18:50:42,698 INFO L273 TraceCheckUtils]: 120: Hoare triple {21992#false} assume true; {21992#false} is VALID [2018-11-14 18:50:42,698 INFO L273 TraceCheckUtils]: 121: Hoare triple {21992#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21992#false} is VALID [2018-11-14 18:50:42,699 INFO L273 TraceCheckUtils]: 122: Hoare triple {21992#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21992#false} is VALID [2018-11-14 18:50:42,699 INFO L273 TraceCheckUtils]: 123: Hoare triple {21992#false} assume true; {21992#false} is VALID [2018-11-14 18:50:42,699 INFO L273 TraceCheckUtils]: 124: Hoare triple {21992#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21992#false} is VALID [2018-11-14 18:50:42,699 INFO L273 TraceCheckUtils]: 125: Hoare triple {21992#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21992#false} is VALID [2018-11-14 18:50:42,699 INFO L273 TraceCheckUtils]: 126: Hoare triple {21992#false} assume true; {21992#false} is VALID [2018-11-14 18:50:42,699 INFO L273 TraceCheckUtils]: 127: Hoare triple {21992#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21992#false} is VALID [2018-11-14 18:50:42,699 INFO L273 TraceCheckUtils]: 128: Hoare triple {21992#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21992#false} is VALID [2018-11-14 18:50:42,699 INFO L273 TraceCheckUtils]: 129: Hoare triple {21992#false} assume true; {21992#false} is VALID [2018-11-14 18:50:42,699 INFO L273 TraceCheckUtils]: 130: Hoare triple {21992#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21992#false} is VALID [2018-11-14 18:50:42,700 INFO L273 TraceCheckUtils]: 131: Hoare triple {21992#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21992#false} is VALID [2018-11-14 18:50:42,700 INFO L273 TraceCheckUtils]: 132: Hoare triple {21992#false} assume true; {21992#false} is VALID [2018-11-14 18:50:42,700 INFO L273 TraceCheckUtils]: 133: Hoare triple {21992#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21992#false} is VALID [2018-11-14 18:50:42,700 INFO L273 TraceCheckUtils]: 134: Hoare triple {21992#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21992#false} is VALID [2018-11-14 18:50:42,700 INFO L273 TraceCheckUtils]: 135: Hoare triple {21992#false} assume true; {21992#false} is VALID [2018-11-14 18:50:42,700 INFO L273 TraceCheckUtils]: 136: Hoare triple {21992#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21992#false} is VALID [2018-11-14 18:50:42,700 INFO L273 TraceCheckUtils]: 137: Hoare triple {21992#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21992#false} is VALID [2018-11-14 18:50:42,700 INFO L273 TraceCheckUtils]: 138: Hoare triple {21992#false} assume true; {21992#false} is VALID [2018-11-14 18:50:42,700 INFO L273 TraceCheckUtils]: 139: Hoare triple {21992#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21992#false} is VALID [2018-11-14 18:50:42,701 INFO L273 TraceCheckUtils]: 140: Hoare triple {21992#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21992#false} is VALID [2018-11-14 18:50:42,701 INFO L273 TraceCheckUtils]: 141: Hoare triple {21992#false} assume true; {21992#false} is VALID [2018-11-14 18:50:42,701 INFO L273 TraceCheckUtils]: 142: Hoare triple {21992#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21992#false} is VALID [2018-11-14 18:50:42,701 INFO L273 TraceCheckUtils]: 143: Hoare triple {21992#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21992#false} is VALID [2018-11-14 18:50:42,701 INFO L273 TraceCheckUtils]: 144: Hoare triple {21992#false} assume true; {21992#false} is VALID [2018-11-14 18:50:42,701 INFO L273 TraceCheckUtils]: 145: Hoare triple {21992#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21992#false} is VALID [2018-11-14 18:50:42,701 INFO L273 TraceCheckUtils]: 146: Hoare triple {21992#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21992#false} is VALID [2018-11-14 18:50:42,701 INFO L273 TraceCheckUtils]: 147: Hoare triple {21992#false} assume true; {21992#false} is VALID [2018-11-14 18:50:42,701 INFO L273 TraceCheckUtils]: 148: Hoare triple {21992#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21992#false} is VALID [2018-11-14 18:50:42,701 INFO L273 TraceCheckUtils]: 149: Hoare triple {21992#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21992#false} is VALID [2018-11-14 18:50:42,702 INFO L273 TraceCheckUtils]: 150: Hoare triple {21992#false} assume true; {21992#false} is VALID [2018-11-14 18:50:42,702 INFO L273 TraceCheckUtils]: 151: Hoare triple {21992#false} assume !(~i~0 < 20); {21992#false} is VALID [2018-11-14 18:50:42,702 INFO L273 TraceCheckUtils]: 152: Hoare triple {21992#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {21992#false} is VALID [2018-11-14 18:50:42,702 INFO L273 TraceCheckUtils]: 153: Hoare triple {21992#false} assume true; {21992#false} is VALID [2018-11-14 18:50:42,702 INFO L268 TraceCheckUtils]: 154: Hoare quadruple {21992#false} {21992#false} #75#return; {21992#false} is VALID [2018-11-14 18:50:42,702 INFO L273 TraceCheckUtils]: 155: Hoare triple {21992#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; {21992#false} is VALID [2018-11-14 18:50:42,702 INFO L273 TraceCheckUtils]: 156: Hoare triple {21992#false} assume true; {21992#false} is VALID [2018-11-14 18:50:42,702 INFO L273 TraceCheckUtils]: 157: Hoare triple {21992#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {21992#false} is VALID [2018-11-14 18:50:42,702 INFO L273 TraceCheckUtils]: 158: Hoare triple {21992#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {21992#false} is VALID [2018-11-14 18:50:42,702 INFO L273 TraceCheckUtils]: 159: Hoare triple {21992#false} assume true; {21992#false} is VALID [2018-11-14 18:50:42,703 INFO L273 TraceCheckUtils]: 160: Hoare triple {21992#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {21992#false} is VALID [2018-11-14 18:50:42,703 INFO L273 TraceCheckUtils]: 161: Hoare triple {21992#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {21992#false} is VALID [2018-11-14 18:50:42,703 INFO L273 TraceCheckUtils]: 162: Hoare triple {21992#false} assume true; {21992#false} is VALID [2018-11-14 18:50:42,703 INFO L273 TraceCheckUtils]: 163: Hoare triple {21992#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {21992#false} is VALID [2018-11-14 18:50:42,703 INFO L273 TraceCheckUtils]: 164: Hoare triple {21992#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {21992#false} is VALID [2018-11-14 18:50:42,703 INFO L273 TraceCheckUtils]: 165: Hoare triple {21992#false} assume true; {21992#false} is VALID [2018-11-14 18:50:42,703 INFO L273 TraceCheckUtils]: 166: Hoare triple {21992#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {21992#false} is VALID [2018-11-14 18:50:42,703 INFO L273 TraceCheckUtils]: 167: Hoare triple {21992#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {21992#false} is VALID [2018-11-14 18:50:42,703 INFO L273 TraceCheckUtils]: 168: Hoare triple {21992#false} assume true; {21992#false} is VALID [2018-11-14 18:50:42,703 INFO L273 TraceCheckUtils]: 169: Hoare triple {21992#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {21992#false} is VALID [2018-11-14 18:50:42,704 INFO L273 TraceCheckUtils]: 170: Hoare triple {21992#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {21992#false} is VALID [2018-11-14 18:50:42,704 INFO L273 TraceCheckUtils]: 171: Hoare triple {21992#false} assume true; {21992#false} is VALID [2018-11-14 18:50:42,704 INFO L273 TraceCheckUtils]: 172: Hoare triple {21992#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {21992#false} is VALID [2018-11-14 18:50:42,704 INFO L273 TraceCheckUtils]: 173: Hoare triple {21992#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {21992#false} is VALID [2018-11-14 18:50:42,704 INFO L273 TraceCheckUtils]: 174: Hoare triple {21992#false} assume true; {21992#false} is VALID [2018-11-14 18:50:42,704 INFO L273 TraceCheckUtils]: 175: Hoare triple {21992#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {21992#false} is VALID [2018-11-14 18:50:42,704 INFO L273 TraceCheckUtils]: 176: Hoare triple {21992#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {21992#false} is VALID [2018-11-14 18:50:42,704 INFO L273 TraceCheckUtils]: 177: Hoare triple {21992#false} assume true; {21992#false} is VALID [2018-11-14 18:50:42,704 INFO L273 TraceCheckUtils]: 178: Hoare triple {21992#false} assume !(~i~2 < 19); {21992#false} is VALID [2018-11-14 18:50:42,705 INFO L273 TraceCheckUtils]: 179: Hoare triple {21992#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {21992#false} is VALID [2018-11-14 18:50:42,705 INFO L256 TraceCheckUtils]: 180: Hoare triple {21992#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {21992#false} is VALID [2018-11-14 18:50:42,705 INFO L273 TraceCheckUtils]: 181: Hoare triple {21992#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {21992#false} is VALID [2018-11-14 18:50:42,705 INFO L273 TraceCheckUtils]: 182: Hoare triple {21992#false} assume true; {21992#false} is VALID [2018-11-14 18:50:42,705 INFO L273 TraceCheckUtils]: 183: Hoare triple {21992#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21992#false} is VALID [2018-11-14 18:50:42,705 INFO L273 TraceCheckUtils]: 184: Hoare triple {21992#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21992#false} is VALID [2018-11-14 18:50:42,705 INFO L273 TraceCheckUtils]: 185: Hoare triple {21992#false} assume true; {21992#false} is VALID [2018-11-14 18:50:42,706 INFO L273 TraceCheckUtils]: 186: Hoare triple {21992#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21992#false} is VALID [2018-11-14 18:50:42,706 INFO L273 TraceCheckUtils]: 187: Hoare triple {21992#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21992#false} is VALID [2018-11-14 18:50:42,706 INFO L273 TraceCheckUtils]: 188: Hoare triple {21992#false} assume true; {21992#false} is VALID [2018-11-14 18:50:42,706 INFO L273 TraceCheckUtils]: 189: Hoare triple {21992#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21992#false} is VALID [2018-11-14 18:50:42,706 INFO L273 TraceCheckUtils]: 190: Hoare triple {21992#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21992#false} is VALID [2018-11-14 18:50:42,706 INFO L273 TraceCheckUtils]: 191: Hoare triple {21992#false} assume true; {21992#false} is VALID [2018-11-14 18:50:42,707 INFO L273 TraceCheckUtils]: 192: Hoare triple {21992#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21992#false} is VALID [2018-11-14 18:50:42,707 INFO L273 TraceCheckUtils]: 193: Hoare triple {21992#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21992#false} is VALID [2018-11-14 18:50:42,707 INFO L273 TraceCheckUtils]: 194: Hoare triple {21992#false} assume true; {21992#false} is VALID [2018-11-14 18:50:42,707 INFO L273 TraceCheckUtils]: 195: Hoare triple {21992#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21992#false} is VALID [2018-11-14 18:50:42,707 INFO L273 TraceCheckUtils]: 196: Hoare triple {21992#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21992#false} is VALID [2018-11-14 18:50:42,707 INFO L273 TraceCheckUtils]: 197: Hoare triple {21992#false} assume true; {21992#false} is VALID [2018-11-14 18:50:42,707 INFO L273 TraceCheckUtils]: 198: Hoare triple {21992#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21992#false} is VALID [2018-11-14 18:50:42,708 INFO L273 TraceCheckUtils]: 199: Hoare triple {21992#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21992#false} is VALID [2018-11-14 18:50:42,708 INFO L273 TraceCheckUtils]: 200: Hoare triple {21992#false} assume true; {21992#false} is VALID [2018-11-14 18:50:42,708 INFO L273 TraceCheckUtils]: 201: Hoare triple {21992#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21992#false} is VALID [2018-11-14 18:50:42,708 INFO L273 TraceCheckUtils]: 202: Hoare triple {21992#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21992#false} is VALID [2018-11-14 18:50:42,708 INFO L273 TraceCheckUtils]: 203: Hoare triple {21992#false} assume true; {21992#false} is VALID [2018-11-14 18:50:42,708 INFO L273 TraceCheckUtils]: 204: Hoare triple {21992#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21992#false} is VALID [2018-11-14 18:50:42,709 INFO L273 TraceCheckUtils]: 205: Hoare triple {21992#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21992#false} is VALID [2018-11-14 18:50:42,709 INFO L273 TraceCheckUtils]: 206: Hoare triple {21992#false} assume true; {21992#false} is VALID [2018-11-14 18:50:42,709 INFO L273 TraceCheckUtils]: 207: Hoare triple {21992#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21992#false} is VALID [2018-11-14 18:50:42,709 INFO L273 TraceCheckUtils]: 208: Hoare triple {21992#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21992#false} is VALID [2018-11-14 18:50:42,709 INFO L273 TraceCheckUtils]: 209: Hoare triple {21992#false} assume true; {21992#false} is VALID [2018-11-14 18:50:42,709 INFO L273 TraceCheckUtils]: 210: Hoare triple {21992#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21992#false} is VALID [2018-11-14 18:50:42,709 INFO L273 TraceCheckUtils]: 211: Hoare triple {21992#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21992#false} is VALID [2018-11-14 18:50:42,710 INFO L273 TraceCheckUtils]: 212: Hoare triple {21992#false} assume true; {21992#false} is VALID [2018-11-14 18:50:42,710 INFO L273 TraceCheckUtils]: 213: Hoare triple {21992#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21992#false} is VALID [2018-11-14 18:50:42,710 INFO L273 TraceCheckUtils]: 214: Hoare triple {21992#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21992#false} is VALID [2018-11-14 18:50:42,710 INFO L273 TraceCheckUtils]: 215: Hoare triple {21992#false} assume true; {21992#false} is VALID [2018-11-14 18:50:42,710 INFO L273 TraceCheckUtils]: 216: Hoare triple {21992#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {21992#false} is VALID [2018-11-14 18:50:42,710 INFO L273 TraceCheckUtils]: 217: Hoare triple {21992#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21992#false} is VALID [2018-11-14 18:50:42,711 INFO L273 TraceCheckUtils]: 218: Hoare triple {21992#false} assume true; {21992#false} is VALID [2018-11-14 18:50:42,711 INFO L273 TraceCheckUtils]: 219: Hoare triple {21992#false} assume !(~i~0 < 20); {21992#false} is VALID [2018-11-14 18:50:42,711 INFO L273 TraceCheckUtils]: 220: Hoare triple {21992#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {21992#false} is VALID [2018-11-14 18:50:42,711 INFO L273 TraceCheckUtils]: 221: Hoare triple {21992#false} assume true; {21992#false} is VALID [2018-11-14 18:50:42,711 INFO L268 TraceCheckUtils]: 222: Hoare quadruple {21992#false} {21992#false} #77#return; {21992#false} is VALID [2018-11-14 18:50:42,711 INFO L273 TraceCheckUtils]: 223: Hoare triple {21992#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {21992#false} is VALID [2018-11-14 18:50:42,711 INFO L273 TraceCheckUtils]: 224: Hoare triple {21992#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {21992#false} is VALID [2018-11-14 18:50:42,712 INFO L273 TraceCheckUtils]: 225: Hoare triple {21992#false} assume !false; {21992#false} is VALID [2018-11-14 18:50:42,737 INFO L134 CoverageAnalysis]: Checked inductivity of 2811 backedges. 966 proven. 222 refuted. 0 times theorem prover too weak. 1623 trivial. 0 not checked. [2018-11-14 18:50:42,763 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:50:42,763 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 15] total 16 [2018-11-14 18:50:42,764 INFO L78 Accepts]: Start accepts. Automaton has 16 states. Word has length 226 [2018-11-14 18:50:42,765 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:50:42,765 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states. [2018-11-14 18:50:42,852 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 87 edges. 87 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:50:42,852 INFO L459 AbstractCegarLoop]: Interpolant automaton has 16 states [2018-11-14 18:50:42,852 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2018-11-14 18:50:42,853 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=120, Invalid=120, Unknown=0, NotChecked=0, Total=240 [2018-11-14 18:50:42,853 INFO L87 Difference]: Start difference. First operand 143 states and 147 transitions. Second operand 16 states. [2018-11-14 18:50:43,368 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:43,368 INFO L93 Difference]: Finished difference Result 221 states and 231 transitions. [2018-11-14 18:50:43,368 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2018-11-14 18:50:43,368 INFO L78 Accepts]: Start accepts. Automaton has 16 states. Word has length 226 [2018-11-14 18:50:43,369 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:50:43,369 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2018-11-14 18:50:43,369 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 97 transitions. [2018-11-14 18:50:43,369 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2018-11-14 18:50:43,370 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 97 transitions. [2018-11-14 18:50:43,370 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 15 states and 97 transitions. [2018-11-14 18:50:43,519 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 97 edges. 97 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:50:43,522 INFO L225 Difference]: With dead ends: 221 [2018-11-14 18:50:43,522 INFO L226 Difference]: Without dead ends: 147 [2018-11-14 18:50:43,523 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 240 GetRequests, 226 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 22 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=120, Invalid=120, Unknown=0, NotChecked=0, Total=240 [2018-11-14 18:50:43,523 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 147 states. [2018-11-14 18:50:43,587 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 147 to 146. [2018-11-14 18:50:43,587 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:50:43,587 INFO L82 GeneralOperation]: Start isEquivalent. First operand 147 states. Second operand 146 states. [2018-11-14 18:50:43,587 INFO L74 IsIncluded]: Start isIncluded. First operand 147 states. Second operand 146 states. [2018-11-14 18:50:43,587 INFO L87 Difference]: Start difference. First operand 147 states. Second operand 146 states. [2018-11-14 18:50:43,590 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:43,590 INFO L93 Difference]: Finished difference Result 147 states and 151 transitions. [2018-11-14 18:50:43,591 INFO L276 IsEmpty]: Start isEmpty. Operand 147 states and 151 transitions. [2018-11-14 18:50:43,591 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:50:43,591 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:50:43,591 INFO L74 IsIncluded]: Start isIncluded. First operand 146 states. Second operand 147 states. [2018-11-14 18:50:43,591 INFO L87 Difference]: Start difference. First operand 146 states. Second operand 147 states. [2018-11-14 18:50:43,593 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:43,593 INFO L93 Difference]: Finished difference Result 147 states and 151 transitions. [2018-11-14 18:50:43,593 INFO L276 IsEmpty]: Start isEmpty. Operand 147 states and 151 transitions. [2018-11-14 18:50:43,593 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:50:43,594 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:50:43,594 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:50:43,594 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:50:43,594 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 146 states. [2018-11-14 18:50:43,595 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 146 states to 146 states and 150 transitions. [2018-11-14 18:50:43,596 INFO L78 Accepts]: Start accepts. Automaton has 146 states and 150 transitions. Word has length 226 [2018-11-14 18:50:43,596 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:50:43,596 INFO L480 AbstractCegarLoop]: Abstraction has 146 states and 150 transitions. [2018-11-14 18:50:43,596 INFO L481 AbstractCegarLoop]: Interpolant automaton has 16 states. [2018-11-14 18:50:43,596 INFO L276 IsEmpty]: Start isEmpty. Operand 146 states and 150 transitions. [2018-11-14 18:50:43,597 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 236 [2018-11-14 18:50:43,597 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:50:43,597 INFO L375 BasicCegarLoop]: trace histogram [42, 39, 39, 21, 20, 20, 8, 7, 7, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:50:43,597 INFO L423 AbstractCegarLoop]: === Iteration 30 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:50:43,597 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:50:43,598 INFO L82 PathProgramCache]: Analyzing trace with hash 1689355527, now seen corresponding path program 26 times [2018-11-14 18:50:43,598 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:50:43,598 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:50:43,598 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:50:43,598 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 18:50:43,599 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:50:43,630 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:50:44,221 INFO L256 TraceCheckUtils]: 0: Hoare triple {23471#true} call ULTIMATE.init(); {23471#true} is VALID [2018-11-14 18:50:44,221 INFO L273 TraceCheckUtils]: 1: Hoare triple {23471#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {23471#true} is VALID [2018-11-14 18:50:44,222 INFO L273 TraceCheckUtils]: 2: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,222 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {23471#true} {23471#true} #69#return; {23471#true} is VALID [2018-11-14 18:50:44,222 INFO L256 TraceCheckUtils]: 4: Hoare triple {23471#true} call #t~ret12 := main(); {23471#true} is VALID [2018-11-14 18:50:44,222 INFO L273 TraceCheckUtils]: 5: Hoare triple {23471#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {23471#true} is VALID [2018-11-14 18:50:44,222 INFO L273 TraceCheckUtils]: 6: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,222 INFO L273 TraceCheckUtils]: 7: Hoare triple {23471#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23471#true} is VALID [2018-11-14 18:50:44,223 INFO L273 TraceCheckUtils]: 8: Hoare triple {23471#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23471#true} is VALID [2018-11-14 18:50:44,223 INFO L273 TraceCheckUtils]: 9: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,223 INFO L273 TraceCheckUtils]: 10: Hoare triple {23471#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23471#true} is VALID [2018-11-14 18:50:44,223 INFO L273 TraceCheckUtils]: 11: Hoare triple {23471#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23471#true} is VALID [2018-11-14 18:50:44,223 INFO L273 TraceCheckUtils]: 12: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,223 INFO L273 TraceCheckUtils]: 13: Hoare triple {23471#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23471#true} is VALID [2018-11-14 18:50:44,224 INFO L273 TraceCheckUtils]: 14: Hoare triple {23471#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23471#true} is VALID [2018-11-14 18:50:44,224 INFO L273 TraceCheckUtils]: 15: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,224 INFO L273 TraceCheckUtils]: 16: Hoare triple {23471#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23471#true} is VALID [2018-11-14 18:50:44,224 INFO L273 TraceCheckUtils]: 17: Hoare triple {23471#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23471#true} is VALID [2018-11-14 18:50:44,224 INFO L273 TraceCheckUtils]: 18: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,224 INFO L273 TraceCheckUtils]: 19: Hoare triple {23471#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23471#true} is VALID [2018-11-14 18:50:44,224 INFO L273 TraceCheckUtils]: 20: Hoare triple {23471#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23471#true} is VALID [2018-11-14 18:50:44,224 INFO L273 TraceCheckUtils]: 21: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,224 INFO L273 TraceCheckUtils]: 22: Hoare triple {23471#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23471#true} is VALID [2018-11-14 18:50:44,225 INFO L273 TraceCheckUtils]: 23: Hoare triple {23471#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23471#true} is VALID [2018-11-14 18:50:44,225 INFO L273 TraceCheckUtils]: 24: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,225 INFO L273 TraceCheckUtils]: 25: Hoare triple {23471#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23471#true} is VALID [2018-11-14 18:50:44,225 INFO L273 TraceCheckUtils]: 26: Hoare triple {23471#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23471#true} is VALID [2018-11-14 18:50:44,225 INFO L273 TraceCheckUtils]: 27: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,225 INFO L273 TraceCheckUtils]: 28: Hoare triple {23471#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23471#true} is VALID [2018-11-14 18:50:44,225 INFO L273 TraceCheckUtils]: 29: Hoare triple {23471#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23471#true} is VALID [2018-11-14 18:50:44,225 INFO L273 TraceCheckUtils]: 30: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,225 INFO L273 TraceCheckUtils]: 31: Hoare triple {23471#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23471#true} is VALID [2018-11-14 18:50:44,225 INFO L273 TraceCheckUtils]: 32: Hoare triple {23471#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23471#true} is VALID [2018-11-14 18:50:44,226 INFO L273 TraceCheckUtils]: 33: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,226 INFO L273 TraceCheckUtils]: 34: Hoare triple {23471#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23471#true} is VALID [2018-11-14 18:50:44,226 INFO L273 TraceCheckUtils]: 35: Hoare triple {23471#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23471#true} is VALID [2018-11-14 18:50:44,226 INFO L273 TraceCheckUtils]: 36: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,226 INFO L273 TraceCheckUtils]: 37: Hoare triple {23471#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23471#true} is VALID [2018-11-14 18:50:44,226 INFO L273 TraceCheckUtils]: 38: Hoare triple {23471#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23471#true} is VALID [2018-11-14 18:50:44,226 INFO L273 TraceCheckUtils]: 39: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,226 INFO L273 TraceCheckUtils]: 40: Hoare triple {23471#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23471#true} is VALID [2018-11-14 18:50:44,226 INFO L273 TraceCheckUtils]: 41: Hoare triple {23471#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23471#true} is VALID [2018-11-14 18:50:44,226 INFO L273 TraceCheckUtils]: 42: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,227 INFO L273 TraceCheckUtils]: 43: Hoare triple {23471#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23471#true} is VALID [2018-11-14 18:50:44,227 INFO L273 TraceCheckUtils]: 44: Hoare triple {23471#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23471#true} is VALID [2018-11-14 18:50:44,227 INFO L273 TraceCheckUtils]: 45: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,227 INFO L273 TraceCheckUtils]: 46: Hoare triple {23471#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23471#true} is VALID [2018-11-14 18:50:44,227 INFO L273 TraceCheckUtils]: 47: Hoare triple {23471#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23471#true} is VALID [2018-11-14 18:50:44,227 INFO L273 TraceCheckUtils]: 48: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,227 INFO L273 TraceCheckUtils]: 49: Hoare triple {23471#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23471#true} is VALID [2018-11-14 18:50:44,227 INFO L273 TraceCheckUtils]: 50: Hoare triple {23471#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23471#true} is VALID [2018-11-14 18:50:44,227 INFO L273 TraceCheckUtils]: 51: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,228 INFO L273 TraceCheckUtils]: 52: Hoare triple {23471#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23471#true} is VALID [2018-11-14 18:50:44,228 INFO L273 TraceCheckUtils]: 53: Hoare triple {23471#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23471#true} is VALID [2018-11-14 18:50:44,228 INFO L273 TraceCheckUtils]: 54: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,228 INFO L273 TraceCheckUtils]: 55: Hoare triple {23471#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23471#true} is VALID [2018-11-14 18:50:44,228 INFO L273 TraceCheckUtils]: 56: Hoare triple {23471#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23471#true} is VALID [2018-11-14 18:50:44,228 INFO L273 TraceCheckUtils]: 57: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,228 INFO L273 TraceCheckUtils]: 58: Hoare triple {23471#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23471#true} is VALID [2018-11-14 18:50:44,228 INFO L273 TraceCheckUtils]: 59: Hoare triple {23471#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23471#true} is VALID [2018-11-14 18:50:44,228 INFO L273 TraceCheckUtils]: 60: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,228 INFO L273 TraceCheckUtils]: 61: Hoare triple {23471#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23471#true} is VALID [2018-11-14 18:50:44,229 INFO L273 TraceCheckUtils]: 62: Hoare triple {23471#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23471#true} is VALID [2018-11-14 18:50:44,229 INFO L273 TraceCheckUtils]: 63: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,229 INFO L273 TraceCheckUtils]: 64: Hoare triple {23471#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23471#true} is VALID [2018-11-14 18:50:44,229 INFO L273 TraceCheckUtils]: 65: Hoare triple {23471#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23471#true} is VALID [2018-11-14 18:50:44,229 INFO L273 TraceCheckUtils]: 66: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,229 INFO L273 TraceCheckUtils]: 67: Hoare triple {23471#true} assume !(~i~1 < 20); {23471#true} is VALID [2018-11-14 18:50:44,229 INFO L256 TraceCheckUtils]: 68: Hoare triple {23471#true} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {23471#true} is VALID [2018-11-14 18:50:44,229 INFO L273 TraceCheckUtils]: 69: Hoare triple {23471#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {23473#(= avg_~i~0 0)} is VALID [2018-11-14 18:50:44,230 INFO L273 TraceCheckUtils]: 70: Hoare triple {23473#(= avg_~i~0 0)} assume true; {23473#(= avg_~i~0 0)} is VALID [2018-11-14 18:50:44,230 INFO L273 TraceCheckUtils]: 71: Hoare triple {23473#(= avg_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23473#(= avg_~i~0 0)} is VALID [2018-11-14 18:50:44,230 INFO L273 TraceCheckUtils]: 72: Hoare triple {23473#(= avg_~i~0 0)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23474#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:44,231 INFO L273 TraceCheckUtils]: 73: Hoare triple {23474#(<= avg_~i~0 1)} assume true; {23474#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:44,231 INFO L273 TraceCheckUtils]: 74: Hoare triple {23474#(<= avg_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23474#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:44,231 INFO L273 TraceCheckUtils]: 75: Hoare triple {23474#(<= avg_~i~0 1)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23475#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:44,232 INFO L273 TraceCheckUtils]: 76: Hoare triple {23475#(<= avg_~i~0 2)} assume true; {23475#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:44,232 INFO L273 TraceCheckUtils]: 77: Hoare triple {23475#(<= avg_~i~0 2)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23475#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:44,232 INFO L273 TraceCheckUtils]: 78: Hoare triple {23475#(<= avg_~i~0 2)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23476#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:44,233 INFO L273 TraceCheckUtils]: 79: Hoare triple {23476#(<= avg_~i~0 3)} assume true; {23476#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:44,233 INFO L273 TraceCheckUtils]: 80: Hoare triple {23476#(<= avg_~i~0 3)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23476#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:44,233 INFO L273 TraceCheckUtils]: 81: Hoare triple {23476#(<= avg_~i~0 3)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23477#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:44,234 INFO L273 TraceCheckUtils]: 82: Hoare triple {23477#(<= avg_~i~0 4)} assume true; {23477#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:44,234 INFO L273 TraceCheckUtils]: 83: Hoare triple {23477#(<= avg_~i~0 4)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23477#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:44,235 INFO L273 TraceCheckUtils]: 84: Hoare triple {23477#(<= avg_~i~0 4)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23478#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:44,235 INFO L273 TraceCheckUtils]: 85: Hoare triple {23478#(<= avg_~i~0 5)} assume true; {23478#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:44,236 INFO L273 TraceCheckUtils]: 86: Hoare triple {23478#(<= avg_~i~0 5)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23478#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:44,237 INFO L273 TraceCheckUtils]: 87: Hoare triple {23478#(<= avg_~i~0 5)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23479#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:44,237 INFO L273 TraceCheckUtils]: 88: Hoare triple {23479#(<= avg_~i~0 6)} assume true; {23479#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:44,237 INFO L273 TraceCheckUtils]: 89: Hoare triple {23479#(<= avg_~i~0 6)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23479#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:44,238 INFO L273 TraceCheckUtils]: 90: Hoare triple {23479#(<= avg_~i~0 6)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23480#(<= avg_~i~0 7)} is VALID [2018-11-14 18:50:44,239 INFO L273 TraceCheckUtils]: 91: Hoare triple {23480#(<= avg_~i~0 7)} assume true; {23480#(<= avg_~i~0 7)} is VALID [2018-11-14 18:50:44,239 INFO L273 TraceCheckUtils]: 92: Hoare triple {23480#(<= avg_~i~0 7)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23480#(<= avg_~i~0 7)} is VALID [2018-11-14 18:50:44,240 INFO L273 TraceCheckUtils]: 93: Hoare triple {23480#(<= avg_~i~0 7)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23481#(<= avg_~i~0 8)} is VALID [2018-11-14 18:50:44,240 INFO L273 TraceCheckUtils]: 94: Hoare triple {23481#(<= avg_~i~0 8)} assume true; {23481#(<= avg_~i~0 8)} is VALID [2018-11-14 18:50:44,241 INFO L273 TraceCheckUtils]: 95: Hoare triple {23481#(<= avg_~i~0 8)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23481#(<= avg_~i~0 8)} is VALID [2018-11-14 18:50:44,241 INFO L273 TraceCheckUtils]: 96: Hoare triple {23481#(<= avg_~i~0 8)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23482#(<= avg_~i~0 9)} is VALID [2018-11-14 18:50:44,242 INFO L273 TraceCheckUtils]: 97: Hoare triple {23482#(<= avg_~i~0 9)} assume true; {23482#(<= avg_~i~0 9)} is VALID [2018-11-14 18:50:44,242 INFO L273 TraceCheckUtils]: 98: Hoare triple {23482#(<= avg_~i~0 9)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23482#(<= avg_~i~0 9)} is VALID [2018-11-14 18:50:44,243 INFO L273 TraceCheckUtils]: 99: Hoare triple {23482#(<= avg_~i~0 9)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23483#(<= avg_~i~0 10)} is VALID [2018-11-14 18:50:44,243 INFO L273 TraceCheckUtils]: 100: Hoare triple {23483#(<= avg_~i~0 10)} assume true; {23483#(<= avg_~i~0 10)} is VALID [2018-11-14 18:50:44,244 INFO L273 TraceCheckUtils]: 101: Hoare triple {23483#(<= avg_~i~0 10)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23483#(<= avg_~i~0 10)} is VALID [2018-11-14 18:50:44,245 INFO L273 TraceCheckUtils]: 102: Hoare triple {23483#(<= avg_~i~0 10)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23484#(<= avg_~i~0 11)} is VALID [2018-11-14 18:50:44,245 INFO L273 TraceCheckUtils]: 103: Hoare triple {23484#(<= avg_~i~0 11)} assume true; {23484#(<= avg_~i~0 11)} is VALID [2018-11-14 18:50:44,245 INFO L273 TraceCheckUtils]: 104: Hoare triple {23484#(<= avg_~i~0 11)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23484#(<= avg_~i~0 11)} is VALID [2018-11-14 18:50:44,246 INFO L273 TraceCheckUtils]: 105: Hoare triple {23484#(<= avg_~i~0 11)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23485#(<= avg_~i~0 12)} is VALID [2018-11-14 18:50:44,247 INFO L273 TraceCheckUtils]: 106: Hoare triple {23485#(<= avg_~i~0 12)} assume true; {23485#(<= avg_~i~0 12)} is VALID [2018-11-14 18:50:44,247 INFO L273 TraceCheckUtils]: 107: Hoare triple {23485#(<= avg_~i~0 12)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23485#(<= avg_~i~0 12)} is VALID [2018-11-14 18:50:44,248 INFO L273 TraceCheckUtils]: 108: Hoare triple {23485#(<= avg_~i~0 12)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23486#(<= avg_~i~0 13)} is VALID [2018-11-14 18:50:44,248 INFO L273 TraceCheckUtils]: 109: Hoare triple {23486#(<= avg_~i~0 13)} assume true; {23486#(<= avg_~i~0 13)} is VALID [2018-11-14 18:50:44,249 INFO L273 TraceCheckUtils]: 110: Hoare triple {23486#(<= avg_~i~0 13)} assume !(~i~0 < 20); {23472#false} is VALID [2018-11-14 18:50:44,249 INFO L273 TraceCheckUtils]: 111: Hoare triple {23472#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {23472#false} is VALID [2018-11-14 18:50:44,249 INFO L273 TraceCheckUtils]: 112: Hoare triple {23472#false} assume true; {23472#false} is VALID [2018-11-14 18:50:44,249 INFO L268 TraceCheckUtils]: 113: Hoare quadruple {23472#false} {23471#true} #73#return; {23472#false} is VALID [2018-11-14 18:50:44,250 INFO L273 TraceCheckUtils]: 114: Hoare triple {23472#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); {23472#false} is VALID [2018-11-14 18:50:44,250 INFO L256 TraceCheckUtils]: 115: Hoare triple {23472#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {23471#true} is VALID [2018-11-14 18:50:44,250 INFO L273 TraceCheckUtils]: 116: Hoare triple {23471#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {23471#true} is VALID [2018-11-14 18:50:44,250 INFO L273 TraceCheckUtils]: 117: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,250 INFO L273 TraceCheckUtils]: 118: Hoare triple {23471#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23471#true} is VALID [2018-11-14 18:50:44,250 INFO L273 TraceCheckUtils]: 119: Hoare triple {23471#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23471#true} is VALID [2018-11-14 18:50:44,251 INFO L273 TraceCheckUtils]: 120: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,251 INFO L273 TraceCheckUtils]: 121: Hoare triple {23471#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23471#true} is VALID [2018-11-14 18:50:44,251 INFO L273 TraceCheckUtils]: 122: Hoare triple {23471#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23471#true} is VALID [2018-11-14 18:50:44,251 INFO L273 TraceCheckUtils]: 123: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,251 INFO L273 TraceCheckUtils]: 124: Hoare triple {23471#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23471#true} is VALID [2018-11-14 18:50:44,251 INFO L273 TraceCheckUtils]: 125: Hoare triple {23471#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23471#true} is VALID [2018-11-14 18:50:44,252 INFO L273 TraceCheckUtils]: 126: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,252 INFO L273 TraceCheckUtils]: 127: Hoare triple {23471#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23471#true} is VALID [2018-11-14 18:50:44,252 INFO L273 TraceCheckUtils]: 128: Hoare triple {23471#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23471#true} is VALID [2018-11-14 18:50:44,252 INFO L273 TraceCheckUtils]: 129: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,252 INFO L273 TraceCheckUtils]: 130: Hoare triple {23471#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23471#true} is VALID [2018-11-14 18:50:44,252 INFO L273 TraceCheckUtils]: 131: Hoare triple {23471#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23471#true} is VALID [2018-11-14 18:50:44,252 INFO L273 TraceCheckUtils]: 132: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,252 INFO L273 TraceCheckUtils]: 133: Hoare triple {23471#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23471#true} is VALID [2018-11-14 18:50:44,252 INFO L273 TraceCheckUtils]: 134: Hoare triple {23471#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23471#true} is VALID [2018-11-14 18:50:44,253 INFO L273 TraceCheckUtils]: 135: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,253 INFO L273 TraceCheckUtils]: 136: Hoare triple {23471#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23471#true} is VALID [2018-11-14 18:50:44,253 INFO L273 TraceCheckUtils]: 137: Hoare triple {23471#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23471#true} is VALID [2018-11-14 18:50:44,253 INFO L273 TraceCheckUtils]: 138: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,253 INFO L273 TraceCheckUtils]: 139: Hoare triple {23471#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23471#true} is VALID [2018-11-14 18:50:44,253 INFO L273 TraceCheckUtils]: 140: Hoare triple {23471#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23471#true} is VALID [2018-11-14 18:50:44,253 INFO L273 TraceCheckUtils]: 141: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,253 INFO L273 TraceCheckUtils]: 142: Hoare triple {23471#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23471#true} is VALID [2018-11-14 18:50:44,253 INFO L273 TraceCheckUtils]: 143: Hoare triple {23471#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23471#true} is VALID [2018-11-14 18:50:44,253 INFO L273 TraceCheckUtils]: 144: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,254 INFO L273 TraceCheckUtils]: 145: Hoare triple {23471#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23471#true} is VALID [2018-11-14 18:50:44,254 INFO L273 TraceCheckUtils]: 146: Hoare triple {23471#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23471#true} is VALID [2018-11-14 18:50:44,254 INFO L273 TraceCheckUtils]: 147: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,254 INFO L273 TraceCheckUtils]: 148: Hoare triple {23471#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23471#true} is VALID [2018-11-14 18:50:44,254 INFO L273 TraceCheckUtils]: 149: Hoare triple {23471#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23471#true} is VALID [2018-11-14 18:50:44,254 INFO L273 TraceCheckUtils]: 150: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,254 INFO L273 TraceCheckUtils]: 151: Hoare triple {23471#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23471#true} is VALID [2018-11-14 18:50:44,254 INFO L273 TraceCheckUtils]: 152: Hoare triple {23471#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23471#true} is VALID [2018-11-14 18:50:44,254 INFO L273 TraceCheckUtils]: 153: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,254 INFO L273 TraceCheckUtils]: 154: Hoare triple {23471#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23471#true} is VALID [2018-11-14 18:50:44,255 INFO L273 TraceCheckUtils]: 155: Hoare triple {23471#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23471#true} is VALID [2018-11-14 18:50:44,255 INFO L273 TraceCheckUtils]: 156: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,255 INFO L273 TraceCheckUtils]: 157: Hoare triple {23471#true} assume !(~i~0 < 20); {23471#true} is VALID [2018-11-14 18:50:44,255 INFO L273 TraceCheckUtils]: 158: Hoare triple {23471#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {23471#true} is VALID [2018-11-14 18:50:44,255 INFO L273 TraceCheckUtils]: 159: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,255 INFO L268 TraceCheckUtils]: 160: Hoare quadruple {23471#true} {23472#false} #75#return; {23472#false} is VALID [2018-11-14 18:50:44,255 INFO L273 TraceCheckUtils]: 161: Hoare triple {23472#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; {23472#false} is VALID [2018-11-14 18:50:44,255 INFO L273 TraceCheckUtils]: 162: Hoare triple {23472#false} assume true; {23472#false} is VALID [2018-11-14 18:50:44,255 INFO L273 TraceCheckUtils]: 163: Hoare triple {23472#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {23472#false} is VALID [2018-11-14 18:50:44,255 INFO L273 TraceCheckUtils]: 164: Hoare triple {23472#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {23472#false} is VALID [2018-11-14 18:50:44,256 INFO L273 TraceCheckUtils]: 165: Hoare triple {23472#false} assume true; {23472#false} is VALID [2018-11-14 18:50:44,256 INFO L273 TraceCheckUtils]: 166: Hoare triple {23472#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {23472#false} is VALID [2018-11-14 18:50:44,256 INFO L273 TraceCheckUtils]: 167: Hoare triple {23472#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {23472#false} is VALID [2018-11-14 18:50:44,256 INFO L273 TraceCheckUtils]: 168: Hoare triple {23472#false} assume true; {23472#false} is VALID [2018-11-14 18:50:44,256 INFO L273 TraceCheckUtils]: 169: Hoare triple {23472#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {23472#false} is VALID [2018-11-14 18:50:44,256 INFO L273 TraceCheckUtils]: 170: Hoare triple {23472#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {23472#false} is VALID [2018-11-14 18:50:44,256 INFO L273 TraceCheckUtils]: 171: Hoare triple {23472#false} assume true; {23472#false} is VALID [2018-11-14 18:50:44,256 INFO L273 TraceCheckUtils]: 172: Hoare triple {23472#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {23472#false} is VALID [2018-11-14 18:50:44,256 INFO L273 TraceCheckUtils]: 173: Hoare triple {23472#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {23472#false} is VALID [2018-11-14 18:50:44,256 INFO L273 TraceCheckUtils]: 174: Hoare triple {23472#false} assume true; {23472#false} is VALID [2018-11-14 18:50:44,257 INFO L273 TraceCheckUtils]: 175: Hoare triple {23472#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {23472#false} is VALID [2018-11-14 18:50:44,257 INFO L273 TraceCheckUtils]: 176: Hoare triple {23472#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {23472#false} is VALID [2018-11-14 18:50:44,257 INFO L273 TraceCheckUtils]: 177: Hoare triple {23472#false} assume true; {23472#false} is VALID [2018-11-14 18:50:44,257 INFO L273 TraceCheckUtils]: 178: Hoare triple {23472#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {23472#false} is VALID [2018-11-14 18:50:44,257 INFO L273 TraceCheckUtils]: 179: Hoare triple {23472#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {23472#false} is VALID [2018-11-14 18:50:44,257 INFO L273 TraceCheckUtils]: 180: Hoare triple {23472#false} assume true; {23472#false} is VALID [2018-11-14 18:50:44,257 INFO L273 TraceCheckUtils]: 181: Hoare triple {23472#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {23472#false} is VALID [2018-11-14 18:50:44,257 INFO L273 TraceCheckUtils]: 182: Hoare triple {23472#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {23472#false} is VALID [2018-11-14 18:50:44,257 INFO L273 TraceCheckUtils]: 183: Hoare triple {23472#false} assume true; {23472#false} is VALID [2018-11-14 18:50:44,257 INFO L273 TraceCheckUtils]: 184: Hoare triple {23472#false} assume !(~i~2 < 19); {23472#false} is VALID [2018-11-14 18:50:44,258 INFO L273 TraceCheckUtils]: 185: Hoare triple {23472#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {23472#false} is VALID [2018-11-14 18:50:44,258 INFO L256 TraceCheckUtils]: 186: Hoare triple {23472#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {23471#true} is VALID [2018-11-14 18:50:44,258 INFO L273 TraceCheckUtils]: 187: Hoare triple {23471#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {23471#true} is VALID [2018-11-14 18:50:44,258 INFO L273 TraceCheckUtils]: 188: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,258 INFO L273 TraceCheckUtils]: 189: Hoare triple {23471#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23471#true} is VALID [2018-11-14 18:50:44,258 INFO L273 TraceCheckUtils]: 190: Hoare triple {23471#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23471#true} is VALID [2018-11-14 18:50:44,258 INFO L273 TraceCheckUtils]: 191: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,258 INFO L273 TraceCheckUtils]: 192: Hoare triple {23471#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23471#true} is VALID [2018-11-14 18:50:44,258 INFO L273 TraceCheckUtils]: 193: Hoare triple {23471#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23471#true} is VALID [2018-11-14 18:50:44,258 INFO L273 TraceCheckUtils]: 194: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,259 INFO L273 TraceCheckUtils]: 195: Hoare triple {23471#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23471#true} is VALID [2018-11-14 18:50:44,259 INFO L273 TraceCheckUtils]: 196: Hoare triple {23471#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23471#true} is VALID [2018-11-14 18:50:44,259 INFO L273 TraceCheckUtils]: 197: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,259 INFO L273 TraceCheckUtils]: 198: Hoare triple {23471#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23471#true} is VALID [2018-11-14 18:50:44,259 INFO L273 TraceCheckUtils]: 199: Hoare triple {23471#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23471#true} is VALID [2018-11-14 18:50:44,259 INFO L273 TraceCheckUtils]: 200: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,259 INFO L273 TraceCheckUtils]: 201: Hoare triple {23471#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23471#true} is VALID [2018-11-14 18:50:44,259 INFO L273 TraceCheckUtils]: 202: Hoare triple {23471#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23471#true} is VALID [2018-11-14 18:50:44,259 INFO L273 TraceCheckUtils]: 203: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,259 INFO L273 TraceCheckUtils]: 204: Hoare triple {23471#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23471#true} is VALID [2018-11-14 18:50:44,260 INFO L273 TraceCheckUtils]: 205: Hoare triple {23471#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23471#true} is VALID [2018-11-14 18:50:44,260 INFO L273 TraceCheckUtils]: 206: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,260 INFO L273 TraceCheckUtils]: 207: Hoare triple {23471#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23471#true} is VALID [2018-11-14 18:50:44,260 INFO L273 TraceCheckUtils]: 208: Hoare triple {23471#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23471#true} is VALID [2018-11-14 18:50:44,260 INFO L273 TraceCheckUtils]: 209: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,260 INFO L273 TraceCheckUtils]: 210: Hoare triple {23471#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23471#true} is VALID [2018-11-14 18:50:44,260 INFO L273 TraceCheckUtils]: 211: Hoare triple {23471#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23471#true} is VALID [2018-11-14 18:50:44,260 INFO L273 TraceCheckUtils]: 212: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,260 INFO L273 TraceCheckUtils]: 213: Hoare triple {23471#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23471#true} is VALID [2018-11-14 18:50:44,261 INFO L273 TraceCheckUtils]: 214: Hoare triple {23471#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23471#true} is VALID [2018-11-14 18:50:44,261 INFO L273 TraceCheckUtils]: 215: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,261 INFO L273 TraceCheckUtils]: 216: Hoare triple {23471#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23471#true} is VALID [2018-11-14 18:50:44,261 INFO L273 TraceCheckUtils]: 217: Hoare triple {23471#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23471#true} is VALID [2018-11-14 18:50:44,261 INFO L273 TraceCheckUtils]: 218: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,261 INFO L273 TraceCheckUtils]: 219: Hoare triple {23471#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23471#true} is VALID [2018-11-14 18:50:44,261 INFO L273 TraceCheckUtils]: 220: Hoare triple {23471#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23471#true} is VALID [2018-11-14 18:50:44,261 INFO L273 TraceCheckUtils]: 221: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,261 INFO L273 TraceCheckUtils]: 222: Hoare triple {23471#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23471#true} is VALID [2018-11-14 18:50:44,261 INFO L273 TraceCheckUtils]: 223: Hoare triple {23471#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23471#true} is VALID [2018-11-14 18:50:44,262 INFO L273 TraceCheckUtils]: 224: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,262 INFO L273 TraceCheckUtils]: 225: Hoare triple {23471#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23471#true} is VALID [2018-11-14 18:50:44,262 INFO L273 TraceCheckUtils]: 226: Hoare triple {23471#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23471#true} is VALID [2018-11-14 18:50:44,262 INFO L273 TraceCheckUtils]: 227: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,262 INFO L273 TraceCheckUtils]: 228: Hoare triple {23471#true} assume !(~i~0 < 20); {23471#true} is VALID [2018-11-14 18:50:44,262 INFO L273 TraceCheckUtils]: 229: Hoare triple {23471#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {23471#true} is VALID [2018-11-14 18:50:44,262 INFO L273 TraceCheckUtils]: 230: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,262 INFO L268 TraceCheckUtils]: 231: Hoare quadruple {23471#true} {23472#false} #77#return; {23472#false} is VALID [2018-11-14 18:50:44,262 INFO L273 TraceCheckUtils]: 232: Hoare triple {23472#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {23472#false} is VALID [2018-11-14 18:50:44,262 INFO L273 TraceCheckUtils]: 233: Hoare triple {23472#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {23472#false} is VALID [2018-11-14 18:50:44,263 INFO L273 TraceCheckUtils]: 234: Hoare triple {23472#false} assume !false; {23472#false} is VALID [2018-11-14 18:50:44,283 INFO L134 CoverageAnalysis]: Checked inductivity of 3162 backedges. 0 proven. 1388 refuted. 0 times theorem prover too weak. 1774 trivial. 0 not checked. [2018-11-14 18:50:44,283 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:50:44,283 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 28 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 28 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:50:44,294 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-14 18:50:44,375 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-14 18:50:44,375 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 18:50:44,413 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:50:44,414 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:50:44,680 INFO L256 TraceCheckUtils]: 0: Hoare triple {23471#true} call ULTIMATE.init(); {23471#true} is VALID [2018-11-14 18:50:44,680 INFO L273 TraceCheckUtils]: 1: Hoare triple {23471#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {23471#true} is VALID [2018-11-14 18:50:44,680 INFO L273 TraceCheckUtils]: 2: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,681 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {23471#true} {23471#true} #69#return; {23471#true} is VALID [2018-11-14 18:50:44,681 INFO L256 TraceCheckUtils]: 4: Hoare triple {23471#true} call #t~ret12 := main(); {23471#true} is VALID [2018-11-14 18:50:44,681 INFO L273 TraceCheckUtils]: 5: Hoare triple {23471#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {23471#true} is VALID [2018-11-14 18:50:44,681 INFO L273 TraceCheckUtils]: 6: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,681 INFO L273 TraceCheckUtils]: 7: Hoare triple {23471#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23471#true} is VALID [2018-11-14 18:50:44,682 INFO L273 TraceCheckUtils]: 8: Hoare triple {23471#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23471#true} is VALID [2018-11-14 18:50:44,682 INFO L273 TraceCheckUtils]: 9: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,682 INFO L273 TraceCheckUtils]: 10: Hoare triple {23471#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23471#true} is VALID [2018-11-14 18:50:44,682 INFO L273 TraceCheckUtils]: 11: Hoare triple {23471#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23471#true} is VALID [2018-11-14 18:50:44,682 INFO L273 TraceCheckUtils]: 12: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,682 INFO L273 TraceCheckUtils]: 13: Hoare triple {23471#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23471#true} is VALID [2018-11-14 18:50:44,683 INFO L273 TraceCheckUtils]: 14: Hoare triple {23471#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23471#true} is VALID [2018-11-14 18:50:44,683 INFO L273 TraceCheckUtils]: 15: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,683 INFO L273 TraceCheckUtils]: 16: Hoare triple {23471#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23471#true} is VALID [2018-11-14 18:50:44,683 INFO L273 TraceCheckUtils]: 17: Hoare triple {23471#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23471#true} is VALID [2018-11-14 18:50:44,683 INFO L273 TraceCheckUtils]: 18: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,684 INFO L273 TraceCheckUtils]: 19: Hoare triple {23471#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23471#true} is VALID [2018-11-14 18:50:44,684 INFO L273 TraceCheckUtils]: 20: Hoare triple {23471#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23471#true} is VALID [2018-11-14 18:50:44,684 INFO L273 TraceCheckUtils]: 21: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,684 INFO L273 TraceCheckUtils]: 22: Hoare triple {23471#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23471#true} is VALID [2018-11-14 18:50:44,684 INFO L273 TraceCheckUtils]: 23: Hoare triple {23471#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23471#true} is VALID [2018-11-14 18:50:44,684 INFO L273 TraceCheckUtils]: 24: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,685 INFO L273 TraceCheckUtils]: 25: Hoare triple {23471#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23471#true} is VALID [2018-11-14 18:50:44,685 INFO L273 TraceCheckUtils]: 26: Hoare triple {23471#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23471#true} is VALID [2018-11-14 18:50:44,685 INFO L273 TraceCheckUtils]: 27: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,685 INFO L273 TraceCheckUtils]: 28: Hoare triple {23471#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23471#true} is VALID [2018-11-14 18:50:44,685 INFO L273 TraceCheckUtils]: 29: Hoare triple {23471#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23471#true} is VALID [2018-11-14 18:50:44,685 INFO L273 TraceCheckUtils]: 30: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,685 INFO L273 TraceCheckUtils]: 31: Hoare triple {23471#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23471#true} is VALID [2018-11-14 18:50:44,685 INFO L273 TraceCheckUtils]: 32: Hoare triple {23471#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23471#true} is VALID [2018-11-14 18:50:44,685 INFO L273 TraceCheckUtils]: 33: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,685 INFO L273 TraceCheckUtils]: 34: Hoare triple {23471#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23471#true} is VALID [2018-11-14 18:50:44,686 INFO L273 TraceCheckUtils]: 35: Hoare triple {23471#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23471#true} is VALID [2018-11-14 18:50:44,686 INFO L273 TraceCheckUtils]: 36: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,686 INFO L273 TraceCheckUtils]: 37: Hoare triple {23471#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23471#true} is VALID [2018-11-14 18:50:44,686 INFO L273 TraceCheckUtils]: 38: Hoare triple {23471#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23471#true} is VALID [2018-11-14 18:50:44,686 INFO L273 TraceCheckUtils]: 39: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,686 INFO L273 TraceCheckUtils]: 40: Hoare triple {23471#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23471#true} is VALID [2018-11-14 18:50:44,686 INFO L273 TraceCheckUtils]: 41: Hoare triple {23471#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23471#true} is VALID [2018-11-14 18:50:44,686 INFO L273 TraceCheckUtils]: 42: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,686 INFO L273 TraceCheckUtils]: 43: Hoare triple {23471#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23471#true} is VALID [2018-11-14 18:50:44,686 INFO L273 TraceCheckUtils]: 44: Hoare triple {23471#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23471#true} is VALID [2018-11-14 18:50:44,687 INFO L273 TraceCheckUtils]: 45: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,687 INFO L273 TraceCheckUtils]: 46: Hoare triple {23471#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23471#true} is VALID [2018-11-14 18:50:44,687 INFO L273 TraceCheckUtils]: 47: Hoare triple {23471#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23471#true} is VALID [2018-11-14 18:50:44,687 INFO L273 TraceCheckUtils]: 48: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,687 INFO L273 TraceCheckUtils]: 49: Hoare triple {23471#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23471#true} is VALID [2018-11-14 18:50:44,687 INFO L273 TraceCheckUtils]: 50: Hoare triple {23471#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23471#true} is VALID [2018-11-14 18:50:44,687 INFO L273 TraceCheckUtils]: 51: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,687 INFO L273 TraceCheckUtils]: 52: Hoare triple {23471#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23471#true} is VALID [2018-11-14 18:50:44,687 INFO L273 TraceCheckUtils]: 53: Hoare triple {23471#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23471#true} is VALID [2018-11-14 18:50:44,687 INFO L273 TraceCheckUtils]: 54: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,688 INFO L273 TraceCheckUtils]: 55: Hoare triple {23471#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23471#true} is VALID [2018-11-14 18:50:44,688 INFO L273 TraceCheckUtils]: 56: Hoare triple {23471#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23471#true} is VALID [2018-11-14 18:50:44,688 INFO L273 TraceCheckUtils]: 57: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,688 INFO L273 TraceCheckUtils]: 58: Hoare triple {23471#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23471#true} is VALID [2018-11-14 18:50:44,688 INFO L273 TraceCheckUtils]: 59: Hoare triple {23471#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23471#true} is VALID [2018-11-14 18:50:44,688 INFO L273 TraceCheckUtils]: 60: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,688 INFO L273 TraceCheckUtils]: 61: Hoare triple {23471#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23471#true} is VALID [2018-11-14 18:50:44,688 INFO L273 TraceCheckUtils]: 62: Hoare triple {23471#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23471#true} is VALID [2018-11-14 18:50:44,688 INFO L273 TraceCheckUtils]: 63: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,688 INFO L273 TraceCheckUtils]: 64: Hoare triple {23471#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23471#true} is VALID [2018-11-14 18:50:44,689 INFO L273 TraceCheckUtils]: 65: Hoare triple {23471#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23471#true} is VALID [2018-11-14 18:50:44,689 INFO L273 TraceCheckUtils]: 66: Hoare triple {23471#true} assume true; {23471#true} is VALID [2018-11-14 18:50:44,689 INFO L273 TraceCheckUtils]: 67: Hoare triple {23471#true} assume !(~i~1 < 20); {23471#true} is VALID [2018-11-14 18:50:44,689 INFO L256 TraceCheckUtils]: 68: Hoare triple {23471#true} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {23471#true} is VALID [2018-11-14 18:50:44,689 INFO L273 TraceCheckUtils]: 69: Hoare triple {23471#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {23697#(<= avg_~i~0 0)} is VALID [2018-11-14 18:50:44,690 INFO L273 TraceCheckUtils]: 70: Hoare triple {23697#(<= avg_~i~0 0)} assume true; {23697#(<= avg_~i~0 0)} is VALID [2018-11-14 18:50:44,690 INFO L273 TraceCheckUtils]: 71: Hoare triple {23697#(<= avg_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23697#(<= avg_~i~0 0)} is VALID [2018-11-14 18:50:44,690 INFO L273 TraceCheckUtils]: 72: Hoare triple {23697#(<= avg_~i~0 0)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23474#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:44,691 INFO L273 TraceCheckUtils]: 73: Hoare triple {23474#(<= avg_~i~0 1)} assume true; {23474#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:44,691 INFO L273 TraceCheckUtils]: 74: Hoare triple {23474#(<= avg_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23474#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:44,692 INFO L273 TraceCheckUtils]: 75: Hoare triple {23474#(<= avg_~i~0 1)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23475#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:44,692 INFO L273 TraceCheckUtils]: 76: Hoare triple {23475#(<= avg_~i~0 2)} assume true; {23475#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:44,693 INFO L273 TraceCheckUtils]: 77: Hoare triple {23475#(<= avg_~i~0 2)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23475#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:44,693 INFO L273 TraceCheckUtils]: 78: Hoare triple {23475#(<= avg_~i~0 2)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23476#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:44,694 INFO L273 TraceCheckUtils]: 79: Hoare triple {23476#(<= avg_~i~0 3)} assume true; {23476#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:44,694 INFO L273 TraceCheckUtils]: 80: Hoare triple {23476#(<= avg_~i~0 3)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23476#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:44,695 INFO L273 TraceCheckUtils]: 81: Hoare triple {23476#(<= avg_~i~0 3)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23477#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:44,696 INFO L273 TraceCheckUtils]: 82: Hoare triple {23477#(<= avg_~i~0 4)} assume true; {23477#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:44,696 INFO L273 TraceCheckUtils]: 83: Hoare triple {23477#(<= avg_~i~0 4)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23477#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:44,697 INFO L273 TraceCheckUtils]: 84: Hoare triple {23477#(<= avg_~i~0 4)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23478#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:44,697 INFO L273 TraceCheckUtils]: 85: Hoare triple {23478#(<= avg_~i~0 5)} assume true; {23478#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:44,698 INFO L273 TraceCheckUtils]: 86: Hoare triple {23478#(<= avg_~i~0 5)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23478#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:44,698 INFO L273 TraceCheckUtils]: 87: Hoare triple {23478#(<= avg_~i~0 5)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23479#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:44,699 INFO L273 TraceCheckUtils]: 88: Hoare triple {23479#(<= avg_~i~0 6)} assume true; {23479#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:44,699 INFO L273 TraceCheckUtils]: 89: Hoare triple {23479#(<= avg_~i~0 6)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23479#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:44,700 INFO L273 TraceCheckUtils]: 90: Hoare triple {23479#(<= avg_~i~0 6)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23480#(<= avg_~i~0 7)} is VALID [2018-11-14 18:50:44,701 INFO L273 TraceCheckUtils]: 91: Hoare triple {23480#(<= avg_~i~0 7)} assume true; {23480#(<= avg_~i~0 7)} is VALID [2018-11-14 18:50:44,701 INFO L273 TraceCheckUtils]: 92: Hoare triple {23480#(<= avg_~i~0 7)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23480#(<= avg_~i~0 7)} is VALID [2018-11-14 18:50:44,702 INFO L273 TraceCheckUtils]: 93: Hoare triple {23480#(<= avg_~i~0 7)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23481#(<= avg_~i~0 8)} is VALID [2018-11-14 18:50:44,702 INFO L273 TraceCheckUtils]: 94: Hoare triple {23481#(<= avg_~i~0 8)} assume true; {23481#(<= avg_~i~0 8)} is VALID [2018-11-14 18:50:44,703 INFO L273 TraceCheckUtils]: 95: Hoare triple {23481#(<= avg_~i~0 8)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23481#(<= avg_~i~0 8)} is VALID [2018-11-14 18:50:44,704 INFO L273 TraceCheckUtils]: 96: Hoare triple {23481#(<= avg_~i~0 8)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23482#(<= avg_~i~0 9)} is VALID [2018-11-14 18:50:44,704 INFO L273 TraceCheckUtils]: 97: Hoare triple {23482#(<= avg_~i~0 9)} assume true; {23482#(<= avg_~i~0 9)} is VALID [2018-11-14 18:50:44,705 INFO L273 TraceCheckUtils]: 98: Hoare triple {23482#(<= avg_~i~0 9)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23482#(<= avg_~i~0 9)} is VALID [2018-11-14 18:50:44,707 INFO L273 TraceCheckUtils]: 99: Hoare triple {23482#(<= avg_~i~0 9)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23483#(<= avg_~i~0 10)} is VALID [2018-11-14 18:50:44,713 INFO L273 TraceCheckUtils]: 100: Hoare triple {23483#(<= avg_~i~0 10)} assume true; {23483#(<= avg_~i~0 10)} is VALID [2018-11-14 18:50:44,713 INFO L273 TraceCheckUtils]: 101: Hoare triple {23483#(<= avg_~i~0 10)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23483#(<= avg_~i~0 10)} is VALID [2018-11-14 18:50:44,716 INFO L273 TraceCheckUtils]: 102: Hoare triple {23483#(<= avg_~i~0 10)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23484#(<= avg_~i~0 11)} is VALID [2018-11-14 18:50:44,718 INFO L273 TraceCheckUtils]: 103: Hoare triple {23484#(<= avg_~i~0 11)} assume true; {23484#(<= avg_~i~0 11)} is VALID [2018-11-14 18:50:44,720 INFO L273 TraceCheckUtils]: 104: Hoare triple {23484#(<= avg_~i~0 11)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23484#(<= avg_~i~0 11)} is VALID [2018-11-14 18:50:44,720 INFO L273 TraceCheckUtils]: 105: Hoare triple {23484#(<= avg_~i~0 11)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23485#(<= avg_~i~0 12)} is VALID [2018-11-14 18:50:44,723 INFO L273 TraceCheckUtils]: 106: Hoare triple {23485#(<= avg_~i~0 12)} assume true; {23485#(<= avg_~i~0 12)} is VALID [2018-11-14 18:50:44,723 INFO L273 TraceCheckUtils]: 107: Hoare triple {23485#(<= avg_~i~0 12)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23485#(<= avg_~i~0 12)} is VALID [2018-11-14 18:50:44,726 INFO L273 TraceCheckUtils]: 108: Hoare triple {23485#(<= avg_~i~0 12)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23486#(<= avg_~i~0 13)} is VALID [2018-11-14 18:50:44,726 INFO L273 TraceCheckUtils]: 109: Hoare triple {23486#(<= avg_~i~0 13)} assume true; {23486#(<= avg_~i~0 13)} is VALID [2018-11-14 18:50:44,728 INFO L273 TraceCheckUtils]: 110: Hoare triple {23486#(<= avg_~i~0 13)} assume !(~i~0 < 20); {23472#false} is VALID [2018-11-14 18:50:44,728 INFO L273 TraceCheckUtils]: 111: Hoare triple {23472#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {23472#false} is VALID [2018-11-14 18:50:44,728 INFO L273 TraceCheckUtils]: 112: Hoare triple {23472#false} assume true; {23472#false} is VALID [2018-11-14 18:50:44,728 INFO L268 TraceCheckUtils]: 113: Hoare quadruple {23472#false} {23471#true} #73#return; {23472#false} is VALID [2018-11-14 18:50:44,728 INFO L273 TraceCheckUtils]: 114: Hoare triple {23472#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); {23472#false} is VALID [2018-11-14 18:50:44,728 INFO L256 TraceCheckUtils]: 115: Hoare triple {23472#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {23472#false} is VALID [2018-11-14 18:50:44,728 INFO L273 TraceCheckUtils]: 116: Hoare triple {23472#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {23472#false} is VALID [2018-11-14 18:50:44,728 INFO L273 TraceCheckUtils]: 117: Hoare triple {23472#false} assume true; {23472#false} is VALID [2018-11-14 18:50:44,729 INFO L273 TraceCheckUtils]: 118: Hoare triple {23472#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23472#false} is VALID [2018-11-14 18:50:44,729 INFO L273 TraceCheckUtils]: 119: Hoare triple {23472#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23472#false} is VALID [2018-11-14 18:50:44,729 INFO L273 TraceCheckUtils]: 120: Hoare triple {23472#false} assume true; {23472#false} is VALID [2018-11-14 18:50:44,729 INFO L273 TraceCheckUtils]: 121: Hoare triple {23472#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23472#false} is VALID [2018-11-14 18:50:44,729 INFO L273 TraceCheckUtils]: 122: Hoare triple {23472#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23472#false} is VALID [2018-11-14 18:50:44,729 INFO L273 TraceCheckUtils]: 123: Hoare triple {23472#false} assume true; {23472#false} is VALID [2018-11-14 18:50:44,729 INFO L273 TraceCheckUtils]: 124: Hoare triple {23472#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23472#false} is VALID [2018-11-14 18:50:44,729 INFO L273 TraceCheckUtils]: 125: Hoare triple {23472#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23472#false} is VALID [2018-11-14 18:50:44,729 INFO L273 TraceCheckUtils]: 126: Hoare triple {23472#false} assume true; {23472#false} is VALID [2018-11-14 18:50:44,730 INFO L273 TraceCheckUtils]: 127: Hoare triple {23472#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23472#false} is VALID [2018-11-14 18:50:44,730 INFO L273 TraceCheckUtils]: 128: Hoare triple {23472#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23472#false} is VALID [2018-11-14 18:50:44,730 INFO L273 TraceCheckUtils]: 129: Hoare triple {23472#false} assume true; {23472#false} is VALID [2018-11-14 18:50:44,730 INFO L273 TraceCheckUtils]: 130: Hoare triple {23472#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23472#false} is VALID [2018-11-14 18:50:44,730 INFO L273 TraceCheckUtils]: 131: Hoare triple {23472#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23472#false} is VALID [2018-11-14 18:50:44,730 INFO L273 TraceCheckUtils]: 132: Hoare triple {23472#false} assume true; {23472#false} is VALID [2018-11-14 18:50:44,730 INFO L273 TraceCheckUtils]: 133: Hoare triple {23472#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23472#false} is VALID [2018-11-14 18:50:44,730 INFO L273 TraceCheckUtils]: 134: Hoare triple {23472#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23472#false} is VALID [2018-11-14 18:50:44,730 INFO L273 TraceCheckUtils]: 135: Hoare triple {23472#false} assume true; {23472#false} is VALID [2018-11-14 18:50:44,730 INFO L273 TraceCheckUtils]: 136: Hoare triple {23472#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23472#false} is VALID [2018-11-14 18:50:44,731 INFO L273 TraceCheckUtils]: 137: Hoare triple {23472#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23472#false} is VALID [2018-11-14 18:50:44,731 INFO L273 TraceCheckUtils]: 138: Hoare triple {23472#false} assume true; {23472#false} is VALID [2018-11-14 18:50:44,731 INFO L273 TraceCheckUtils]: 139: Hoare triple {23472#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23472#false} is VALID [2018-11-14 18:50:44,731 INFO L273 TraceCheckUtils]: 140: Hoare triple {23472#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23472#false} is VALID [2018-11-14 18:50:44,731 INFO L273 TraceCheckUtils]: 141: Hoare triple {23472#false} assume true; {23472#false} is VALID [2018-11-14 18:50:44,731 INFO L273 TraceCheckUtils]: 142: Hoare triple {23472#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23472#false} is VALID [2018-11-14 18:50:44,731 INFO L273 TraceCheckUtils]: 143: Hoare triple {23472#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23472#false} is VALID [2018-11-14 18:50:44,731 INFO L273 TraceCheckUtils]: 144: Hoare triple {23472#false} assume true; {23472#false} is VALID [2018-11-14 18:50:44,731 INFO L273 TraceCheckUtils]: 145: Hoare triple {23472#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23472#false} is VALID [2018-11-14 18:50:44,731 INFO L273 TraceCheckUtils]: 146: Hoare triple {23472#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23472#false} is VALID [2018-11-14 18:50:44,732 INFO L273 TraceCheckUtils]: 147: Hoare triple {23472#false} assume true; {23472#false} is VALID [2018-11-14 18:50:44,732 INFO L273 TraceCheckUtils]: 148: Hoare triple {23472#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23472#false} is VALID [2018-11-14 18:50:44,732 INFO L273 TraceCheckUtils]: 149: Hoare triple {23472#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23472#false} is VALID [2018-11-14 18:50:44,732 INFO L273 TraceCheckUtils]: 150: Hoare triple {23472#false} assume true; {23472#false} is VALID [2018-11-14 18:50:44,732 INFO L273 TraceCheckUtils]: 151: Hoare triple {23472#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23472#false} is VALID [2018-11-14 18:50:44,732 INFO L273 TraceCheckUtils]: 152: Hoare triple {23472#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23472#false} is VALID [2018-11-14 18:50:44,732 INFO L273 TraceCheckUtils]: 153: Hoare triple {23472#false} assume true; {23472#false} is VALID [2018-11-14 18:50:44,732 INFO L273 TraceCheckUtils]: 154: Hoare triple {23472#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23472#false} is VALID [2018-11-14 18:50:44,732 INFO L273 TraceCheckUtils]: 155: Hoare triple {23472#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23472#false} is VALID [2018-11-14 18:50:44,733 INFO L273 TraceCheckUtils]: 156: Hoare triple {23472#false} assume true; {23472#false} is VALID [2018-11-14 18:50:44,733 INFO L273 TraceCheckUtils]: 157: Hoare triple {23472#false} assume !(~i~0 < 20); {23472#false} is VALID [2018-11-14 18:50:44,733 INFO L273 TraceCheckUtils]: 158: Hoare triple {23472#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {23472#false} is VALID [2018-11-14 18:50:44,733 INFO L273 TraceCheckUtils]: 159: Hoare triple {23472#false} assume true; {23472#false} is VALID [2018-11-14 18:50:44,733 INFO L268 TraceCheckUtils]: 160: Hoare quadruple {23472#false} {23472#false} #75#return; {23472#false} is VALID [2018-11-14 18:50:44,733 INFO L273 TraceCheckUtils]: 161: Hoare triple {23472#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; {23472#false} is VALID [2018-11-14 18:50:44,733 INFO L273 TraceCheckUtils]: 162: Hoare triple {23472#false} assume true; {23472#false} is VALID [2018-11-14 18:50:44,733 INFO L273 TraceCheckUtils]: 163: Hoare triple {23472#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {23472#false} is VALID [2018-11-14 18:50:44,733 INFO L273 TraceCheckUtils]: 164: Hoare triple {23472#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {23472#false} is VALID [2018-11-14 18:50:44,733 INFO L273 TraceCheckUtils]: 165: Hoare triple {23472#false} assume true; {23472#false} is VALID [2018-11-14 18:50:44,734 INFO L273 TraceCheckUtils]: 166: Hoare triple {23472#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {23472#false} is VALID [2018-11-14 18:50:44,734 INFO L273 TraceCheckUtils]: 167: Hoare triple {23472#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {23472#false} is VALID [2018-11-14 18:50:44,734 INFO L273 TraceCheckUtils]: 168: Hoare triple {23472#false} assume true; {23472#false} is VALID [2018-11-14 18:50:44,734 INFO L273 TraceCheckUtils]: 169: Hoare triple {23472#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {23472#false} is VALID [2018-11-14 18:50:44,734 INFO L273 TraceCheckUtils]: 170: Hoare triple {23472#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {23472#false} is VALID [2018-11-14 18:50:44,734 INFO L273 TraceCheckUtils]: 171: Hoare triple {23472#false} assume true; {23472#false} is VALID [2018-11-14 18:50:44,734 INFO L273 TraceCheckUtils]: 172: Hoare triple {23472#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {23472#false} is VALID [2018-11-14 18:50:44,734 INFO L273 TraceCheckUtils]: 173: Hoare triple {23472#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {23472#false} is VALID [2018-11-14 18:50:44,734 INFO L273 TraceCheckUtils]: 174: Hoare triple {23472#false} assume true; {23472#false} is VALID [2018-11-14 18:50:44,734 INFO L273 TraceCheckUtils]: 175: Hoare triple {23472#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {23472#false} is VALID [2018-11-14 18:50:44,735 INFO L273 TraceCheckUtils]: 176: Hoare triple {23472#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {23472#false} is VALID [2018-11-14 18:50:44,735 INFO L273 TraceCheckUtils]: 177: Hoare triple {23472#false} assume true; {23472#false} is VALID [2018-11-14 18:50:44,735 INFO L273 TraceCheckUtils]: 178: Hoare triple {23472#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {23472#false} is VALID [2018-11-14 18:50:44,735 INFO L273 TraceCheckUtils]: 179: Hoare triple {23472#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {23472#false} is VALID [2018-11-14 18:50:44,735 INFO L273 TraceCheckUtils]: 180: Hoare triple {23472#false} assume true; {23472#false} is VALID [2018-11-14 18:50:44,735 INFO L273 TraceCheckUtils]: 181: Hoare triple {23472#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {23472#false} is VALID [2018-11-14 18:50:44,735 INFO L273 TraceCheckUtils]: 182: Hoare triple {23472#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {23472#false} is VALID [2018-11-14 18:50:44,735 INFO L273 TraceCheckUtils]: 183: Hoare triple {23472#false} assume true; {23472#false} is VALID [2018-11-14 18:50:44,735 INFO L273 TraceCheckUtils]: 184: Hoare triple {23472#false} assume !(~i~2 < 19); {23472#false} is VALID [2018-11-14 18:50:44,736 INFO L273 TraceCheckUtils]: 185: Hoare triple {23472#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {23472#false} is VALID [2018-11-14 18:50:44,736 INFO L256 TraceCheckUtils]: 186: Hoare triple {23472#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {23472#false} is VALID [2018-11-14 18:50:44,736 INFO L273 TraceCheckUtils]: 187: Hoare triple {23472#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {23472#false} is VALID [2018-11-14 18:50:44,736 INFO L273 TraceCheckUtils]: 188: Hoare triple {23472#false} assume true; {23472#false} is VALID [2018-11-14 18:50:44,736 INFO L273 TraceCheckUtils]: 189: Hoare triple {23472#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23472#false} is VALID [2018-11-14 18:50:44,736 INFO L273 TraceCheckUtils]: 190: Hoare triple {23472#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23472#false} is VALID [2018-11-14 18:50:44,736 INFO L273 TraceCheckUtils]: 191: Hoare triple {23472#false} assume true; {23472#false} is VALID [2018-11-14 18:50:44,736 INFO L273 TraceCheckUtils]: 192: Hoare triple {23472#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23472#false} is VALID [2018-11-14 18:50:44,736 INFO L273 TraceCheckUtils]: 193: Hoare triple {23472#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23472#false} is VALID [2018-11-14 18:50:44,736 INFO L273 TraceCheckUtils]: 194: Hoare triple {23472#false} assume true; {23472#false} is VALID [2018-11-14 18:50:44,737 INFO L273 TraceCheckUtils]: 195: Hoare triple {23472#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23472#false} is VALID [2018-11-14 18:50:44,737 INFO L273 TraceCheckUtils]: 196: Hoare triple {23472#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23472#false} is VALID [2018-11-14 18:50:44,737 INFO L273 TraceCheckUtils]: 197: Hoare triple {23472#false} assume true; {23472#false} is VALID [2018-11-14 18:50:44,737 INFO L273 TraceCheckUtils]: 198: Hoare triple {23472#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23472#false} is VALID [2018-11-14 18:50:44,737 INFO L273 TraceCheckUtils]: 199: Hoare triple {23472#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23472#false} is VALID [2018-11-14 18:50:44,737 INFO L273 TraceCheckUtils]: 200: Hoare triple {23472#false} assume true; {23472#false} is VALID [2018-11-14 18:50:44,737 INFO L273 TraceCheckUtils]: 201: Hoare triple {23472#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23472#false} is VALID [2018-11-14 18:50:44,737 INFO L273 TraceCheckUtils]: 202: Hoare triple {23472#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23472#false} is VALID [2018-11-14 18:50:44,737 INFO L273 TraceCheckUtils]: 203: Hoare triple {23472#false} assume true; {23472#false} is VALID [2018-11-14 18:50:44,737 INFO L273 TraceCheckUtils]: 204: Hoare triple {23472#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23472#false} is VALID [2018-11-14 18:50:44,738 INFO L273 TraceCheckUtils]: 205: Hoare triple {23472#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23472#false} is VALID [2018-11-14 18:50:44,738 INFO L273 TraceCheckUtils]: 206: Hoare triple {23472#false} assume true; {23472#false} is VALID [2018-11-14 18:50:44,738 INFO L273 TraceCheckUtils]: 207: Hoare triple {23472#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23472#false} is VALID [2018-11-14 18:50:44,738 INFO L273 TraceCheckUtils]: 208: Hoare triple {23472#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23472#false} is VALID [2018-11-14 18:50:44,738 INFO L273 TraceCheckUtils]: 209: Hoare triple {23472#false} assume true; {23472#false} is VALID [2018-11-14 18:50:44,738 INFO L273 TraceCheckUtils]: 210: Hoare triple {23472#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23472#false} is VALID [2018-11-14 18:50:44,738 INFO L273 TraceCheckUtils]: 211: Hoare triple {23472#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23472#false} is VALID [2018-11-14 18:50:44,738 INFO L273 TraceCheckUtils]: 212: Hoare triple {23472#false} assume true; {23472#false} is VALID [2018-11-14 18:50:44,738 INFO L273 TraceCheckUtils]: 213: Hoare triple {23472#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23472#false} is VALID [2018-11-14 18:50:44,739 INFO L273 TraceCheckUtils]: 214: Hoare triple {23472#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23472#false} is VALID [2018-11-14 18:50:44,739 INFO L273 TraceCheckUtils]: 215: Hoare triple {23472#false} assume true; {23472#false} is VALID [2018-11-14 18:50:44,739 INFO L273 TraceCheckUtils]: 216: Hoare triple {23472#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23472#false} is VALID [2018-11-14 18:50:44,739 INFO L273 TraceCheckUtils]: 217: Hoare triple {23472#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23472#false} is VALID [2018-11-14 18:50:44,739 INFO L273 TraceCheckUtils]: 218: Hoare triple {23472#false} assume true; {23472#false} is VALID [2018-11-14 18:50:44,739 INFO L273 TraceCheckUtils]: 219: Hoare triple {23472#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23472#false} is VALID [2018-11-14 18:50:44,739 INFO L273 TraceCheckUtils]: 220: Hoare triple {23472#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23472#false} is VALID [2018-11-14 18:50:44,739 INFO L273 TraceCheckUtils]: 221: Hoare triple {23472#false} assume true; {23472#false} is VALID [2018-11-14 18:50:44,739 INFO L273 TraceCheckUtils]: 222: Hoare triple {23472#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23472#false} is VALID [2018-11-14 18:50:44,739 INFO L273 TraceCheckUtils]: 223: Hoare triple {23472#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23472#false} is VALID [2018-11-14 18:50:44,740 INFO L273 TraceCheckUtils]: 224: Hoare triple {23472#false} assume true; {23472#false} is VALID [2018-11-14 18:50:44,740 INFO L273 TraceCheckUtils]: 225: Hoare triple {23472#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {23472#false} is VALID [2018-11-14 18:50:44,740 INFO L273 TraceCheckUtils]: 226: Hoare triple {23472#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23472#false} is VALID [2018-11-14 18:50:44,740 INFO L273 TraceCheckUtils]: 227: Hoare triple {23472#false} assume true; {23472#false} is VALID [2018-11-14 18:50:44,740 INFO L273 TraceCheckUtils]: 228: Hoare triple {23472#false} assume !(~i~0 < 20); {23472#false} is VALID [2018-11-14 18:50:44,740 INFO L273 TraceCheckUtils]: 229: Hoare triple {23472#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {23472#false} is VALID [2018-11-14 18:50:44,740 INFO L273 TraceCheckUtils]: 230: Hoare triple {23472#false} assume true; {23472#false} is VALID [2018-11-14 18:50:44,740 INFO L268 TraceCheckUtils]: 231: Hoare quadruple {23472#false} {23472#false} #77#return; {23472#false} is VALID [2018-11-14 18:50:44,740 INFO L273 TraceCheckUtils]: 232: Hoare triple {23472#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {23472#false} is VALID [2018-11-14 18:50:44,740 INFO L273 TraceCheckUtils]: 233: Hoare triple {23472#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {23472#false} is VALID [2018-11-14 18:50:44,741 INFO L273 TraceCheckUtils]: 234: Hoare triple {23472#false} assume !false; {23472#false} is VALID [2018-11-14 18:50:44,762 INFO L134 CoverageAnalysis]: Checked inductivity of 3162 backedges. 1124 proven. 260 refuted. 0 times theorem prover too weak. 1778 trivial. 0 not checked. [2018-11-14 18:50:44,783 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:50:44,783 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 16] total 17 [2018-11-14 18:50:44,783 INFO L78 Accepts]: Start accepts. Automaton has 17 states. Word has length 235 [2018-11-14 18:50:44,784 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:50:44,784 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states. [2018-11-14 18:50:44,879 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 90 edges. 90 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:50:44,879 INFO L459 AbstractCegarLoop]: Interpolant automaton has 17 states [2018-11-14 18:50:44,879 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2018-11-14 18:50:44,880 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=136, Invalid=136, Unknown=0, NotChecked=0, Total=272 [2018-11-14 18:50:44,880 INFO L87 Difference]: Start difference. First operand 146 states and 150 transitions. Second operand 17 states. [2018-11-14 18:50:45,531 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:45,531 INFO L93 Difference]: Finished difference Result 227 states and 237 transitions. [2018-11-14 18:50:45,531 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2018-11-14 18:50:45,531 INFO L78 Accepts]: Start accepts. Automaton has 17 states. Word has length 235 [2018-11-14 18:50:45,531 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:50:45,531 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 17 states. [2018-11-14 18:50:45,532 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 100 transitions. [2018-11-14 18:50:45,532 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 17 states. [2018-11-14 18:50:45,533 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 100 transitions. [2018-11-14 18:50:45,533 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states and 100 transitions. [2018-11-14 18:50:45,622 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 100 edges. 100 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:50:45,625 INFO L225 Difference]: With dead ends: 227 [2018-11-14 18:50:45,625 INFO L226 Difference]: Without dead ends: 150 [2018-11-14 18:50:45,626 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 250 GetRequests, 235 SyntacticMatches, 0 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 24 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=136, Invalid=136, Unknown=0, NotChecked=0, Total=272 [2018-11-14 18:50:45,626 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 150 states. [2018-11-14 18:50:45,714 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 150 to 149. [2018-11-14 18:50:45,714 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:50:45,714 INFO L82 GeneralOperation]: Start isEquivalent. First operand 150 states. Second operand 149 states. [2018-11-14 18:50:45,714 INFO L74 IsIncluded]: Start isIncluded. First operand 150 states. Second operand 149 states. [2018-11-14 18:50:45,715 INFO L87 Difference]: Start difference. First operand 150 states. Second operand 149 states. [2018-11-14 18:50:45,717 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:45,717 INFO L93 Difference]: Finished difference Result 150 states and 154 transitions. [2018-11-14 18:50:45,717 INFO L276 IsEmpty]: Start isEmpty. Operand 150 states and 154 transitions. [2018-11-14 18:50:45,717 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:50:45,717 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:50:45,718 INFO L74 IsIncluded]: Start isIncluded. First operand 149 states. Second operand 150 states. [2018-11-14 18:50:45,718 INFO L87 Difference]: Start difference. First operand 149 states. Second operand 150 states. [2018-11-14 18:50:45,719 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:45,720 INFO L93 Difference]: Finished difference Result 150 states and 154 transitions. [2018-11-14 18:50:45,720 INFO L276 IsEmpty]: Start isEmpty. Operand 150 states and 154 transitions. [2018-11-14 18:50:45,720 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:50:45,720 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:50:45,720 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:50:45,720 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:50:45,720 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 149 states. [2018-11-14 18:50:45,722 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 149 states to 149 states and 153 transitions. [2018-11-14 18:50:45,722 INFO L78 Accepts]: Start accepts. Automaton has 149 states and 153 transitions. Word has length 235 [2018-11-14 18:50:45,722 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:50:45,722 INFO L480 AbstractCegarLoop]: Abstraction has 149 states and 153 transitions. [2018-11-14 18:50:45,723 INFO L481 AbstractCegarLoop]: Interpolant automaton has 17 states. [2018-11-14 18:50:45,723 INFO L276 IsEmpty]: Start isEmpty. Operand 149 states and 153 transitions. [2018-11-14 18:50:45,724 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 245 [2018-11-14 18:50:45,724 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:50:45,724 INFO L375 BasicCegarLoop]: trace histogram [45, 42, 42, 21, 20, 20, 8, 7, 7, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:50:45,724 INFO L423 AbstractCegarLoop]: === Iteration 31 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:50:45,724 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:50:45,725 INFO L82 PathProgramCache]: Analyzing trace with hash -2099936235, now seen corresponding path program 27 times [2018-11-14 18:50:45,725 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:50:45,725 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:50:45,725 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:50:45,725 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 18:50:45,725 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:50:45,757 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:50:46,146 INFO L256 TraceCheckUtils]: 0: Hoare triple {24997#true} call ULTIMATE.init(); {24997#true} is VALID [2018-11-14 18:50:46,146 INFO L273 TraceCheckUtils]: 1: Hoare triple {24997#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {24997#true} is VALID [2018-11-14 18:50:46,146 INFO L273 TraceCheckUtils]: 2: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,146 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {24997#true} {24997#true} #69#return; {24997#true} is VALID [2018-11-14 18:50:46,147 INFO L256 TraceCheckUtils]: 4: Hoare triple {24997#true} call #t~ret12 := main(); {24997#true} is VALID [2018-11-14 18:50:46,147 INFO L273 TraceCheckUtils]: 5: Hoare triple {24997#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {24997#true} is VALID [2018-11-14 18:50:46,147 INFO L273 TraceCheckUtils]: 6: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,147 INFO L273 TraceCheckUtils]: 7: Hoare triple {24997#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24997#true} is VALID [2018-11-14 18:50:46,147 INFO L273 TraceCheckUtils]: 8: Hoare triple {24997#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24997#true} is VALID [2018-11-14 18:50:46,147 INFO L273 TraceCheckUtils]: 9: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,148 INFO L273 TraceCheckUtils]: 10: Hoare triple {24997#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24997#true} is VALID [2018-11-14 18:50:46,148 INFO L273 TraceCheckUtils]: 11: Hoare triple {24997#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24997#true} is VALID [2018-11-14 18:50:46,148 INFO L273 TraceCheckUtils]: 12: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,148 INFO L273 TraceCheckUtils]: 13: Hoare triple {24997#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24997#true} is VALID [2018-11-14 18:50:46,148 INFO L273 TraceCheckUtils]: 14: Hoare triple {24997#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24997#true} is VALID [2018-11-14 18:50:46,148 INFO L273 TraceCheckUtils]: 15: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,148 INFO L273 TraceCheckUtils]: 16: Hoare triple {24997#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24997#true} is VALID [2018-11-14 18:50:46,148 INFO L273 TraceCheckUtils]: 17: Hoare triple {24997#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24997#true} is VALID [2018-11-14 18:50:46,148 INFO L273 TraceCheckUtils]: 18: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,148 INFO L273 TraceCheckUtils]: 19: Hoare triple {24997#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24997#true} is VALID [2018-11-14 18:50:46,149 INFO L273 TraceCheckUtils]: 20: Hoare triple {24997#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24997#true} is VALID [2018-11-14 18:50:46,149 INFO L273 TraceCheckUtils]: 21: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,149 INFO L273 TraceCheckUtils]: 22: Hoare triple {24997#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24997#true} is VALID [2018-11-14 18:50:46,149 INFO L273 TraceCheckUtils]: 23: Hoare triple {24997#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24997#true} is VALID [2018-11-14 18:50:46,149 INFO L273 TraceCheckUtils]: 24: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,149 INFO L273 TraceCheckUtils]: 25: Hoare triple {24997#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24997#true} is VALID [2018-11-14 18:50:46,149 INFO L273 TraceCheckUtils]: 26: Hoare triple {24997#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24997#true} is VALID [2018-11-14 18:50:46,149 INFO L273 TraceCheckUtils]: 27: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,149 INFO L273 TraceCheckUtils]: 28: Hoare triple {24997#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24997#true} is VALID [2018-11-14 18:50:46,150 INFO L273 TraceCheckUtils]: 29: Hoare triple {24997#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24997#true} is VALID [2018-11-14 18:50:46,150 INFO L273 TraceCheckUtils]: 30: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,150 INFO L273 TraceCheckUtils]: 31: Hoare triple {24997#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24997#true} is VALID [2018-11-14 18:50:46,150 INFO L273 TraceCheckUtils]: 32: Hoare triple {24997#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24997#true} is VALID [2018-11-14 18:50:46,150 INFO L273 TraceCheckUtils]: 33: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,150 INFO L273 TraceCheckUtils]: 34: Hoare triple {24997#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24997#true} is VALID [2018-11-14 18:50:46,150 INFO L273 TraceCheckUtils]: 35: Hoare triple {24997#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24997#true} is VALID [2018-11-14 18:50:46,150 INFO L273 TraceCheckUtils]: 36: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,150 INFO L273 TraceCheckUtils]: 37: Hoare triple {24997#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24997#true} is VALID [2018-11-14 18:50:46,150 INFO L273 TraceCheckUtils]: 38: Hoare triple {24997#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24997#true} is VALID [2018-11-14 18:50:46,151 INFO L273 TraceCheckUtils]: 39: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,151 INFO L273 TraceCheckUtils]: 40: Hoare triple {24997#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24997#true} is VALID [2018-11-14 18:50:46,151 INFO L273 TraceCheckUtils]: 41: Hoare triple {24997#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24997#true} is VALID [2018-11-14 18:50:46,151 INFO L273 TraceCheckUtils]: 42: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,151 INFO L273 TraceCheckUtils]: 43: Hoare triple {24997#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24997#true} is VALID [2018-11-14 18:50:46,151 INFO L273 TraceCheckUtils]: 44: Hoare triple {24997#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24997#true} is VALID [2018-11-14 18:50:46,151 INFO L273 TraceCheckUtils]: 45: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,151 INFO L273 TraceCheckUtils]: 46: Hoare triple {24997#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24997#true} is VALID [2018-11-14 18:50:46,151 INFO L273 TraceCheckUtils]: 47: Hoare triple {24997#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24997#true} is VALID [2018-11-14 18:50:46,152 INFO L273 TraceCheckUtils]: 48: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,152 INFO L273 TraceCheckUtils]: 49: Hoare triple {24997#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24997#true} is VALID [2018-11-14 18:50:46,152 INFO L273 TraceCheckUtils]: 50: Hoare triple {24997#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24997#true} is VALID [2018-11-14 18:50:46,152 INFO L273 TraceCheckUtils]: 51: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,152 INFO L273 TraceCheckUtils]: 52: Hoare triple {24997#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24997#true} is VALID [2018-11-14 18:50:46,152 INFO L273 TraceCheckUtils]: 53: Hoare triple {24997#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24997#true} is VALID [2018-11-14 18:50:46,152 INFO L273 TraceCheckUtils]: 54: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,152 INFO L273 TraceCheckUtils]: 55: Hoare triple {24997#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24997#true} is VALID [2018-11-14 18:50:46,152 INFO L273 TraceCheckUtils]: 56: Hoare triple {24997#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24997#true} is VALID [2018-11-14 18:50:46,152 INFO L273 TraceCheckUtils]: 57: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,153 INFO L273 TraceCheckUtils]: 58: Hoare triple {24997#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24997#true} is VALID [2018-11-14 18:50:46,153 INFO L273 TraceCheckUtils]: 59: Hoare triple {24997#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24997#true} is VALID [2018-11-14 18:50:46,153 INFO L273 TraceCheckUtils]: 60: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,153 INFO L273 TraceCheckUtils]: 61: Hoare triple {24997#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24997#true} is VALID [2018-11-14 18:50:46,153 INFO L273 TraceCheckUtils]: 62: Hoare triple {24997#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24997#true} is VALID [2018-11-14 18:50:46,153 INFO L273 TraceCheckUtils]: 63: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,153 INFO L273 TraceCheckUtils]: 64: Hoare triple {24997#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24997#true} is VALID [2018-11-14 18:50:46,153 INFO L273 TraceCheckUtils]: 65: Hoare triple {24997#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24997#true} is VALID [2018-11-14 18:50:46,153 INFO L273 TraceCheckUtils]: 66: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,154 INFO L273 TraceCheckUtils]: 67: Hoare triple {24997#true} assume !(~i~1 < 20); {24997#true} is VALID [2018-11-14 18:50:46,154 INFO L256 TraceCheckUtils]: 68: Hoare triple {24997#true} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {24997#true} is VALID [2018-11-14 18:50:46,154 INFO L273 TraceCheckUtils]: 69: Hoare triple {24997#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {24999#(= avg_~i~0 0)} is VALID [2018-11-14 18:50:46,154 INFO L273 TraceCheckUtils]: 70: Hoare triple {24999#(= avg_~i~0 0)} assume true; {24999#(= avg_~i~0 0)} is VALID [2018-11-14 18:50:46,155 INFO L273 TraceCheckUtils]: 71: Hoare triple {24999#(= avg_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24999#(= avg_~i~0 0)} is VALID [2018-11-14 18:50:46,155 INFO L273 TraceCheckUtils]: 72: Hoare triple {24999#(= avg_~i~0 0)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {25000#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:46,155 INFO L273 TraceCheckUtils]: 73: Hoare triple {25000#(<= avg_~i~0 1)} assume true; {25000#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:46,156 INFO L273 TraceCheckUtils]: 74: Hoare triple {25000#(<= avg_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {25000#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:46,156 INFO L273 TraceCheckUtils]: 75: Hoare triple {25000#(<= avg_~i~0 1)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {25001#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:46,157 INFO L273 TraceCheckUtils]: 76: Hoare triple {25001#(<= avg_~i~0 2)} assume true; {25001#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:46,157 INFO L273 TraceCheckUtils]: 77: Hoare triple {25001#(<= avg_~i~0 2)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {25001#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:46,157 INFO L273 TraceCheckUtils]: 78: Hoare triple {25001#(<= avg_~i~0 2)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {25002#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:46,158 INFO L273 TraceCheckUtils]: 79: Hoare triple {25002#(<= avg_~i~0 3)} assume true; {25002#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:46,158 INFO L273 TraceCheckUtils]: 80: Hoare triple {25002#(<= avg_~i~0 3)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {25002#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:46,159 INFO L273 TraceCheckUtils]: 81: Hoare triple {25002#(<= avg_~i~0 3)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {25003#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:46,160 INFO L273 TraceCheckUtils]: 82: Hoare triple {25003#(<= avg_~i~0 4)} assume true; {25003#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:46,160 INFO L273 TraceCheckUtils]: 83: Hoare triple {25003#(<= avg_~i~0 4)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {25003#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:46,161 INFO L273 TraceCheckUtils]: 84: Hoare triple {25003#(<= avg_~i~0 4)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {25004#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:46,161 INFO L273 TraceCheckUtils]: 85: Hoare triple {25004#(<= avg_~i~0 5)} assume true; {25004#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:46,162 INFO L273 TraceCheckUtils]: 86: Hoare triple {25004#(<= avg_~i~0 5)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {25004#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:46,163 INFO L273 TraceCheckUtils]: 87: Hoare triple {25004#(<= avg_~i~0 5)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {25005#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:46,163 INFO L273 TraceCheckUtils]: 88: Hoare triple {25005#(<= avg_~i~0 6)} assume true; {25005#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:46,164 INFO L273 TraceCheckUtils]: 89: Hoare triple {25005#(<= avg_~i~0 6)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {25005#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:46,164 INFO L273 TraceCheckUtils]: 90: Hoare triple {25005#(<= avg_~i~0 6)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {25006#(<= avg_~i~0 7)} is VALID [2018-11-14 18:50:46,165 INFO L273 TraceCheckUtils]: 91: Hoare triple {25006#(<= avg_~i~0 7)} assume true; {25006#(<= avg_~i~0 7)} is VALID [2018-11-14 18:50:46,165 INFO L273 TraceCheckUtils]: 92: Hoare triple {25006#(<= avg_~i~0 7)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {25006#(<= avg_~i~0 7)} is VALID [2018-11-14 18:50:46,166 INFO L273 TraceCheckUtils]: 93: Hoare triple {25006#(<= avg_~i~0 7)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {25007#(<= avg_~i~0 8)} is VALID [2018-11-14 18:50:46,167 INFO L273 TraceCheckUtils]: 94: Hoare triple {25007#(<= avg_~i~0 8)} assume true; {25007#(<= avg_~i~0 8)} is VALID [2018-11-14 18:50:46,167 INFO L273 TraceCheckUtils]: 95: Hoare triple {25007#(<= avg_~i~0 8)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {25007#(<= avg_~i~0 8)} is VALID [2018-11-14 18:50:46,168 INFO L273 TraceCheckUtils]: 96: Hoare triple {25007#(<= avg_~i~0 8)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {25008#(<= avg_~i~0 9)} is VALID [2018-11-14 18:50:46,168 INFO L273 TraceCheckUtils]: 97: Hoare triple {25008#(<= avg_~i~0 9)} assume true; {25008#(<= avg_~i~0 9)} is VALID [2018-11-14 18:50:46,169 INFO L273 TraceCheckUtils]: 98: Hoare triple {25008#(<= avg_~i~0 9)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {25008#(<= avg_~i~0 9)} is VALID [2018-11-14 18:50:46,170 INFO L273 TraceCheckUtils]: 99: Hoare triple {25008#(<= avg_~i~0 9)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {25009#(<= avg_~i~0 10)} is VALID [2018-11-14 18:50:46,170 INFO L273 TraceCheckUtils]: 100: Hoare triple {25009#(<= avg_~i~0 10)} assume true; {25009#(<= avg_~i~0 10)} is VALID [2018-11-14 18:50:46,171 INFO L273 TraceCheckUtils]: 101: Hoare triple {25009#(<= avg_~i~0 10)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {25009#(<= avg_~i~0 10)} is VALID [2018-11-14 18:50:46,171 INFO L273 TraceCheckUtils]: 102: Hoare triple {25009#(<= avg_~i~0 10)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {25010#(<= avg_~i~0 11)} is VALID [2018-11-14 18:50:46,172 INFO L273 TraceCheckUtils]: 103: Hoare triple {25010#(<= avg_~i~0 11)} assume true; {25010#(<= avg_~i~0 11)} is VALID [2018-11-14 18:50:46,172 INFO L273 TraceCheckUtils]: 104: Hoare triple {25010#(<= avg_~i~0 11)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {25010#(<= avg_~i~0 11)} is VALID [2018-11-14 18:50:46,173 INFO L273 TraceCheckUtils]: 105: Hoare triple {25010#(<= avg_~i~0 11)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {25011#(<= avg_~i~0 12)} is VALID [2018-11-14 18:50:46,174 INFO L273 TraceCheckUtils]: 106: Hoare triple {25011#(<= avg_~i~0 12)} assume true; {25011#(<= avg_~i~0 12)} is VALID [2018-11-14 18:50:46,174 INFO L273 TraceCheckUtils]: 107: Hoare triple {25011#(<= avg_~i~0 12)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {25011#(<= avg_~i~0 12)} is VALID [2018-11-14 18:50:46,175 INFO L273 TraceCheckUtils]: 108: Hoare triple {25011#(<= avg_~i~0 12)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {25012#(<= avg_~i~0 13)} is VALID [2018-11-14 18:50:46,175 INFO L273 TraceCheckUtils]: 109: Hoare triple {25012#(<= avg_~i~0 13)} assume true; {25012#(<= avg_~i~0 13)} is VALID [2018-11-14 18:50:46,176 INFO L273 TraceCheckUtils]: 110: Hoare triple {25012#(<= avg_~i~0 13)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {25012#(<= avg_~i~0 13)} is VALID [2018-11-14 18:50:46,177 INFO L273 TraceCheckUtils]: 111: Hoare triple {25012#(<= avg_~i~0 13)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {25013#(<= avg_~i~0 14)} is VALID [2018-11-14 18:50:46,177 INFO L273 TraceCheckUtils]: 112: Hoare triple {25013#(<= avg_~i~0 14)} assume true; {25013#(<= avg_~i~0 14)} is VALID [2018-11-14 18:50:46,178 INFO L273 TraceCheckUtils]: 113: Hoare triple {25013#(<= avg_~i~0 14)} assume !(~i~0 < 20); {24998#false} is VALID [2018-11-14 18:50:46,178 INFO L273 TraceCheckUtils]: 114: Hoare triple {24998#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {24998#false} is VALID [2018-11-14 18:50:46,178 INFO L273 TraceCheckUtils]: 115: Hoare triple {24998#false} assume true; {24998#false} is VALID [2018-11-14 18:50:46,178 INFO L268 TraceCheckUtils]: 116: Hoare quadruple {24998#false} {24997#true} #73#return; {24998#false} is VALID [2018-11-14 18:50:46,179 INFO L273 TraceCheckUtils]: 117: Hoare triple {24998#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); {24998#false} is VALID [2018-11-14 18:50:46,179 INFO L256 TraceCheckUtils]: 118: Hoare triple {24998#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {24997#true} is VALID [2018-11-14 18:50:46,179 INFO L273 TraceCheckUtils]: 119: Hoare triple {24997#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {24997#true} is VALID [2018-11-14 18:50:46,179 INFO L273 TraceCheckUtils]: 120: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,179 INFO L273 TraceCheckUtils]: 121: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,180 INFO L273 TraceCheckUtils]: 122: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,180 INFO L273 TraceCheckUtils]: 123: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,180 INFO L273 TraceCheckUtils]: 124: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,180 INFO L273 TraceCheckUtils]: 125: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,180 INFO L273 TraceCheckUtils]: 126: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,180 INFO L273 TraceCheckUtils]: 127: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,181 INFO L273 TraceCheckUtils]: 128: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,181 INFO L273 TraceCheckUtils]: 129: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,181 INFO L273 TraceCheckUtils]: 130: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,181 INFO L273 TraceCheckUtils]: 131: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,181 INFO L273 TraceCheckUtils]: 132: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,181 INFO L273 TraceCheckUtils]: 133: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,182 INFO L273 TraceCheckUtils]: 134: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,182 INFO L273 TraceCheckUtils]: 135: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,182 INFO L273 TraceCheckUtils]: 136: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,182 INFO L273 TraceCheckUtils]: 137: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,182 INFO L273 TraceCheckUtils]: 138: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,182 INFO L273 TraceCheckUtils]: 139: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,182 INFO L273 TraceCheckUtils]: 140: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,182 INFO L273 TraceCheckUtils]: 141: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,182 INFO L273 TraceCheckUtils]: 142: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,182 INFO L273 TraceCheckUtils]: 143: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,183 INFO L273 TraceCheckUtils]: 144: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,183 INFO L273 TraceCheckUtils]: 145: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,183 INFO L273 TraceCheckUtils]: 146: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,183 INFO L273 TraceCheckUtils]: 147: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,183 INFO L273 TraceCheckUtils]: 148: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,183 INFO L273 TraceCheckUtils]: 149: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,183 INFO L273 TraceCheckUtils]: 150: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,183 INFO L273 TraceCheckUtils]: 151: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,183 INFO L273 TraceCheckUtils]: 152: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,183 INFO L273 TraceCheckUtils]: 153: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,184 INFO L273 TraceCheckUtils]: 154: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,184 INFO L273 TraceCheckUtils]: 155: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,184 INFO L273 TraceCheckUtils]: 156: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,184 INFO L273 TraceCheckUtils]: 157: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,184 INFO L273 TraceCheckUtils]: 158: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,184 INFO L273 TraceCheckUtils]: 159: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,184 INFO L273 TraceCheckUtils]: 160: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,184 INFO L273 TraceCheckUtils]: 161: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,184 INFO L273 TraceCheckUtils]: 162: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,184 INFO L273 TraceCheckUtils]: 163: Hoare triple {24997#true} assume !(~i~0 < 20); {24997#true} is VALID [2018-11-14 18:50:46,185 INFO L273 TraceCheckUtils]: 164: Hoare triple {24997#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {24997#true} is VALID [2018-11-14 18:50:46,185 INFO L273 TraceCheckUtils]: 165: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,185 INFO L268 TraceCheckUtils]: 166: Hoare quadruple {24997#true} {24998#false} #75#return; {24998#false} is VALID [2018-11-14 18:50:46,185 INFO L273 TraceCheckUtils]: 167: Hoare triple {24998#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; {24998#false} is VALID [2018-11-14 18:50:46,185 INFO L273 TraceCheckUtils]: 168: Hoare triple {24998#false} assume true; {24998#false} is VALID [2018-11-14 18:50:46,185 INFO L273 TraceCheckUtils]: 169: Hoare triple {24998#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {24998#false} is VALID [2018-11-14 18:50:46,185 INFO L273 TraceCheckUtils]: 170: Hoare triple {24998#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {24998#false} is VALID [2018-11-14 18:50:46,185 INFO L273 TraceCheckUtils]: 171: Hoare triple {24998#false} assume true; {24998#false} is VALID [2018-11-14 18:50:46,185 INFO L273 TraceCheckUtils]: 172: Hoare triple {24998#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {24998#false} is VALID [2018-11-14 18:50:46,185 INFO L273 TraceCheckUtils]: 173: Hoare triple {24998#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {24998#false} is VALID [2018-11-14 18:50:46,186 INFO L273 TraceCheckUtils]: 174: Hoare triple {24998#false} assume true; {24998#false} is VALID [2018-11-14 18:50:46,186 INFO L273 TraceCheckUtils]: 175: Hoare triple {24998#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {24998#false} is VALID [2018-11-14 18:50:46,186 INFO L273 TraceCheckUtils]: 176: Hoare triple {24998#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {24998#false} is VALID [2018-11-14 18:50:46,186 INFO L273 TraceCheckUtils]: 177: Hoare triple {24998#false} assume true; {24998#false} is VALID [2018-11-14 18:50:46,186 INFO L273 TraceCheckUtils]: 178: Hoare triple {24998#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {24998#false} is VALID [2018-11-14 18:50:46,186 INFO L273 TraceCheckUtils]: 179: Hoare triple {24998#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {24998#false} is VALID [2018-11-14 18:50:46,186 INFO L273 TraceCheckUtils]: 180: Hoare triple {24998#false} assume true; {24998#false} is VALID [2018-11-14 18:50:46,186 INFO L273 TraceCheckUtils]: 181: Hoare triple {24998#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {24998#false} is VALID [2018-11-14 18:50:46,186 INFO L273 TraceCheckUtils]: 182: Hoare triple {24998#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {24998#false} is VALID [2018-11-14 18:50:46,187 INFO L273 TraceCheckUtils]: 183: Hoare triple {24998#false} assume true; {24998#false} is VALID [2018-11-14 18:50:46,187 INFO L273 TraceCheckUtils]: 184: Hoare triple {24998#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {24998#false} is VALID [2018-11-14 18:50:46,187 INFO L273 TraceCheckUtils]: 185: Hoare triple {24998#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {24998#false} is VALID [2018-11-14 18:50:46,187 INFO L273 TraceCheckUtils]: 186: Hoare triple {24998#false} assume true; {24998#false} is VALID [2018-11-14 18:50:46,187 INFO L273 TraceCheckUtils]: 187: Hoare triple {24998#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {24998#false} is VALID [2018-11-14 18:50:46,187 INFO L273 TraceCheckUtils]: 188: Hoare triple {24998#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {24998#false} is VALID [2018-11-14 18:50:46,187 INFO L273 TraceCheckUtils]: 189: Hoare triple {24998#false} assume true; {24998#false} is VALID [2018-11-14 18:50:46,187 INFO L273 TraceCheckUtils]: 190: Hoare triple {24998#false} assume !(~i~2 < 19); {24998#false} is VALID [2018-11-14 18:50:46,187 INFO L273 TraceCheckUtils]: 191: Hoare triple {24998#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {24998#false} is VALID [2018-11-14 18:50:46,187 INFO L256 TraceCheckUtils]: 192: Hoare triple {24998#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {24997#true} is VALID [2018-11-14 18:50:46,188 INFO L273 TraceCheckUtils]: 193: Hoare triple {24997#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {24997#true} is VALID [2018-11-14 18:50:46,188 INFO L273 TraceCheckUtils]: 194: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,188 INFO L273 TraceCheckUtils]: 195: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,188 INFO L273 TraceCheckUtils]: 196: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,188 INFO L273 TraceCheckUtils]: 197: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,188 INFO L273 TraceCheckUtils]: 198: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,188 INFO L273 TraceCheckUtils]: 199: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,188 INFO L273 TraceCheckUtils]: 200: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,188 INFO L273 TraceCheckUtils]: 201: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,189 INFO L273 TraceCheckUtils]: 202: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,189 INFO L273 TraceCheckUtils]: 203: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,189 INFO L273 TraceCheckUtils]: 204: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,189 INFO L273 TraceCheckUtils]: 205: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,189 INFO L273 TraceCheckUtils]: 206: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,189 INFO L273 TraceCheckUtils]: 207: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,189 INFO L273 TraceCheckUtils]: 208: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,189 INFO L273 TraceCheckUtils]: 209: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,189 INFO L273 TraceCheckUtils]: 210: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,189 INFO L273 TraceCheckUtils]: 211: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,190 INFO L273 TraceCheckUtils]: 212: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,190 INFO L273 TraceCheckUtils]: 213: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,190 INFO L273 TraceCheckUtils]: 214: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,190 INFO L273 TraceCheckUtils]: 215: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,190 INFO L273 TraceCheckUtils]: 216: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,190 INFO L273 TraceCheckUtils]: 217: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,190 INFO L273 TraceCheckUtils]: 218: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,190 INFO L273 TraceCheckUtils]: 219: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,190 INFO L273 TraceCheckUtils]: 220: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,190 INFO L273 TraceCheckUtils]: 221: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,191 INFO L273 TraceCheckUtils]: 222: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,191 INFO L273 TraceCheckUtils]: 223: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,191 INFO L273 TraceCheckUtils]: 224: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,191 INFO L273 TraceCheckUtils]: 225: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,191 INFO L273 TraceCheckUtils]: 226: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,191 INFO L273 TraceCheckUtils]: 227: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,191 INFO L273 TraceCheckUtils]: 228: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,191 INFO L273 TraceCheckUtils]: 229: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,191 INFO L273 TraceCheckUtils]: 230: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,191 INFO L273 TraceCheckUtils]: 231: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,192 INFO L273 TraceCheckUtils]: 232: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,192 INFO L273 TraceCheckUtils]: 233: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,192 INFO L273 TraceCheckUtils]: 234: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,192 INFO L273 TraceCheckUtils]: 235: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,192 INFO L273 TraceCheckUtils]: 236: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,192 INFO L273 TraceCheckUtils]: 237: Hoare triple {24997#true} assume !(~i~0 < 20); {24997#true} is VALID [2018-11-14 18:50:46,192 INFO L273 TraceCheckUtils]: 238: Hoare triple {24997#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {24997#true} is VALID [2018-11-14 18:50:46,192 INFO L273 TraceCheckUtils]: 239: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,192 INFO L268 TraceCheckUtils]: 240: Hoare quadruple {24997#true} {24998#false} #77#return; {24998#false} is VALID [2018-11-14 18:50:46,193 INFO L273 TraceCheckUtils]: 241: Hoare triple {24998#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {24998#false} is VALID [2018-11-14 18:50:46,193 INFO L273 TraceCheckUtils]: 242: Hoare triple {24998#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {24998#false} is VALID [2018-11-14 18:50:46,193 INFO L273 TraceCheckUtils]: 243: Hoare triple {24998#false} assume !false; {24998#false} is VALID [2018-11-14 18:50:46,215 INFO L134 CoverageAnalysis]: Checked inductivity of 3540 backedges. 0 proven. 1599 refuted. 0 times theorem prover too weak. 1941 trivial. 0 not checked. [2018-11-14 18:50:46,215 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:50:46,216 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 29 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 29 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:50:46,226 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-14 18:50:46,348 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 9 check-sat command(s) [2018-11-14 18:50:46,348 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 18:50:46,387 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:50:46,390 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:50:46,721 INFO L256 TraceCheckUtils]: 0: Hoare triple {24997#true} call ULTIMATE.init(); {24997#true} is VALID [2018-11-14 18:50:46,722 INFO L273 TraceCheckUtils]: 1: Hoare triple {24997#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {24997#true} is VALID [2018-11-14 18:50:46,722 INFO L273 TraceCheckUtils]: 2: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,722 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {24997#true} {24997#true} #69#return; {24997#true} is VALID [2018-11-14 18:50:46,722 INFO L256 TraceCheckUtils]: 4: Hoare triple {24997#true} call #t~ret12 := main(); {24997#true} is VALID [2018-11-14 18:50:46,722 INFO L273 TraceCheckUtils]: 5: Hoare triple {24997#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {24997#true} is VALID [2018-11-14 18:50:46,723 INFO L273 TraceCheckUtils]: 6: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,723 INFO L273 TraceCheckUtils]: 7: Hoare triple {24997#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24997#true} is VALID [2018-11-14 18:50:46,723 INFO L273 TraceCheckUtils]: 8: Hoare triple {24997#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24997#true} is VALID [2018-11-14 18:50:46,723 INFO L273 TraceCheckUtils]: 9: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,723 INFO L273 TraceCheckUtils]: 10: Hoare triple {24997#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24997#true} is VALID [2018-11-14 18:50:46,723 INFO L273 TraceCheckUtils]: 11: Hoare triple {24997#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24997#true} is VALID [2018-11-14 18:50:46,724 INFO L273 TraceCheckUtils]: 12: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,724 INFO L273 TraceCheckUtils]: 13: Hoare triple {24997#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24997#true} is VALID [2018-11-14 18:50:46,724 INFO L273 TraceCheckUtils]: 14: Hoare triple {24997#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24997#true} is VALID [2018-11-14 18:50:46,724 INFO L273 TraceCheckUtils]: 15: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,724 INFO L273 TraceCheckUtils]: 16: Hoare triple {24997#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24997#true} is VALID [2018-11-14 18:50:46,724 INFO L273 TraceCheckUtils]: 17: Hoare triple {24997#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24997#true} is VALID [2018-11-14 18:50:46,724 INFO L273 TraceCheckUtils]: 18: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,724 INFO L273 TraceCheckUtils]: 19: Hoare triple {24997#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24997#true} is VALID [2018-11-14 18:50:46,724 INFO L273 TraceCheckUtils]: 20: Hoare triple {24997#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24997#true} is VALID [2018-11-14 18:50:46,724 INFO L273 TraceCheckUtils]: 21: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,725 INFO L273 TraceCheckUtils]: 22: Hoare triple {24997#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24997#true} is VALID [2018-11-14 18:50:46,725 INFO L273 TraceCheckUtils]: 23: Hoare triple {24997#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24997#true} is VALID [2018-11-14 18:50:46,725 INFO L273 TraceCheckUtils]: 24: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,725 INFO L273 TraceCheckUtils]: 25: Hoare triple {24997#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24997#true} is VALID [2018-11-14 18:50:46,725 INFO L273 TraceCheckUtils]: 26: Hoare triple {24997#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24997#true} is VALID [2018-11-14 18:50:46,725 INFO L273 TraceCheckUtils]: 27: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,725 INFO L273 TraceCheckUtils]: 28: Hoare triple {24997#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24997#true} is VALID [2018-11-14 18:50:46,725 INFO L273 TraceCheckUtils]: 29: Hoare triple {24997#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24997#true} is VALID [2018-11-14 18:50:46,725 INFO L273 TraceCheckUtils]: 30: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,725 INFO L273 TraceCheckUtils]: 31: Hoare triple {24997#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24997#true} is VALID [2018-11-14 18:50:46,726 INFO L273 TraceCheckUtils]: 32: Hoare triple {24997#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24997#true} is VALID [2018-11-14 18:50:46,726 INFO L273 TraceCheckUtils]: 33: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,726 INFO L273 TraceCheckUtils]: 34: Hoare triple {24997#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24997#true} is VALID [2018-11-14 18:50:46,726 INFO L273 TraceCheckUtils]: 35: Hoare triple {24997#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24997#true} is VALID [2018-11-14 18:50:46,726 INFO L273 TraceCheckUtils]: 36: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,726 INFO L273 TraceCheckUtils]: 37: Hoare triple {24997#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24997#true} is VALID [2018-11-14 18:50:46,726 INFO L273 TraceCheckUtils]: 38: Hoare triple {24997#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24997#true} is VALID [2018-11-14 18:50:46,726 INFO L273 TraceCheckUtils]: 39: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,726 INFO L273 TraceCheckUtils]: 40: Hoare triple {24997#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24997#true} is VALID [2018-11-14 18:50:46,726 INFO L273 TraceCheckUtils]: 41: Hoare triple {24997#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24997#true} is VALID [2018-11-14 18:50:46,727 INFO L273 TraceCheckUtils]: 42: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,727 INFO L273 TraceCheckUtils]: 43: Hoare triple {24997#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24997#true} is VALID [2018-11-14 18:50:46,727 INFO L273 TraceCheckUtils]: 44: Hoare triple {24997#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24997#true} is VALID [2018-11-14 18:50:46,727 INFO L273 TraceCheckUtils]: 45: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,727 INFO L273 TraceCheckUtils]: 46: Hoare triple {24997#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24997#true} is VALID [2018-11-14 18:50:46,727 INFO L273 TraceCheckUtils]: 47: Hoare triple {24997#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24997#true} is VALID [2018-11-14 18:50:46,727 INFO L273 TraceCheckUtils]: 48: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,727 INFO L273 TraceCheckUtils]: 49: Hoare triple {24997#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24997#true} is VALID [2018-11-14 18:50:46,727 INFO L273 TraceCheckUtils]: 50: Hoare triple {24997#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24997#true} is VALID [2018-11-14 18:50:46,728 INFO L273 TraceCheckUtils]: 51: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,728 INFO L273 TraceCheckUtils]: 52: Hoare triple {24997#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24997#true} is VALID [2018-11-14 18:50:46,728 INFO L273 TraceCheckUtils]: 53: Hoare triple {24997#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24997#true} is VALID [2018-11-14 18:50:46,728 INFO L273 TraceCheckUtils]: 54: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,728 INFO L273 TraceCheckUtils]: 55: Hoare triple {24997#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24997#true} is VALID [2018-11-14 18:50:46,728 INFO L273 TraceCheckUtils]: 56: Hoare triple {24997#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24997#true} is VALID [2018-11-14 18:50:46,728 INFO L273 TraceCheckUtils]: 57: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,728 INFO L273 TraceCheckUtils]: 58: Hoare triple {24997#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24997#true} is VALID [2018-11-14 18:50:46,728 INFO L273 TraceCheckUtils]: 59: Hoare triple {24997#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24997#true} is VALID [2018-11-14 18:50:46,728 INFO L273 TraceCheckUtils]: 60: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,729 INFO L273 TraceCheckUtils]: 61: Hoare triple {24997#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24997#true} is VALID [2018-11-14 18:50:46,729 INFO L273 TraceCheckUtils]: 62: Hoare triple {24997#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24997#true} is VALID [2018-11-14 18:50:46,729 INFO L273 TraceCheckUtils]: 63: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,729 INFO L273 TraceCheckUtils]: 64: Hoare triple {24997#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {25209#(< main_~i~1 20)} is VALID [2018-11-14 18:50:46,730 INFO L273 TraceCheckUtils]: 65: Hoare triple {25209#(< main_~i~1 20)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {25213#(<= main_~i~1 20)} is VALID [2018-11-14 18:50:46,730 INFO L273 TraceCheckUtils]: 66: Hoare triple {25213#(<= main_~i~1 20)} assume true; {25213#(<= main_~i~1 20)} is VALID [2018-11-14 18:50:46,730 INFO L273 TraceCheckUtils]: 67: Hoare triple {25213#(<= main_~i~1 20)} assume !(~i~1 < 20); {24997#true} is VALID [2018-11-14 18:50:46,730 INFO L256 TraceCheckUtils]: 68: Hoare triple {24997#true} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {24997#true} is VALID [2018-11-14 18:50:46,731 INFO L273 TraceCheckUtils]: 69: Hoare triple {24997#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {24997#true} is VALID [2018-11-14 18:50:46,731 INFO L273 TraceCheckUtils]: 70: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,731 INFO L273 TraceCheckUtils]: 71: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,731 INFO L273 TraceCheckUtils]: 72: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,731 INFO L273 TraceCheckUtils]: 73: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,731 INFO L273 TraceCheckUtils]: 74: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,732 INFO L273 TraceCheckUtils]: 75: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,732 INFO L273 TraceCheckUtils]: 76: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,732 INFO L273 TraceCheckUtils]: 77: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,732 INFO L273 TraceCheckUtils]: 78: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,732 INFO L273 TraceCheckUtils]: 79: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,732 INFO L273 TraceCheckUtils]: 80: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,732 INFO L273 TraceCheckUtils]: 81: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,732 INFO L273 TraceCheckUtils]: 82: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,732 INFO L273 TraceCheckUtils]: 83: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,732 INFO L273 TraceCheckUtils]: 84: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,733 INFO L273 TraceCheckUtils]: 85: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,733 INFO L273 TraceCheckUtils]: 86: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,733 INFO L273 TraceCheckUtils]: 87: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,733 INFO L273 TraceCheckUtils]: 88: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,733 INFO L273 TraceCheckUtils]: 89: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,733 INFO L273 TraceCheckUtils]: 90: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,733 INFO L273 TraceCheckUtils]: 91: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,733 INFO L273 TraceCheckUtils]: 92: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,733 INFO L273 TraceCheckUtils]: 93: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,733 INFO L273 TraceCheckUtils]: 94: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,734 INFO L273 TraceCheckUtils]: 95: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,734 INFO L273 TraceCheckUtils]: 96: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,734 INFO L273 TraceCheckUtils]: 97: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,734 INFO L273 TraceCheckUtils]: 98: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,734 INFO L273 TraceCheckUtils]: 99: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,734 INFO L273 TraceCheckUtils]: 100: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,734 INFO L273 TraceCheckUtils]: 101: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,734 INFO L273 TraceCheckUtils]: 102: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,734 INFO L273 TraceCheckUtils]: 103: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,734 INFO L273 TraceCheckUtils]: 104: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,735 INFO L273 TraceCheckUtils]: 105: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,735 INFO L273 TraceCheckUtils]: 106: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,735 INFO L273 TraceCheckUtils]: 107: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,735 INFO L273 TraceCheckUtils]: 108: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,735 INFO L273 TraceCheckUtils]: 109: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,735 INFO L273 TraceCheckUtils]: 110: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,735 INFO L273 TraceCheckUtils]: 111: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,735 INFO L273 TraceCheckUtils]: 112: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,735 INFO L273 TraceCheckUtils]: 113: Hoare triple {24997#true} assume !(~i~0 < 20); {24997#true} is VALID [2018-11-14 18:50:46,735 INFO L273 TraceCheckUtils]: 114: Hoare triple {24997#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {24997#true} is VALID [2018-11-14 18:50:46,736 INFO L273 TraceCheckUtils]: 115: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,736 INFO L268 TraceCheckUtils]: 116: Hoare quadruple {24997#true} {24997#true} #73#return; {24997#true} is VALID [2018-11-14 18:50:46,736 INFO L273 TraceCheckUtils]: 117: Hoare triple {24997#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); {24997#true} is VALID [2018-11-14 18:50:46,736 INFO L256 TraceCheckUtils]: 118: Hoare triple {24997#true} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {24997#true} is VALID [2018-11-14 18:50:46,736 INFO L273 TraceCheckUtils]: 119: Hoare triple {24997#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {24997#true} is VALID [2018-11-14 18:50:46,736 INFO L273 TraceCheckUtils]: 120: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,736 INFO L273 TraceCheckUtils]: 121: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,736 INFO L273 TraceCheckUtils]: 122: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,736 INFO L273 TraceCheckUtils]: 123: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,737 INFO L273 TraceCheckUtils]: 124: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,737 INFO L273 TraceCheckUtils]: 125: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,737 INFO L273 TraceCheckUtils]: 126: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,737 INFO L273 TraceCheckUtils]: 127: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,737 INFO L273 TraceCheckUtils]: 128: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,737 INFO L273 TraceCheckUtils]: 129: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,737 INFO L273 TraceCheckUtils]: 130: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,737 INFO L273 TraceCheckUtils]: 131: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,737 INFO L273 TraceCheckUtils]: 132: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,737 INFO L273 TraceCheckUtils]: 133: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,738 INFO L273 TraceCheckUtils]: 134: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,738 INFO L273 TraceCheckUtils]: 135: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,738 INFO L273 TraceCheckUtils]: 136: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,738 INFO L273 TraceCheckUtils]: 137: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,738 INFO L273 TraceCheckUtils]: 138: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,738 INFO L273 TraceCheckUtils]: 139: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,738 INFO L273 TraceCheckUtils]: 140: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,738 INFO L273 TraceCheckUtils]: 141: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,738 INFO L273 TraceCheckUtils]: 142: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,739 INFO L273 TraceCheckUtils]: 143: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,739 INFO L273 TraceCheckUtils]: 144: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,739 INFO L273 TraceCheckUtils]: 145: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,739 INFO L273 TraceCheckUtils]: 146: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,739 INFO L273 TraceCheckUtils]: 147: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,739 INFO L273 TraceCheckUtils]: 148: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,739 INFO L273 TraceCheckUtils]: 149: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,739 INFO L273 TraceCheckUtils]: 150: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,739 INFO L273 TraceCheckUtils]: 151: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,739 INFO L273 TraceCheckUtils]: 152: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,740 INFO L273 TraceCheckUtils]: 153: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,740 INFO L273 TraceCheckUtils]: 154: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,740 INFO L273 TraceCheckUtils]: 155: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,740 INFO L273 TraceCheckUtils]: 156: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,740 INFO L273 TraceCheckUtils]: 157: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,740 INFO L273 TraceCheckUtils]: 158: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,740 INFO L273 TraceCheckUtils]: 159: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,740 INFO L273 TraceCheckUtils]: 160: Hoare triple {24997#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24997#true} is VALID [2018-11-14 18:50:46,740 INFO L273 TraceCheckUtils]: 161: Hoare triple {24997#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24997#true} is VALID [2018-11-14 18:50:46,740 INFO L273 TraceCheckUtils]: 162: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,741 INFO L273 TraceCheckUtils]: 163: Hoare triple {24997#true} assume !(~i~0 < 20); {24997#true} is VALID [2018-11-14 18:50:46,741 INFO L273 TraceCheckUtils]: 164: Hoare triple {24997#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {24997#true} is VALID [2018-11-14 18:50:46,741 INFO L273 TraceCheckUtils]: 165: Hoare triple {24997#true} assume true; {24997#true} is VALID [2018-11-14 18:50:46,741 INFO L268 TraceCheckUtils]: 166: Hoare quadruple {24997#true} {24997#true} #75#return; {24997#true} is VALID [2018-11-14 18:50:46,742 INFO L273 TraceCheckUtils]: 167: Hoare triple {24997#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; {25520#(<= main_~i~2 0)} is VALID [2018-11-14 18:50:46,742 INFO L273 TraceCheckUtils]: 168: Hoare triple {25520#(<= main_~i~2 0)} assume true; {25520#(<= main_~i~2 0)} is VALID [2018-11-14 18:50:46,745 INFO L273 TraceCheckUtils]: 169: Hoare triple {25520#(<= main_~i~2 0)} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {25520#(<= main_~i~2 0)} is VALID [2018-11-14 18:50:46,745 INFO L273 TraceCheckUtils]: 170: Hoare triple {25520#(<= main_~i~2 0)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {25530#(<= main_~i~2 1)} is VALID [2018-11-14 18:50:46,746 INFO L273 TraceCheckUtils]: 171: Hoare triple {25530#(<= main_~i~2 1)} assume true; {25530#(<= main_~i~2 1)} is VALID [2018-11-14 18:50:46,746 INFO L273 TraceCheckUtils]: 172: Hoare triple {25530#(<= main_~i~2 1)} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {25530#(<= main_~i~2 1)} is VALID [2018-11-14 18:50:46,746 INFO L273 TraceCheckUtils]: 173: Hoare triple {25530#(<= main_~i~2 1)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {25540#(<= main_~i~2 2)} is VALID [2018-11-14 18:50:46,747 INFO L273 TraceCheckUtils]: 174: Hoare triple {25540#(<= main_~i~2 2)} assume true; {25540#(<= main_~i~2 2)} is VALID [2018-11-14 18:50:46,747 INFO L273 TraceCheckUtils]: 175: Hoare triple {25540#(<= main_~i~2 2)} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {25540#(<= main_~i~2 2)} is VALID [2018-11-14 18:50:46,747 INFO L273 TraceCheckUtils]: 176: Hoare triple {25540#(<= main_~i~2 2)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {25550#(<= main_~i~2 3)} is VALID [2018-11-14 18:50:46,748 INFO L273 TraceCheckUtils]: 177: Hoare triple {25550#(<= main_~i~2 3)} assume true; {25550#(<= main_~i~2 3)} is VALID [2018-11-14 18:50:46,748 INFO L273 TraceCheckUtils]: 178: Hoare triple {25550#(<= main_~i~2 3)} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {25550#(<= main_~i~2 3)} is VALID [2018-11-14 18:50:46,748 INFO L273 TraceCheckUtils]: 179: Hoare triple {25550#(<= main_~i~2 3)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {25560#(<= main_~i~2 4)} is VALID [2018-11-14 18:50:46,749 INFO L273 TraceCheckUtils]: 180: Hoare triple {25560#(<= main_~i~2 4)} assume true; {25560#(<= main_~i~2 4)} is VALID [2018-11-14 18:50:46,749 INFO L273 TraceCheckUtils]: 181: Hoare triple {25560#(<= main_~i~2 4)} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {25560#(<= main_~i~2 4)} is VALID [2018-11-14 18:50:46,750 INFO L273 TraceCheckUtils]: 182: Hoare triple {25560#(<= main_~i~2 4)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {25570#(<= main_~i~2 5)} is VALID [2018-11-14 18:50:46,751 INFO L273 TraceCheckUtils]: 183: Hoare triple {25570#(<= main_~i~2 5)} assume true; {25570#(<= main_~i~2 5)} is VALID [2018-11-14 18:50:46,751 INFO L273 TraceCheckUtils]: 184: Hoare triple {25570#(<= main_~i~2 5)} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {25570#(<= main_~i~2 5)} is VALID [2018-11-14 18:50:46,752 INFO L273 TraceCheckUtils]: 185: Hoare triple {25570#(<= main_~i~2 5)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {25580#(<= main_~i~2 6)} is VALID [2018-11-14 18:50:46,752 INFO L273 TraceCheckUtils]: 186: Hoare triple {25580#(<= main_~i~2 6)} assume true; {25580#(<= main_~i~2 6)} is VALID [2018-11-14 18:50:46,753 INFO L273 TraceCheckUtils]: 187: Hoare triple {25580#(<= main_~i~2 6)} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {25580#(<= main_~i~2 6)} is VALID [2018-11-14 18:50:46,754 INFO L273 TraceCheckUtils]: 188: Hoare triple {25580#(<= main_~i~2 6)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {25590#(<= main_~i~2 7)} is VALID [2018-11-14 18:50:46,754 INFO L273 TraceCheckUtils]: 189: Hoare triple {25590#(<= main_~i~2 7)} assume true; {25590#(<= main_~i~2 7)} is VALID [2018-11-14 18:50:46,755 INFO L273 TraceCheckUtils]: 190: Hoare triple {25590#(<= main_~i~2 7)} assume !(~i~2 < 19); {24998#false} is VALID [2018-11-14 18:50:46,755 INFO L273 TraceCheckUtils]: 191: Hoare triple {24998#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {24998#false} is VALID [2018-11-14 18:50:46,755 INFO L256 TraceCheckUtils]: 192: Hoare triple {24998#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {24998#false} is VALID [2018-11-14 18:50:46,755 INFO L273 TraceCheckUtils]: 193: Hoare triple {24998#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {24998#false} is VALID [2018-11-14 18:50:46,756 INFO L273 TraceCheckUtils]: 194: Hoare triple {24998#false} assume true; {24998#false} is VALID [2018-11-14 18:50:46,756 INFO L273 TraceCheckUtils]: 195: Hoare triple {24998#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24998#false} is VALID [2018-11-14 18:50:46,756 INFO L273 TraceCheckUtils]: 196: Hoare triple {24998#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24998#false} is VALID [2018-11-14 18:50:46,756 INFO L273 TraceCheckUtils]: 197: Hoare triple {24998#false} assume true; {24998#false} is VALID [2018-11-14 18:50:46,756 INFO L273 TraceCheckUtils]: 198: Hoare triple {24998#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24998#false} is VALID [2018-11-14 18:50:46,756 INFO L273 TraceCheckUtils]: 199: Hoare triple {24998#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24998#false} is VALID [2018-11-14 18:50:46,757 INFO L273 TraceCheckUtils]: 200: Hoare triple {24998#false} assume true; {24998#false} is VALID [2018-11-14 18:50:46,757 INFO L273 TraceCheckUtils]: 201: Hoare triple {24998#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24998#false} is VALID [2018-11-14 18:50:46,757 INFO L273 TraceCheckUtils]: 202: Hoare triple {24998#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24998#false} is VALID [2018-11-14 18:50:46,757 INFO L273 TraceCheckUtils]: 203: Hoare triple {24998#false} assume true; {24998#false} is VALID [2018-11-14 18:50:46,757 INFO L273 TraceCheckUtils]: 204: Hoare triple {24998#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24998#false} is VALID [2018-11-14 18:50:46,758 INFO L273 TraceCheckUtils]: 205: Hoare triple {24998#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24998#false} is VALID [2018-11-14 18:50:46,758 INFO L273 TraceCheckUtils]: 206: Hoare triple {24998#false} assume true; {24998#false} is VALID [2018-11-14 18:50:46,758 INFO L273 TraceCheckUtils]: 207: Hoare triple {24998#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24998#false} is VALID [2018-11-14 18:50:46,758 INFO L273 TraceCheckUtils]: 208: Hoare triple {24998#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24998#false} is VALID [2018-11-14 18:50:46,758 INFO L273 TraceCheckUtils]: 209: Hoare triple {24998#false} assume true; {24998#false} is VALID [2018-11-14 18:50:46,758 INFO L273 TraceCheckUtils]: 210: Hoare triple {24998#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24998#false} is VALID [2018-11-14 18:50:46,759 INFO L273 TraceCheckUtils]: 211: Hoare triple {24998#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24998#false} is VALID [2018-11-14 18:50:46,759 INFO L273 TraceCheckUtils]: 212: Hoare triple {24998#false} assume true; {24998#false} is VALID [2018-11-14 18:50:46,759 INFO L273 TraceCheckUtils]: 213: Hoare triple {24998#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24998#false} is VALID [2018-11-14 18:50:46,759 INFO L273 TraceCheckUtils]: 214: Hoare triple {24998#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24998#false} is VALID [2018-11-14 18:50:46,759 INFO L273 TraceCheckUtils]: 215: Hoare triple {24998#false} assume true; {24998#false} is VALID [2018-11-14 18:50:46,759 INFO L273 TraceCheckUtils]: 216: Hoare triple {24998#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24998#false} is VALID [2018-11-14 18:50:46,760 INFO L273 TraceCheckUtils]: 217: Hoare triple {24998#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24998#false} is VALID [2018-11-14 18:50:46,760 INFO L273 TraceCheckUtils]: 218: Hoare triple {24998#false} assume true; {24998#false} is VALID [2018-11-14 18:50:46,760 INFO L273 TraceCheckUtils]: 219: Hoare triple {24998#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24998#false} is VALID [2018-11-14 18:50:46,760 INFO L273 TraceCheckUtils]: 220: Hoare triple {24998#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24998#false} is VALID [2018-11-14 18:50:46,760 INFO L273 TraceCheckUtils]: 221: Hoare triple {24998#false} assume true; {24998#false} is VALID [2018-11-14 18:50:46,760 INFO L273 TraceCheckUtils]: 222: Hoare triple {24998#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24998#false} is VALID [2018-11-14 18:50:46,760 INFO L273 TraceCheckUtils]: 223: Hoare triple {24998#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24998#false} is VALID [2018-11-14 18:50:46,760 INFO L273 TraceCheckUtils]: 224: Hoare triple {24998#false} assume true; {24998#false} is VALID [2018-11-14 18:50:46,760 INFO L273 TraceCheckUtils]: 225: Hoare triple {24998#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24998#false} is VALID [2018-11-14 18:50:46,760 INFO L273 TraceCheckUtils]: 226: Hoare triple {24998#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24998#false} is VALID [2018-11-14 18:50:46,761 INFO L273 TraceCheckUtils]: 227: Hoare triple {24998#false} assume true; {24998#false} is VALID [2018-11-14 18:50:46,761 INFO L273 TraceCheckUtils]: 228: Hoare triple {24998#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24998#false} is VALID [2018-11-14 18:50:46,761 INFO L273 TraceCheckUtils]: 229: Hoare triple {24998#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24998#false} is VALID [2018-11-14 18:50:46,761 INFO L273 TraceCheckUtils]: 230: Hoare triple {24998#false} assume true; {24998#false} is VALID [2018-11-14 18:50:46,761 INFO L273 TraceCheckUtils]: 231: Hoare triple {24998#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24998#false} is VALID [2018-11-14 18:50:46,761 INFO L273 TraceCheckUtils]: 232: Hoare triple {24998#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24998#false} is VALID [2018-11-14 18:50:46,761 INFO L273 TraceCheckUtils]: 233: Hoare triple {24998#false} assume true; {24998#false} is VALID [2018-11-14 18:50:46,761 INFO L273 TraceCheckUtils]: 234: Hoare triple {24998#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {24998#false} is VALID [2018-11-14 18:50:46,761 INFO L273 TraceCheckUtils]: 235: Hoare triple {24998#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24998#false} is VALID [2018-11-14 18:50:46,761 INFO L273 TraceCheckUtils]: 236: Hoare triple {24998#false} assume true; {24998#false} is VALID [2018-11-14 18:50:46,762 INFO L273 TraceCheckUtils]: 237: Hoare triple {24998#false} assume !(~i~0 < 20); {24998#false} is VALID [2018-11-14 18:50:46,762 INFO L273 TraceCheckUtils]: 238: Hoare triple {24998#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {24998#false} is VALID [2018-11-14 18:50:46,762 INFO L273 TraceCheckUtils]: 239: Hoare triple {24998#false} assume true; {24998#false} is VALID [2018-11-14 18:50:46,762 INFO L268 TraceCheckUtils]: 240: Hoare quadruple {24998#false} {24998#false} #77#return; {24998#false} is VALID [2018-11-14 18:50:46,762 INFO L273 TraceCheckUtils]: 241: Hoare triple {24998#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {24998#false} is VALID [2018-11-14 18:50:46,762 INFO L273 TraceCheckUtils]: 242: Hoare triple {24998#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {24998#false} is VALID [2018-11-14 18:50:46,762 INFO L273 TraceCheckUtils]: 243: Hoare triple {24998#false} assume !false; {24998#false} is VALID [2018-11-14 18:50:46,784 INFO L134 CoverageAnalysis]: Checked inductivity of 3540 backedges. 1359 proven. 77 refuted. 0 times theorem prover too weak. 2104 trivial. 0 not checked. [2018-11-14 18:50:46,805 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:50:46,805 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 12] total 27 [2018-11-14 18:50:46,806 INFO L78 Accepts]: Start accepts. Automaton has 27 states. Word has length 244 [2018-11-14 18:50:46,807 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:50:46,807 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 27 states. [2018-11-14 18:50:46,944 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 119 edges. 119 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:50:46,944 INFO L459 AbstractCegarLoop]: Interpolant automaton has 27 states [2018-11-14 18:50:46,944 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 27 interpolants. [2018-11-14 18:50:46,945 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=185, Invalid=517, Unknown=0, NotChecked=0, Total=702 [2018-11-14 18:50:46,945 INFO L87 Difference]: Start difference. First operand 149 states and 153 transitions. Second operand 27 states. [2018-11-14 18:50:48,062 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:48,062 INFO L93 Difference]: Finished difference Result 237 states and 248 transitions. [2018-11-14 18:50:48,062 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 27 states. [2018-11-14 18:50:48,062 INFO L78 Accepts]: Start accepts. Automaton has 27 states. Word has length 244 [2018-11-14 18:50:48,062 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:50:48,063 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 27 states. [2018-11-14 18:50:48,064 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 130 transitions. [2018-11-14 18:50:48,064 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 27 states. [2018-11-14 18:50:48,065 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 130 transitions. [2018-11-14 18:50:48,066 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 27 states and 130 transitions. [2018-11-14 18:50:48,765 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 130 edges. 130 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:50:48,768 INFO L225 Difference]: With dead ends: 237 [2018-11-14 18:50:48,769 INFO L226 Difference]: Without dead ends: 157 [2018-11-14 18:50:48,769 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 268 GetRequests, 235 SyntacticMatches, 0 SemanticMatches, 33 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 176 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=273, Invalid=917, Unknown=0, NotChecked=0, Total=1190 [2018-11-14 18:50:48,770 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 157 states. [2018-11-14 18:50:48,862 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 157 to 155. [2018-11-14 18:50:48,863 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:50:48,863 INFO L82 GeneralOperation]: Start isEquivalent. First operand 157 states. Second operand 155 states. [2018-11-14 18:50:48,863 INFO L74 IsIncluded]: Start isIncluded. First operand 157 states. Second operand 155 states. [2018-11-14 18:50:48,863 INFO L87 Difference]: Start difference. First operand 157 states. Second operand 155 states. [2018-11-14 18:50:48,866 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:48,866 INFO L93 Difference]: Finished difference Result 157 states and 161 transitions. [2018-11-14 18:50:48,866 INFO L276 IsEmpty]: Start isEmpty. Operand 157 states and 161 transitions. [2018-11-14 18:50:48,866 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:50:48,866 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:50:48,866 INFO L74 IsIncluded]: Start isIncluded. First operand 155 states. Second operand 157 states. [2018-11-14 18:50:48,866 INFO L87 Difference]: Start difference. First operand 155 states. Second operand 157 states. [2018-11-14 18:50:48,869 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:48,869 INFO L93 Difference]: Finished difference Result 157 states and 161 transitions. [2018-11-14 18:50:48,870 INFO L276 IsEmpty]: Start isEmpty. Operand 157 states and 161 transitions. [2018-11-14 18:50:48,870 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:50:48,870 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:50:48,870 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:50:48,870 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:50:48,871 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 155 states. [2018-11-14 18:50:48,873 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 155 states to 155 states and 159 transitions. [2018-11-14 18:50:48,873 INFO L78 Accepts]: Start accepts. Automaton has 155 states and 159 transitions. Word has length 244 [2018-11-14 18:50:48,874 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:50:48,874 INFO L480 AbstractCegarLoop]: Abstraction has 155 states and 159 transitions. [2018-11-14 18:50:48,874 INFO L481 AbstractCegarLoop]: Interpolant automaton has 27 states. [2018-11-14 18:50:48,874 INFO L276 IsEmpty]: Start isEmpty. Operand 155 states and 159 transitions. [2018-11-14 18:50:48,875 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 257 [2018-11-14 18:50:48,875 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:50:48,876 INFO L375 BasicCegarLoop]: trace histogram [48, 45, 45, 21, 20, 20, 9, 8, 8, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:50:48,876 INFO L423 AbstractCegarLoop]: === Iteration 32 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:50:48,876 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:50:48,876 INFO L82 PathProgramCache]: Analyzing trace with hash 24770341, now seen corresponding path program 28 times [2018-11-14 18:50:48,876 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:50:48,877 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:50:48,877 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:50:48,877 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 18:50:48,877 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:50:48,910 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:50:49,277 INFO L256 TraceCheckUtils]: 0: Hoare triple {26611#true} call ULTIMATE.init(); {26611#true} is VALID [2018-11-14 18:50:49,277 INFO L273 TraceCheckUtils]: 1: Hoare triple {26611#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {26611#true} is VALID [2018-11-14 18:50:49,277 INFO L273 TraceCheckUtils]: 2: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,277 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {26611#true} {26611#true} #69#return; {26611#true} is VALID [2018-11-14 18:50:49,277 INFO L256 TraceCheckUtils]: 4: Hoare triple {26611#true} call #t~ret12 := main(); {26611#true} is VALID [2018-11-14 18:50:49,278 INFO L273 TraceCheckUtils]: 5: Hoare triple {26611#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {26611#true} is VALID [2018-11-14 18:50:49,278 INFO L273 TraceCheckUtils]: 6: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,278 INFO L273 TraceCheckUtils]: 7: Hoare triple {26611#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26611#true} is VALID [2018-11-14 18:50:49,278 INFO L273 TraceCheckUtils]: 8: Hoare triple {26611#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26611#true} is VALID [2018-11-14 18:50:49,278 INFO L273 TraceCheckUtils]: 9: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,278 INFO L273 TraceCheckUtils]: 10: Hoare triple {26611#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26611#true} is VALID [2018-11-14 18:50:49,278 INFO L273 TraceCheckUtils]: 11: Hoare triple {26611#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26611#true} is VALID [2018-11-14 18:50:49,278 INFO L273 TraceCheckUtils]: 12: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,278 INFO L273 TraceCheckUtils]: 13: Hoare triple {26611#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26611#true} is VALID [2018-11-14 18:50:49,279 INFO L273 TraceCheckUtils]: 14: Hoare triple {26611#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26611#true} is VALID [2018-11-14 18:50:49,279 INFO L273 TraceCheckUtils]: 15: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,279 INFO L273 TraceCheckUtils]: 16: Hoare triple {26611#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26611#true} is VALID [2018-11-14 18:50:49,279 INFO L273 TraceCheckUtils]: 17: Hoare triple {26611#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26611#true} is VALID [2018-11-14 18:50:49,279 INFO L273 TraceCheckUtils]: 18: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,279 INFO L273 TraceCheckUtils]: 19: Hoare triple {26611#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26611#true} is VALID [2018-11-14 18:50:49,279 INFO L273 TraceCheckUtils]: 20: Hoare triple {26611#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26611#true} is VALID [2018-11-14 18:50:49,279 INFO L273 TraceCheckUtils]: 21: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,279 INFO L273 TraceCheckUtils]: 22: Hoare triple {26611#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26611#true} is VALID [2018-11-14 18:50:49,279 INFO L273 TraceCheckUtils]: 23: Hoare triple {26611#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26611#true} is VALID [2018-11-14 18:50:49,280 INFO L273 TraceCheckUtils]: 24: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,280 INFO L273 TraceCheckUtils]: 25: Hoare triple {26611#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26611#true} is VALID [2018-11-14 18:50:49,280 INFO L273 TraceCheckUtils]: 26: Hoare triple {26611#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26611#true} is VALID [2018-11-14 18:50:49,280 INFO L273 TraceCheckUtils]: 27: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,280 INFO L273 TraceCheckUtils]: 28: Hoare triple {26611#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26611#true} is VALID [2018-11-14 18:50:49,280 INFO L273 TraceCheckUtils]: 29: Hoare triple {26611#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26611#true} is VALID [2018-11-14 18:50:49,280 INFO L273 TraceCheckUtils]: 30: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,280 INFO L273 TraceCheckUtils]: 31: Hoare triple {26611#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26611#true} is VALID [2018-11-14 18:50:49,280 INFO L273 TraceCheckUtils]: 32: Hoare triple {26611#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26611#true} is VALID [2018-11-14 18:50:49,280 INFO L273 TraceCheckUtils]: 33: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,281 INFO L273 TraceCheckUtils]: 34: Hoare triple {26611#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26611#true} is VALID [2018-11-14 18:50:49,281 INFO L273 TraceCheckUtils]: 35: Hoare triple {26611#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26611#true} is VALID [2018-11-14 18:50:49,281 INFO L273 TraceCheckUtils]: 36: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,281 INFO L273 TraceCheckUtils]: 37: Hoare triple {26611#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26611#true} is VALID [2018-11-14 18:50:49,281 INFO L273 TraceCheckUtils]: 38: Hoare triple {26611#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26611#true} is VALID [2018-11-14 18:50:49,281 INFO L273 TraceCheckUtils]: 39: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,281 INFO L273 TraceCheckUtils]: 40: Hoare triple {26611#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26611#true} is VALID [2018-11-14 18:50:49,281 INFO L273 TraceCheckUtils]: 41: Hoare triple {26611#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26611#true} is VALID [2018-11-14 18:50:49,281 INFO L273 TraceCheckUtils]: 42: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,282 INFO L273 TraceCheckUtils]: 43: Hoare triple {26611#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26611#true} is VALID [2018-11-14 18:50:49,282 INFO L273 TraceCheckUtils]: 44: Hoare triple {26611#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26611#true} is VALID [2018-11-14 18:50:49,282 INFO L273 TraceCheckUtils]: 45: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,282 INFO L273 TraceCheckUtils]: 46: Hoare triple {26611#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26611#true} is VALID [2018-11-14 18:50:49,282 INFO L273 TraceCheckUtils]: 47: Hoare triple {26611#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26611#true} is VALID [2018-11-14 18:50:49,282 INFO L273 TraceCheckUtils]: 48: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,282 INFO L273 TraceCheckUtils]: 49: Hoare triple {26611#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26611#true} is VALID [2018-11-14 18:50:49,282 INFO L273 TraceCheckUtils]: 50: Hoare triple {26611#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26611#true} is VALID [2018-11-14 18:50:49,282 INFO L273 TraceCheckUtils]: 51: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,282 INFO L273 TraceCheckUtils]: 52: Hoare triple {26611#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26611#true} is VALID [2018-11-14 18:50:49,283 INFO L273 TraceCheckUtils]: 53: Hoare triple {26611#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26611#true} is VALID [2018-11-14 18:50:49,283 INFO L273 TraceCheckUtils]: 54: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,283 INFO L273 TraceCheckUtils]: 55: Hoare triple {26611#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26611#true} is VALID [2018-11-14 18:50:49,283 INFO L273 TraceCheckUtils]: 56: Hoare triple {26611#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26611#true} is VALID [2018-11-14 18:50:49,283 INFO L273 TraceCheckUtils]: 57: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,283 INFO L273 TraceCheckUtils]: 58: Hoare triple {26611#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26611#true} is VALID [2018-11-14 18:50:49,283 INFO L273 TraceCheckUtils]: 59: Hoare triple {26611#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26611#true} is VALID [2018-11-14 18:50:49,283 INFO L273 TraceCheckUtils]: 60: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,283 INFO L273 TraceCheckUtils]: 61: Hoare triple {26611#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26611#true} is VALID [2018-11-14 18:50:49,283 INFO L273 TraceCheckUtils]: 62: Hoare triple {26611#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26611#true} is VALID [2018-11-14 18:50:49,284 INFO L273 TraceCheckUtils]: 63: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,284 INFO L273 TraceCheckUtils]: 64: Hoare triple {26611#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26611#true} is VALID [2018-11-14 18:50:49,284 INFO L273 TraceCheckUtils]: 65: Hoare triple {26611#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26611#true} is VALID [2018-11-14 18:50:49,284 INFO L273 TraceCheckUtils]: 66: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,284 INFO L273 TraceCheckUtils]: 67: Hoare triple {26611#true} assume !(~i~1 < 20); {26611#true} is VALID [2018-11-14 18:50:49,284 INFO L256 TraceCheckUtils]: 68: Hoare triple {26611#true} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {26611#true} is VALID [2018-11-14 18:50:49,284 INFO L273 TraceCheckUtils]: 69: Hoare triple {26611#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {26613#(= avg_~i~0 0)} is VALID [2018-11-14 18:50:49,285 INFO L273 TraceCheckUtils]: 70: Hoare triple {26613#(= avg_~i~0 0)} assume true; {26613#(= avg_~i~0 0)} is VALID [2018-11-14 18:50:49,285 INFO L273 TraceCheckUtils]: 71: Hoare triple {26613#(= avg_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26613#(= avg_~i~0 0)} is VALID [2018-11-14 18:50:49,285 INFO L273 TraceCheckUtils]: 72: Hoare triple {26613#(= avg_~i~0 0)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26614#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:49,286 INFO L273 TraceCheckUtils]: 73: Hoare triple {26614#(<= avg_~i~0 1)} assume true; {26614#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:49,286 INFO L273 TraceCheckUtils]: 74: Hoare triple {26614#(<= avg_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26614#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:49,287 INFO L273 TraceCheckUtils]: 75: Hoare triple {26614#(<= avg_~i~0 1)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26615#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:49,287 INFO L273 TraceCheckUtils]: 76: Hoare triple {26615#(<= avg_~i~0 2)} assume true; {26615#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:49,287 INFO L273 TraceCheckUtils]: 77: Hoare triple {26615#(<= avg_~i~0 2)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26615#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:49,288 INFO L273 TraceCheckUtils]: 78: Hoare triple {26615#(<= avg_~i~0 2)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26616#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:49,288 INFO L273 TraceCheckUtils]: 79: Hoare triple {26616#(<= avg_~i~0 3)} assume true; {26616#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:49,288 INFO L273 TraceCheckUtils]: 80: Hoare triple {26616#(<= avg_~i~0 3)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26616#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:49,289 INFO L273 TraceCheckUtils]: 81: Hoare triple {26616#(<= avg_~i~0 3)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26617#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:49,289 INFO L273 TraceCheckUtils]: 82: Hoare triple {26617#(<= avg_~i~0 4)} assume true; {26617#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:49,290 INFO L273 TraceCheckUtils]: 83: Hoare triple {26617#(<= avg_~i~0 4)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26617#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:49,291 INFO L273 TraceCheckUtils]: 84: Hoare triple {26617#(<= avg_~i~0 4)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26618#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:49,291 INFO L273 TraceCheckUtils]: 85: Hoare triple {26618#(<= avg_~i~0 5)} assume true; {26618#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:49,292 INFO L273 TraceCheckUtils]: 86: Hoare triple {26618#(<= avg_~i~0 5)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26618#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:49,292 INFO L273 TraceCheckUtils]: 87: Hoare triple {26618#(<= avg_~i~0 5)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26619#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:49,293 INFO L273 TraceCheckUtils]: 88: Hoare triple {26619#(<= avg_~i~0 6)} assume true; {26619#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:49,293 INFO L273 TraceCheckUtils]: 89: Hoare triple {26619#(<= avg_~i~0 6)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26619#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:49,294 INFO L273 TraceCheckUtils]: 90: Hoare triple {26619#(<= avg_~i~0 6)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26620#(<= avg_~i~0 7)} is VALID [2018-11-14 18:50:49,295 INFO L273 TraceCheckUtils]: 91: Hoare triple {26620#(<= avg_~i~0 7)} assume true; {26620#(<= avg_~i~0 7)} is VALID [2018-11-14 18:50:49,295 INFO L273 TraceCheckUtils]: 92: Hoare triple {26620#(<= avg_~i~0 7)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26620#(<= avg_~i~0 7)} is VALID [2018-11-14 18:50:49,296 INFO L273 TraceCheckUtils]: 93: Hoare triple {26620#(<= avg_~i~0 7)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26621#(<= avg_~i~0 8)} is VALID [2018-11-14 18:50:49,296 INFO L273 TraceCheckUtils]: 94: Hoare triple {26621#(<= avg_~i~0 8)} assume true; {26621#(<= avg_~i~0 8)} is VALID [2018-11-14 18:50:49,297 INFO L273 TraceCheckUtils]: 95: Hoare triple {26621#(<= avg_~i~0 8)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26621#(<= avg_~i~0 8)} is VALID [2018-11-14 18:50:49,298 INFO L273 TraceCheckUtils]: 96: Hoare triple {26621#(<= avg_~i~0 8)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26622#(<= avg_~i~0 9)} is VALID [2018-11-14 18:50:49,298 INFO L273 TraceCheckUtils]: 97: Hoare triple {26622#(<= avg_~i~0 9)} assume true; {26622#(<= avg_~i~0 9)} is VALID [2018-11-14 18:50:49,299 INFO L273 TraceCheckUtils]: 98: Hoare triple {26622#(<= avg_~i~0 9)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26622#(<= avg_~i~0 9)} is VALID [2018-11-14 18:50:49,299 INFO L273 TraceCheckUtils]: 99: Hoare triple {26622#(<= avg_~i~0 9)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26623#(<= avg_~i~0 10)} is VALID [2018-11-14 18:50:49,300 INFO L273 TraceCheckUtils]: 100: Hoare triple {26623#(<= avg_~i~0 10)} assume true; {26623#(<= avg_~i~0 10)} is VALID [2018-11-14 18:50:49,300 INFO L273 TraceCheckUtils]: 101: Hoare triple {26623#(<= avg_~i~0 10)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26623#(<= avg_~i~0 10)} is VALID [2018-11-14 18:50:49,301 INFO L273 TraceCheckUtils]: 102: Hoare triple {26623#(<= avg_~i~0 10)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26624#(<= avg_~i~0 11)} is VALID [2018-11-14 18:50:49,302 INFO L273 TraceCheckUtils]: 103: Hoare triple {26624#(<= avg_~i~0 11)} assume true; {26624#(<= avg_~i~0 11)} is VALID [2018-11-14 18:50:49,302 INFO L273 TraceCheckUtils]: 104: Hoare triple {26624#(<= avg_~i~0 11)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26624#(<= avg_~i~0 11)} is VALID [2018-11-14 18:50:49,303 INFO L273 TraceCheckUtils]: 105: Hoare triple {26624#(<= avg_~i~0 11)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26625#(<= avg_~i~0 12)} is VALID [2018-11-14 18:50:49,303 INFO L273 TraceCheckUtils]: 106: Hoare triple {26625#(<= avg_~i~0 12)} assume true; {26625#(<= avg_~i~0 12)} is VALID [2018-11-14 18:50:49,304 INFO L273 TraceCheckUtils]: 107: Hoare triple {26625#(<= avg_~i~0 12)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26625#(<= avg_~i~0 12)} is VALID [2018-11-14 18:50:49,305 INFO L273 TraceCheckUtils]: 108: Hoare triple {26625#(<= avg_~i~0 12)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26626#(<= avg_~i~0 13)} is VALID [2018-11-14 18:50:49,305 INFO L273 TraceCheckUtils]: 109: Hoare triple {26626#(<= avg_~i~0 13)} assume true; {26626#(<= avg_~i~0 13)} is VALID [2018-11-14 18:50:49,306 INFO L273 TraceCheckUtils]: 110: Hoare triple {26626#(<= avg_~i~0 13)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26626#(<= avg_~i~0 13)} is VALID [2018-11-14 18:50:49,306 INFO L273 TraceCheckUtils]: 111: Hoare triple {26626#(<= avg_~i~0 13)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26627#(<= avg_~i~0 14)} is VALID [2018-11-14 18:50:49,307 INFO L273 TraceCheckUtils]: 112: Hoare triple {26627#(<= avg_~i~0 14)} assume true; {26627#(<= avg_~i~0 14)} is VALID [2018-11-14 18:50:49,307 INFO L273 TraceCheckUtils]: 113: Hoare triple {26627#(<= avg_~i~0 14)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26627#(<= avg_~i~0 14)} is VALID [2018-11-14 18:50:49,308 INFO L273 TraceCheckUtils]: 114: Hoare triple {26627#(<= avg_~i~0 14)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26628#(<= avg_~i~0 15)} is VALID [2018-11-14 18:50:49,309 INFO L273 TraceCheckUtils]: 115: Hoare triple {26628#(<= avg_~i~0 15)} assume true; {26628#(<= avg_~i~0 15)} is VALID [2018-11-14 18:50:49,309 INFO L273 TraceCheckUtils]: 116: Hoare triple {26628#(<= avg_~i~0 15)} assume !(~i~0 < 20); {26612#false} is VALID [2018-11-14 18:50:49,309 INFO L273 TraceCheckUtils]: 117: Hoare triple {26612#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {26612#false} is VALID [2018-11-14 18:50:49,310 INFO L273 TraceCheckUtils]: 118: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,310 INFO L268 TraceCheckUtils]: 119: Hoare quadruple {26612#false} {26611#true} #73#return; {26612#false} is VALID [2018-11-14 18:50:49,310 INFO L273 TraceCheckUtils]: 120: Hoare triple {26612#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); {26612#false} is VALID [2018-11-14 18:50:49,310 INFO L256 TraceCheckUtils]: 121: Hoare triple {26612#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {26611#true} is VALID [2018-11-14 18:50:49,310 INFO L273 TraceCheckUtils]: 122: Hoare triple {26611#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {26611#true} is VALID [2018-11-14 18:50:49,311 INFO L273 TraceCheckUtils]: 123: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,311 INFO L273 TraceCheckUtils]: 124: Hoare triple {26611#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26611#true} is VALID [2018-11-14 18:50:49,311 INFO L273 TraceCheckUtils]: 125: Hoare triple {26611#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26611#true} is VALID [2018-11-14 18:50:49,311 INFO L273 TraceCheckUtils]: 126: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,311 INFO L273 TraceCheckUtils]: 127: Hoare triple {26611#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26611#true} is VALID [2018-11-14 18:50:49,311 INFO L273 TraceCheckUtils]: 128: Hoare triple {26611#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26611#true} is VALID [2018-11-14 18:50:49,312 INFO L273 TraceCheckUtils]: 129: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,312 INFO L273 TraceCheckUtils]: 130: Hoare triple {26611#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26611#true} is VALID [2018-11-14 18:50:49,312 INFO L273 TraceCheckUtils]: 131: Hoare triple {26611#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26611#true} is VALID [2018-11-14 18:50:49,312 INFO L273 TraceCheckUtils]: 132: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,312 INFO L273 TraceCheckUtils]: 133: Hoare triple {26611#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26611#true} is VALID [2018-11-14 18:50:49,313 INFO L273 TraceCheckUtils]: 134: Hoare triple {26611#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26611#true} is VALID [2018-11-14 18:50:49,313 INFO L273 TraceCheckUtils]: 135: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,313 INFO L273 TraceCheckUtils]: 136: Hoare triple {26611#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26611#true} is VALID [2018-11-14 18:50:49,313 INFO L273 TraceCheckUtils]: 137: Hoare triple {26611#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26611#true} is VALID [2018-11-14 18:50:49,313 INFO L273 TraceCheckUtils]: 138: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,313 INFO L273 TraceCheckUtils]: 139: Hoare triple {26611#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26611#true} is VALID [2018-11-14 18:50:49,314 INFO L273 TraceCheckUtils]: 140: Hoare triple {26611#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26611#true} is VALID [2018-11-14 18:50:49,314 INFO L273 TraceCheckUtils]: 141: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,314 INFO L273 TraceCheckUtils]: 142: Hoare triple {26611#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26611#true} is VALID [2018-11-14 18:50:49,314 INFO L273 TraceCheckUtils]: 143: Hoare triple {26611#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26611#true} is VALID [2018-11-14 18:50:49,314 INFO L273 TraceCheckUtils]: 144: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,314 INFO L273 TraceCheckUtils]: 145: Hoare triple {26611#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26611#true} is VALID [2018-11-14 18:50:49,314 INFO L273 TraceCheckUtils]: 146: Hoare triple {26611#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26611#true} is VALID [2018-11-14 18:50:49,315 INFO L273 TraceCheckUtils]: 147: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,315 INFO L273 TraceCheckUtils]: 148: Hoare triple {26611#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26611#true} is VALID [2018-11-14 18:50:49,315 INFO L273 TraceCheckUtils]: 149: Hoare triple {26611#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26611#true} is VALID [2018-11-14 18:50:49,315 INFO L273 TraceCheckUtils]: 150: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,315 INFO L273 TraceCheckUtils]: 151: Hoare triple {26611#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26611#true} is VALID [2018-11-14 18:50:49,315 INFO L273 TraceCheckUtils]: 152: Hoare triple {26611#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26611#true} is VALID [2018-11-14 18:50:49,315 INFO L273 TraceCheckUtils]: 153: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,315 INFO L273 TraceCheckUtils]: 154: Hoare triple {26611#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26611#true} is VALID [2018-11-14 18:50:49,315 INFO L273 TraceCheckUtils]: 155: Hoare triple {26611#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26611#true} is VALID [2018-11-14 18:50:49,315 INFO L273 TraceCheckUtils]: 156: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,316 INFO L273 TraceCheckUtils]: 157: Hoare triple {26611#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26611#true} is VALID [2018-11-14 18:50:49,316 INFO L273 TraceCheckUtils]: 158: Hoare triple {26611#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26611#true} is VALID [2018-11-14 18:50:49,316 INFO L273 TraceCheckUtils]: 159: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,316 INFO L273 TraceCheckUtils]: 160: Hoare triple {26611#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26611#true} is VALID [2018-11-14 18:50:49,316 INFO L273 TraceCheckUtils]: 161: Hoare triple {26611#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26611#true} is VALID [2018-11-14 18:50:49,316 INFO L273 TraceCheckUtils]: 162: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,316 INFO L273 TraceCheckUtils]: 163: Hoare triple {26611#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26611#true} is VALID [2018-11-14 18:50:49,316 INFO L273 TraceCheckUtils]: 164: Hoare triple {26611#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26611#true} is VALID [2018-11-14 18:50:49,316 INFO L273 TraceCheckUtils]: 165: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,316 INFO L273 TraceCheckUtils]: 166: Hoare triple {26611#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26611#true} is VALID [2018-11-14 18:50:49,317 INFO L273 TraceCheckUtils]: 167: Hoare triple {26611#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26611#true} is VALID [2018-11-14 18:50:49,317 INFO L273 TraceCheckUtils]: 168: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,317 INFO L273 TraceCheckUtils]: 169: Hoare triple {26611#true} assume !(~i~0 < 20); {26611#true} is VALID [2018-11-14 18:50:49,317 INFO L273 TraceCheckUtils]: 170: Hoare triple {26611#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {26611#true} is VALID [2018-11-14 18:50:49,317 INFO L273 TraceCheckUtils]: 171: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,317 INFO L268 TraceCheckUtils]: 172: Hoare quadruple {26611#true} {26612#false} #75#return; {26612#false} is VALID [2018-11-14 18:50:49,317 INFO L273 TraceCheckUtils]: 173: Hoare triple {26612#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; {26612#false} is VALID [2018-11-14 18:50:49,317 INFO L273 TraceCheckUtils]: 174: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,317 INFO L273 TraceCheckUtils]: 175: Hoare triple {26612#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {26612#false} is VALID [2018-11-14 18:50:49,318 INFO L273 TraceCheckUtils]: 176: Hoare triple {26612#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {26612#false} is VALID [2018-11-14 18:50:49,318 INFO L273 TraceCheckUtils]: 177: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,318 INFO L273 TraceCheckUtils]: 178: Hoare triple {26612#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {26612#false} is VALID [2018-11-14 18:50:49,318 INFO L273 TraceCheckUtils]: 179: Hoare triple {26612#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {26612#false} is VALID [2018-11-14 18:50:49,318 INFO L273 TraceCheckUtils]: 180: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,318 INFO L273 TraceCheckUtils]: 181: Hoare triple {26612#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {26612#false} is VALID [2018-11-14 18:50:49,318 INFO L273 TraceCheckUtils]: 182: Hoare triple {26612#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {26612#false} is VALID [2018-11-14 18:50:49,318 INFO L273 TraceCheckUtils]: 183: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,318 INFO L273 TraceCheckUtils]: 184: Hoare triple {26612#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {26612#false} is VALID [2018-11-14 18:50:49,318 INFO L273 TraceCheckUtils]: 185: Hoare triple {26612#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {26612#false} is VALID [2018-11-14 18:50:49,319 INFO L273 TraceCheckUtils]: 186: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,319 INFO L273 TraceCheckUtils]: 187: Hoare triple {26612#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {26612#false} is VALID [2018-11-14 18:50:49,319 INFO L273 TraceCheckUtils]: 188: Hoare triple {26612#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {26612#false} is VALID [2018-11-14 18:50:49,319 INFO L273 TraceCheckUtils]: 189: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,319 INFO L273 TraceCheckUtils]: 190: Hoare triple {26612#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {26612#false} is VALID [2018-11-14 18:50:49,319 INFO L273 TraceCheckUtils]: 191: Hoare triple {26612#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {26612#false} is VALID [2018-11-14 18:50:49,319 INFO L273 TraceCheckUtils]: 192: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,319 INFO L273 TraceCheckUtils]: 193: Hoare triple {26612#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {26612#false} is VALID [2018-11-14 18:50:49,319 INFO L273 TraceCheckUtils]: 194: Hoare triple {26612#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {26612#false} is VALID [2018-11-14 18:50:49,319 INFO L273 TraceCheckUtils]: 195: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,320 INFO L273 TraceCheckUtils]: 196: Hoare triple {26612#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {26612#false} is VALID [2018-11-14 18:50:49,320 INFO L273 TraceCheckUtils]: 197: Hoare triple {26612#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {26612#false} is VALID [2018-11-14 18:50:49,320 INFO L273 TraceCheckUtils]: 198: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,320 INFO L273 TraceCheckUtils]: 199: Hoare triple {26612#false} assume !(~i~2 < 19); {26612#false} is VALID [2018-11-14 18:50:49,320 INFO L273 TraceCheckUtils]: 200: Hoare triple {26612#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {26612#false} is VALID [2018-11-14 18:50:49,320 INFO L256 TraceCheckUtils]: 201: Hoare triple {26612#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {26611#true} is VALID [2018-11-14 18:50:49,320 INFO L273 TraceCheckUtils]: 202: Hoare triple {26611#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {26611#true} is VALID [2018-11-14 18:50:49,320 INFO L273 TraceCheckUtils]: 203: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,320 INFO L273 TraceCheckUtils]: 204: Hoare triple {26611#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26611#true} is VALID [2018-11-14 18:50:49,320 INFO L273 TraceCheckUtils]: 205: Hoare triple {26611#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26611#true} is VALID [2018-11-14 18:50:49,321 INFO L273 TraceCheckUtils]: 206: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,321 INFO L273 TraceCheckUtils]: 207: Hoare triple {26611#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26611#true} is VALID [2018-11-14 18:50:49,321 INFO L273 TraceCheckUtils]: 208: Hoare triple {26611#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26611#true} is VALID [2018-11-14 18:50:49,321 INFO L273 TraceCheckUtils]: 209: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,321 INFO L273 TraceCheckUtils]: 210: Hoare triple {26611#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26611#true} is VALID [2018-11-14 18:50:49,321 INFO L273 TraceCheckUtils]: 211: Hoare triple {26611#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26611#true} is VALID [2018-11-14 18:50:49,321 INFO L273 TraceCheckUtils]: 212: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,321 INFO L273 TraceCheckUtils]: 213: Hoare triple {26611#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26611#true} is VALID [2018-11-14 18:50:49,321 INFO L273 TraceCheckUtils]: 214: Hoare triple {26611#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26611#true} is VALID [2018-11-14 18:50:49,321 INFO L273 TraceCheckUtils]: 215: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,322 INFO L273 TraceCheckUtils]: 216: Hoare triple {26611#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26611#true} is VALID [2018-11-14 18:50:49,322 INFO L273 TraceCheckUtils]: 217: Hoare triple {26611#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26611#true} is VALID [2018-11-14 18:50:49,322 INFO L273 TraceCheckUtils]: 218: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,322 INFO L273 TraceCheckUtils]: 219: Hoare triple {26611#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26611#true} is VALID [2018-11-14 18:50:49,322 INFO L273 TraceCheckUtils]: 220: Hoare triple {26611#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26611#true} is VALID [2018-11-14 18:50:49,322 INFO L273 TraceCheckUtils]: 221: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,322 INFO L273 TraceCheckUtils]: 222: Hoare triple {26611#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26611#true} is VALID [2018-11-14 18:50:49,322 INFO L273 TraceCheckUtils]: 223: Hoare triple {26611#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26611#true} is VALID [2018-11-14 18:50:49,322 INFO L273 TraceCheckUtils]: 224: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,323 INFO L273 TraceCheckUtils]: 225: Hoare triple {26611#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26611#true} is VALID [2018-11-14 18:50:49,323 INFO L273 TraceCheckUtils]: 226: Hoare triple {26611#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26611#true} is VALID [2018-11-14 18:50:49,323 INFO L273 TraceCheckUtils]: 227: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,323 INFO L273 TraceCheckUtils]: 228: Hoare triple {26611#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26611#true} is VALID [2018-11-14 18:50:49,323 INFO L273 TraceCheckUtils]: 229: Hoare triple {26611#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26611#true} is VALID [2018-11-14 18:50:49,323 INFO L273 TraceCheckUtils]: 230: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,323 INFO L273 TraceCheckUtils]: 231: Hoare triple {26611#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26611#true} is VALID [2018-11-14 18:50:49,323 INFO L273 TraceCheckUtils]: 232: Hoare triple {26611#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26611#true} is VALID [2018-11-14 18:50:49,323 INFO L273 TraceCheckUtils]: 233: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,323 INFO L273 TraceCheckUtils]: 234: Hoare triple {26611#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26611#true} is VALID [2018-11-14 18:50:49,324 INFO L273 TraceCheckUtils]: 235: Hoare triple {26611#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26611#true} is VALID [2018-11-14 18:50:49,324 INFO L273 TraceCheckUtils]: 236: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,324 INFO L273 TraceCheckUtils]: 237: Hoare triple {26611#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26611#true} is VALID [2018-11-14 18:50:49,324 INFO L273 TraceCheckUtils]: 238: Hoare triple {26611#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26611#true} is VALID [2018-11-14 18:50:49,324 INFO L273 TraceCheckUtils]: 239: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,324 INFO L273 TraceCheckUtils]: 240: Hoare triple {26611#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26611#true} is VALID [2018-11-14 18:50:49,324 INFO L273 TraceCheckUtils]: 241: Hoare triple {26611#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26611#true} is VALID [2018-11-14 18:50:49,324 INFO L273 TraceCheckUtils]: 242: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,324 INFO L273 TraceCheckUtils]: 243: Hoare triple {26611#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26611#true} is VALID [2018-11-14 18:50:49,324 INFO L273 TraceCheckUtils]: 244: Hoare triple {26611#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26611#true} is VALID [2018-11-14 18:50:49,325 INFO L273 TraceCheckUtils]: 245: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,325 INFO L273 TraceCheckUtils]: 246: Hoare triple {26611#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26611#true} is VALID [2018-11-14 18:50:49,325 INFO L273 TraceCheckUtils]: 247: Hoare triple {26611#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26611#true} is VALID [2018-11-14 18:50:49,325 INFO L273 TraceCheckUtils]: 248: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,325 INFO L273 TraceCheckUtils]: 249: Hoare triple {26611#true} assume !(~i~0 < 20); {26611#true} is VALID [2018-11-14 18:50:49,325 INFO L273 TraceCheckUtils]: 250: Hoare triple {26611#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {26611#true} is VALID [2018-11-14 18:50:49,325 INFO L273 TraceCheckUtils]: 251: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,325 INFO L268 TraceCheckUtils]: 252: Hoare quadruple {26611#true} {26612#false} #77#return; {26612#false} is VALID [2018-11-14 18:50:49,325 INFO L273 TraceCheckUtils]: 253: Hoare triple {26612#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {26612#false} is VALID [2018-11-14 18:50:49,325 INFO L273 TraceCheckUtils]: 254: Hoare triple {26612#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {26612#false} is VALID [2018-11-14 18:50:49,326 INFO L273 TraceCheckUtils]: 255: Hoare triple {26612#false} assume !false; {26612#false} is VALID [2018-11-14 18:50:49,349 INFO L134 CoverageAnalysis]: Checked inductivity of 3968 backedges. 0 proven. 1825 refuted. 0 times theorem prover too weak. 2143 trivial. 0 not checked. [2018-11-14 18:50:49,350 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:50:49,350 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 30 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 30 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:50:49,360 INFO L103 rtionOrderModulation]: Keeping assertion order TERMS_WITH_SMALL_CONSTANTS_FIRST [2018-11-14 18:50:49,448 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2018-11-14 18:50:49,449 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 18:50:49,487 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:50:49,489 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:50:49,782 INFO L256 TraceCheckUtils]: 0: Hoare triple {26611#true} call ULTIMATE.init(); {26611#true} is VALID [2018-11-14 18:50:49,783 INFO L273 TraceCheckUtils]: 1: Hoare triple {26611#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {26611#true} is VALID [2018-11-14 18:50:49,783 INFO L273 TraceCheckUtils]: 2: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,783 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {26611#true} {26611#true} #69#return; {26611#true} is VALID [2018-11-14 18:50:49,783 INFO L256 TraceCheckUtils]: 4: Hoare triple {26611#true} call #t~ret12 := main(); {26611#true} is VALID [2018-11-14 18:50:49,783 INFO L273 TraceCheckUtils]: 5: Hoare triple {26611#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {26611#true} is VALID [2018-11-14 18:50:49,784 INFO L273 TraceCheckUtils]: 6: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,784 INFO L273 TraceCheckUtils]: 7: Hoare triple {26611#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26611#true} is VALID [2018-11-14 18:50:49,784 INFO L273 TraceCheckUtils]: 8: Hoare triple {26611#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26611#true} is VALID [2018-11-14 18:50:49,784 INFO L273 TraceCheckUtils]: 9: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,784 INFO L273 TraceCheckUtils]: 10: Hoare triple {26611#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26611#true} is VALID [2018-11-14 18:50:49,784 INFO L273 TraceCheckUtils]: 11: Hoare triple {26611#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26611#true} is VALID [2018-11-14 18:50:49,784 INFO L273 TraceCheckUtils]: 12: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,785 INFO L273 TraceCheckUtils]: 13: Hoare triple {26611#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26611#true} is VALID [2018-11-14 18:50:49,785 INFO L273 TraceCheckUtils]: 14: Hoare triple {26611#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26611#true} is VALID [2018-11-14 18:50:49,785 INFO L273 TraceCheckUtils]: 15: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,785 INFO L273 TraceCheckUtils]: 16: Hoare triple {26611#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26611#true} is VALID [2018-11-14 18:50:49,785 INFO L273 TraceCheckUtils]: 17: Hoare triple {26611#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26611#true} is VALID [2018-11-14 18:50:49,785 INFO L273 TraceCheckUtils]: 18: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,785 INFO L273 TraceCheckUtils]: 19: Hoare triple {26611#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26611#true} is VALID [2018-11-14 18:50:49,785 INFO L273 TraceCheckUtils]: 20: Hoare triple {26611#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26611#true} is VALID [2018-11-14 18:50:49,785 INFO L273 TraceCheckUtils]: 21: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,785 INFO L273 TraceCheckUtils]: 22: Hoare triple {26611#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26611#true} is VALID [2018-11-14 18:50:49,786 INFO L273 TraceCheckUtils]: 23: Hoare triple {26611#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26611#true} is VALID [2018-11-14 18:50:49,786 INFO L273 TraceCheckUtils]: 24: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,786 INFO L273 TraceCheckUtils]: 25: Hoare triple {26611#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26611#true} is VALID [2018-11-14 18:50:49,786 INFO L273 TraceCheckUtils]: 26: Hoare triple {26611#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26611#true} is VALID [2018-11-14 18:50:49,786 INFO L273 TraceCheckUtils]: 27: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,786 INFO L273 TraceCheckUtils]: 28: Hoare triple {26611#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26611#true} is VALID [2018-11-14 18:50:49,786 INFO L273 TraceCheckUtils]: 29: Hoare triple {26611#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26611#true} is VALID [2018-11-14 18:50:49,786 INFO L273 TraceCheckUtils]: 30: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,786 INFO L273 TraceCheckUtils]: 31: Hoare triple {26611#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26611#true} is VALID [2018-11-14 18:50:49,786 INFO L273 TraceCheckUtils]: 32: Hoare triple {26611#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26611#true} is VALID [2018-11-14 18:50:49,787 INFO L273 TraceCheckUtils]: 33: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,787 INFO L273 TraceCheckUtils]: 34: Hoare triple {26611#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26611#true} is VALID [2018-11-14 18:50:49,787 INFO L273 TraceCheckUtils]: 35: Hoare triple {26611#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26611#true} is VALID [2018-11-14 18:50:49,787 INFO L273 TraceCheckUtils]: 36: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,787 INFO L273 TraceCheckUtils]: 37: Hoare triple {26611#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26611#true} is VALID [2018-11-14 18:50:49,787 INFO L273 TraceCheckUtils]: 38: Hoare triple {26611#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26611#true} is VALID [2018-11-14 18:50:49,787 INFO L273 TraceCheckUtils]: 39: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,787 INFO L273 TraceCheckUtils]: 40: Hoare triple {26611#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26611#true} is VALID [2018-11-14 18:50:49,787 INFO L273 TraceCheckUtils]: 41: Hoare triple {26611#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26611#true} is VALID [2018-11-14 18:50:49,787 INFO L273 TraceCheckUtils]: 42: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,788 INFO L273 TraceCheckUtils]: 43: Hoare triple {26611#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26611#true} is VALID [2018-11-14 18:50:49,788 INFO L273 TraceCheckUtils]: 44: Hoare triple {26611#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26611#true} is VALID [2018-11-14 18:50:49,788 INFO L273 TraceCheckUtils]: 45: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,788 INFO L273 TraceCheckUtils]: 46: Hoare triple {26611#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26611#true} is VALID [2018-11-14 18:50:49,788 INFO L273 TraceCheckUtils]: 47: Hoare triple {26611#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26611#true} is VALID [2018-11-14 18:50:49,788 INFO L273 TraceCheckUtils]: 48: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,788 INFO L273 TraceCheckUtils]: 49: Hoare triple {26611#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26611#true} is VALID [2018-11-14 18:50:49,788 INFO L273 TraceCheckUtils]: 50: Hoare triple {26611#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26611#true} is VALID [2018-11-14 18:50:49,788 INFO L273 TraceCheckUtils]: 51: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,788 INFO L273 TraceCheckUtils]: 52: Hoare triple {26611#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26611#true} is VALID [2018-11-14 18:50:49,789 INFO L273 TraceCheckUtils]: 53: Hoare triple {26611#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26611#true} is VALID [2018-11-14 18:50:49,789 INFO L273 TraceCheckUtils]: 54: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,789 INFO L273 TraceCheckUtils]: 55: Hoare triple {26611#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26611#true} is VALID [2018-11-14 18:50:49,789 INFO L273 TraceCheckUtils]: 56: Hoare triple {26611#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26611#true} is VALID [2018-11-14 18:50:49,789 INFO L273 TraceCheckUtils]: 57: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,789 INFO L273 TraceCheckUtils]: 58: Hoare triple {26611#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26611#true} is VALID [2018-11-14 18:50:49,789 INFO L273 TraceCheckUtils]: 59: Hoare triple {26611#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26611#true} is VALID [2018-11-14 18:50:49,789 INFO L273 TraceCheckUtils]: 60: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,789 INFO L273 TraceCheckUtils]: 61: Hoare triple {26611#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26611#true} is VALID [2018-11-14 18:50:49,790 INFO L273 TraceCheckUtils]: 62: Hoare triple {26611#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26611#true} is VALID [2018-11-14 18:50:49,790 INFO L273 TraceCheckUtils]: 63: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,790 INFO L273 TraceCheckUtils]: 64: Hoare triple {26611#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26611#true} is VALID [2018-11-14 18:50:49,790 INFO L273 TraceCheckUtils]: 65: Hoare triple {26611#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26611#true} is VALID [2018-11-14 18:50:49,790 INFO L273 TraceCheckUtils]: 66: Hoare triple {26611#true} assume true; {26611#true} is VALID [2018-11-14 18:50:49,790 INFO L273 TraceCheckUtils]: 67: Hoare triple {26611#true} assume !(~i~1 < 20); {26611#true} is VALID [2018-11-14 18:50:49,790 INFO L256 TraceCheckUtils]: 68: Hoare triple {26611#true} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {26611#true} is VALID [2018-11-14 18:50:49,791 INFO L273 TraceCheckUtils]: 69: Hoare triple {26611#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {26839#(<= avg_~i~0 0)} is VALID [2018-11-14 18:50:49,791 INFO L273 TraceCheckUtils]: 70: Hoare triple {26839#(<= avg_~i~0 0)} assume true; {26839#(<= avg_~i~0 0)} is VALID [2018-11-14 18:50:49,791 INFO L273 TraceCheckUtils]: 71: Hoare triple {26839#(<= avg_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26839#(<= avg_~i~0 0)} is VALID [2018-11-14 18:50:49,792 INFO L273 TraceCheckUtils]: 72: Hoare triple {26839#(<= avg_~i~0 0)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26614#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:49,792 INFO L273 TraceCheckUtils]: 73: Hoare triple {26614#(<= avg_~i~0 1)} assume true; {26614#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:49,792 INFO L273 TraceCheckUtils]: 74: Hoare triple {26614#(<= avg_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26614#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:49,793 INFO L273 TraceCheckUtils]: 75: Hoare triple {26614#(<= avg_~i~0 1)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26615#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:49,793 INFO L273 TraceCheckUtils]: 76: Hoare triple {26615#(<= avg_~i~0 2)} assume true; {26615#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:49,794 INFO L273 TraceCheckUtils]: 77: Hoare triple {26615#(<= avg_~i~0 2)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26615#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:49,795 INFO L273 TraceCheckUtils]: 78: Hoare triple {26615#(<= avg_~i~0 2)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26616#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:49,795 INFO L273 TraceCheckUtils]: 79: Hoare triple {26616#(<= avg_~i~0 3)} assume true; {26616#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:49,796 INFO L273 TraceCheckUtils]: 80: Hoare triple {26616#(<= avg_~i~0 3)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26616#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:49,796 INFO L273 TraceCheckUtils]: 81: Hoare triple {26616#(<= avg_~i~0 3)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26617#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:49,797 INFO L273 TraceCheckUtils]: 82: Hoare triple {26617#(<= avg_~i~0 4)} assume true; {26617#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:49,797 INFO L273 TraceCheckUtils]: 83: Hoare triple {26617#(<= avg_~i~0 4)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26617#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:49,798 INFO L273 TraceCheckUtils]: 84: Hoare triple {26617#(<= avg_~i~0 4)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26618#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:49,799 INFO L273 TraceCheckUtils]: 85: Hoare triple {26618#(<= avg_~i~0 5)} assume true; {26618#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:49,799 INFO L273 TraceCheckUtils]: 86: Hoare triple {26618#(<= avg_~i~0 5)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26618#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:49,800 INFO L273 TraceCheckUtils]: 87: Hoare triple {26618#(<= avg_~i~0 5)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26619#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:49,800 INFO L273 TraceCheckUtils]: 88: Hoare triple {26619#(<= avg_~i~0 6)} assume true; {26619#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:49,801 INFO L273 TraceCheckUtils]: 89: Hoare triple {26619#(<= avg_~i~0 6)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26619#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:49,802 INFO L273 TraceCheckUtils]: 90: Hoare triple {26619#(<= avg_~i~0 6)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26620#(<= avg_~i~0 7)} is VALID [2018-11-14 18:50:49,802 INFO L273 TraceCheckUtils]: 91: Hoare triple {26620#(<= avg_~i~0 7)} assume true; {26620#(<= avg_~i~0 7)} is VALID [2018-11-14 18:50:49,803 INFO L273 TraceCheckUtils]: 92: Hoare triple {26620#(<= avg_~i~0 7)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26620#(<= avg_~i~0 7)} is VALID [2018-11-14 18:50:49,803 INFO L273 TraceCheckUtils]: 93: Hoare triple {26620#(<= avg_~i~0 7)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26621#(<= avg_~i~0 8)} is VALID [2018-11-14 18:50:49,804 INFO L273 TraceCheckUtils]: 94: Hoare triple {26621#(<= avg_~i~0 8)} assume true; {26621#(<= avg_~i~0 8)} is VALID [2018-11-14 18:50:49,804 INFO L273 TraceCheckUtils]: 95: Hoare triple {26621#(<= avg_~i~0 8)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26621#(<= avg_~i~0 8)} is VALID [2018-11-14 18:50:49,805 INFO L273 TraceCheckUtils]: 96: Hoare triple {26621#(<= avg_~i~0 8)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26622#(<= avg_~i~0 9)} is VALID [2018-11-14 18:50:49,806 INFO L273 TraceCheckUtils]: 97: Hoare triple {26622#(<= avg_~i~0 9)} assume true; {26622#(<= avg_~i~0 9)} is VALID [2018-11-14 18:50:49,806 INFO L273 TraceCheckUtils]: 98: Hoare triple {26622#(<= avg_~i~0 9)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26622#(<= avg_~i~0 9)} is VALID [2018-11-14 18:50:49,807 INFO L273 TraceCheckUtils]: 99: Hoare triple {26622#(<= avg_~i~0 9)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26623#(<= avg_~i~0 10)} is VALID [2018-11-14 18:50:49,808 INFO L273 TraceCheckUtils]: 100: Hoare triple {26623#(<= avg_~i~0 10)} assume true; {26623#(<= avg_~i~0 10)} is VALID [2018-11-14 18:50:49,808 INFO L273 TraceCheckUtils]: 101: Hoare triple {26623#(<= avg_~i~0 10)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26623#(<= avg_~i~0 10)} is VALID [2018-11-14 18:50:49,809 INFO L273 TraceCheckUtils]: 102: Hoare triple {26623#(<= avg_~i~0 10)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26624#(<= avg_~i~0 11)} is VALID [2018-11-14 18:50:49,809 INFO L273 TraceCheckUtils]: 103: Hoare triple {26624#(<= avg_~i~0 11)} assume true; {26624#(<= avg_~i~0 11)} is VALID [2018-11-14 18:50:49,810 INFO L273 TraceCheckUtils]: 104: Hoare triple {26624#(<= avg_~i~0 11)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26624#(<= avg_~i~0 11)} is VALID [2018-11-14 18:50:49,810 INFO L273 TraceCheckUtils]: 105: Hoare triple {26624#(<= avg_~i~0 11)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26625#(<= avg_~i~0 12)} is VALID [2018-11-14 18:50:49,811 INFO L273 TraceCheckUtils]: 106: Hoare triple {26625#(<= avg_~i~0 12)} assume true; {26625#(<= avg_~i~0 12)} is VALID [2018-11-14 18:50:49,812 INFO L273 TraceCheckUtils]: 107: Hoare triple {26625#(<= avg_~i~0 12)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26625#(<= avg_~i~0 12)} is VALID [2018-11-14 18:50:49,812 INFO L273 TraceCheckUtils]: 108: Hoare triple {26625#(<= avg_~i~0 12)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26626#(<= avg_~i~0 13)} is VALID [2018-11-14 18:50:49,813 INFO L273 TraceCheckUtils]: 109: Hoare triple {26626#(<= avg_~i~0 13)} assume true; {26626#(<= avg_~i~0 13)} is VALID [2018-11-14 18:50:49,813 INFO L273 TraceCheckUtils]: 110: Hoare triple {26626#(<= avg_~i~0 13)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26626#(<= avg_~i~0 13)} is VALID [2018-11-14 18:50:49,814 INFO L273 TraceCheckUtils]: 111: Hoare triple {26626#(<= avg_~i~0 13)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26627#(<= avg_~i~0 14)} is VALID [2018-11-14 18:50:49,815 INFO L273 TraceCheckUtils]: 112: Hoare triple {26627#(<= avg_~i~0 14)} assume true; {26627#(<= avg_~i~0 14)} is VALID [2018-11-14 18:50:49,815 INFO L273 TraceCheckUtils]: 113: Hoare triple {26627#(<= avg_~i~0 14)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26627#(<= avg_~i~0 14)} is VALID [2018-11-14 18:50:49,816 INFO L273 TraceCheckUtils]: 114: Hoare triple {26627#(<= avg_~i~0 14)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26628#(<= avg_~i~0 15)} is VALID [2018-11-14 18:50:49,816 INFO L273 TraceCheckUtils]: 115: Hoare triple {26628#(<= avg_~i~0 15)} assume true; {26628#(<= avg_~i~0 15)} is VALID [2018-11-14 18:50:49,817 INFO L273 TraceCheckUtils]: 116: Hoare triple {26628#(<= avg_~i~0 15)} assume !(~i~0 < 20); {26612#false} is VALID [2018-11-14 18:50:49,817 INFO L273 TraceCheckUtils]: 117: Hoare triple {26612#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {26612#false} is VALID [2018-11-14 18:50:49,817 INFO L273 TraceCheckUtils]: 118: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,817 INFO L268 TraceCheckUtils]: 119: Hoare quadruple {26612#false} {26611#true} #73#return; {26612#false} is VALID [2018-11-14 18:50:49,818 INFO L273 TraceCheckUtils]: 120: Hoare triple {26612#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); {26612#false} is VALID [2018-11-14 18:50:49,818 INFO L256 TraceCheckUtils]: 121: Hoare triple {26612#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {26612#false} is VALID [2018-11-14 18:50:49,818 INFO L273 TraceCheckUtils]: 122: Hoare triple {26612#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {26612#false} is VALID [2018-11-14 18:50:49,818 INFO L273 TraceCheckUtils]: 123: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,818 INFO L273 TraceCheckUtils]: 124: Hoare triple {26612#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26612#false} is VALID [2018-11-14 18:50:49,819 INFO L273 TraceCheckUtils]: 125: Hoare triple {26612#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26612#false} is VALID [2018-11-14 18:50:49,819 INFO L273 TraceCheckUtils]: 126: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,819 INFO L273 TraceCheckUtils]: 127: Hoare triple {26612#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26612#false} is VALID [2018-11-14 18:50:49,819 INFO L273 TraceCheckUtils]: 128: Hoare triple {26612#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26612#false} is VALID [2018-11-14 18:50:49,819 INFO L273 TraceCheckUtils]: 129: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,819 INFO L273 TraceCheckUtils]: 130: Hoare triple {26612#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26612#false} is VALID [2018-11-14 18:50:49,819 INFO L273 TraceCheckUtils]: 131: Hoare triple {26612#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26612#false} is VALID [2018-11-14 18:50:49,820 INFO L273 TraceCheckUtils]: 132: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,820 INFO L273 TraceCheckUtils]: 133: Hoare triple {26612#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26612#false} is VALID [2018-11-14 18:50:49,820 INFO L273 TraceCheckUtils]: 134: Hoare triple {26612#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26612#false} is VALID [2018-11-14 18:50:49,820 INFO L273 TraceCheckUtils]: 135: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,820 INFO L273 TraceCheckUtils]: 136: Hoare triple {26612#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26612#false} is VALID [2018-11-14 18:50:49,820 INFO L273 TraceCheckUtils]: 137: Hoare triple {26612#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26612#false} is VALID [2018-11-14 18:50:49,820 INFO L273 TraceCheckUtils]: 138: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,820 INFO L273 TraceCheckUtils]: 139: Hoare triple {26612#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26612#false} is VALID [2018-11-14 18:50:49,820 INFO L273 TraceCheckUtils]: 140: Hoare triple {26612#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26612#false} is VALID [2018-11-14 18:50:49,820 INFO L273 TraceCheckUtils]: 141: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,821 INFO L273 TraceCheckUtils]: 142: Hoare triple {26612#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26612#false} is VALID [2018-11-14 18:50:49,821 INFO L273 TraceCheckUtils]: 143: Hoare triple {26612#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26612#false} is VALID [2018-11-14 18:50:49,821 INFO L273 TraceCheckUtils]: 144: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,821 INFO L273 TraceCheckUtils]: 145: Hoare triple {26612#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26612#false} is VALID [2018-11-14 18:50:49,821 INFO L273 TraceCheckUtils]: 146: Hoare triple {26612#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26612#false} is VALID [2018-11-14 18:50:49,821 INFO L273 TraceCheckUtils]: 147: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,821 INFO L273 TraceCheckUtils]: 148: Hoare triple {26612#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26612#false} is VALID [2018-11-14 18:50:49,821 INFO L273 TraceCheckUtils]: 149: Hoare triple {26612#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26612#false} is VALID [2018-11-14 18:50:49,821 INFO L273 TraceCheckUtils]: 150: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,821 INFO L273 TraceCheckUtils]: 151: Hoare triple {26612#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26612#false} is VALID [2018-11-14 18:50:49,822 INFO L273 TraceCheckUtils]: 152: Hoare triple {26612#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26612#false} is VALID [2018-11-14 18:50:49,822 INFO L273 TraceCheckUtils]: 153: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,822 INFO L273 TraceCheckUtils]: 154: Hoare triple {26612#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26612#false} is VALID [2018-11-14 18:50:49,822 INFO L273 TraceCheckUtils]: 155: Hoare triple {26612#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26612#false} is VALID [2018-11-14 18:50:49,822 INFO L273 TraceCheckUtils]: 156: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,822 INFO L273 TraceCheckUtils]: 157: Hoare triple {26612#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26612#false} is VALID [2018-11-14 18:50:49,822 INFO L273 TraceCheckUtils]: 158: Hoare triple {26612#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26612#false} is VALID [2018-11-14 18:50:49,822 INFO L273 TraceCheckUtils]: 159: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,822 INFO L273 TraceCheckUtils]: 160: Hoare triple {26612#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26612#false} is VALID [2018-11-14 18:50:49,823 INFO L273 TraceCheckUtils]: 161: Hoare triple {26612#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26612#false} is VALID [2018-11-14 18:50:49,823 INFO L273 TraceCheckUtils]: 162: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,823 INFO L273 TraceCheckUtils]: 163: Hoare triple {26612#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26612#false} is VALID [2018-11-14 18:50:49,823 INFO L273 TraceCheckUtils]: 164: Hoare triple {26612#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26612#false} is VALID [2018-11-14 18:50:49,823 INFO L273 TraceCheckUtils]: 165: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,823 INFO L273 TraceCheckUtils]: 166: Hoare triple {26612#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26612#false} is VALID [2018-11-14 18:50:49,823 INFO L273 TraceCheckUtils]: 167: Hoare triple {26612#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26612#false} is VALID [2018-11-14 18:50:49,823 INFO L273 TraceCheckUtils]: 168: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,823 INFO L273 TraceCheckUtils]: 169: Hoare triple {26612#false} assume !(~i~0 < 20); {26612#false} is VALID [2018-11-14 18:50:49,823 INFO L273 TraceCheckUtils]: 170: Hoare triple {26612#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {26612#false} is VALID [2018-11-14 18:50:49,824 INFO L273 TraceCheckUtils]: 171: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,824 INFO L268 TraceCheckUtils]: 172: Hoare quadruple {26612#false} {26612#false} #75#return; {26612#false} is VALID [2018-11-14 18:50:49,824 INFO L273 TraceCheckUtils]: 173: Hoare triple {26612#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; {26612#false} is VALID [2018-11-14 18:50:49,824 INFO L273 TraceCheckUtils]: 174: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,824 INFO L273 TraceCheckUtils]: 175: Hoare triple {26612#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {26612#false} is VALID [2018-11-14 18:50:49,824 INFO L273 TraceCheckUtils]: 176: Hoare triple {26612#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {26612#false} is VALID [2018-11-14 18:50:49,824 INFO L273 TraceCheckUtils]: 177: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,824 INFO L273 TraceCheckUtils]: 178: Hoare triple {26612#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {26612#false} is VALID [2018-11-14 18:50:49,824 INFO L273 TraceCheckUtils]: 179: Hoare triple {26612#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {26612#false} is VALID [2018-11-14 18:50:49,825 INFO L273 TraceCheckUtils]: 180: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,825 INFO L273 TraceCheckUtils]: 181: Hoare triple {26612#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {26612#false} is VALID [2018-11-14 18:50:49,825 INFO L273 TraceCheckUtils]: 182: Hoare triple {26612#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {26612#false} is VALID [2018-11-14 18:50:49,825 INFO L273 TraceCheckUtils]: 183: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,825 INFO L273 TraceCheckUtils]: 184: Hoare triple {26612#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {26612#false} is VALID [2018-11-14 18:50:49,825 INFO L273 TraceCheckUtils]: 185: Hoare triple {26612#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {26612#false} is VALID [2018-11-14 18:50:49,825 INFO L273 TraceCheckUtils]: 186: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,826 INFO L273 TraceCheckUtils]: 187: Hoare triple {26612#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {26612#false} is VALID [2018-11-14 18:50:49,826 INFO L273 TraceCheckUtils]: 188: Hoare triple {26612#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {26612#false} is VALID [2018-11-14 18:50:49,826 INFO L273 TraceCheckUtils]: 189: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,826 INFO L273 TraceCheckUtils]: 190: Hoare triple {26612#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {26612#false} is VALID [2018-11-14 18:50:49,826 INFO L273 TraceCheckUtils]: 191: Hoare triple {26612#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {26612#false} is VALID [2018-11-14 18:50:49,826 INFO L273 TraceCheckUtils]: 192: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,827 INFO L273 TraceCheckUtils]: 193: Hoare triple {26612#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {26612#false} is VALID [2018-11-14 18:50:49,827 INFO L273 TraceCheckUtils]: 194: Hoare triple {26612#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {26612#false} is VALID [2018-11-14 18:50:49,827 INFO L273 TraceCheckUtils]: 195: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,827 INFO L273 TraceCheckUtils]: 196: Hoare triple {26612#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {26612#false} is VALID [2018-11-14 18:50:49,827 INFO L273 TraceCheckUtils]: 197: Hoare triple {26612#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {26612#false} is VALID [2018-11-14 18:50:49,828 INFO L273 TraceCheckUtils]: 198: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,828 INFO L273 TraceCheckUtils]: 199: Hoare triple {26612#false} assume !(~i~2 < 19); {26612#false} is VALID [2018-11-14 18:50:49,828 INFO L273 TraceCheckUtils]: 200: Hoare triple {26612#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {26612#false} is VALID [2018-11-14 18:50:49,828 INFO L256 TraceCheckUtils]: 201: Hoare triple {26612#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {26612#false} is VALID [2018-11-14 18:50:49,829 INFO L273 TraceCheckUtils]: 202: Hoare triple {26612#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {26612#false} is VALID [2018-11-14 18:50:49,829 INFO L273 TraceCheckUtils]: 203: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,829 INFO L273 TraceCheckUtils]: 204: Hoare triple {26612#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26612#false} is VALID [2018-11-14 18:50:49,829 INFO L273 TraceCheckUtils]: 205: Hoare triple {26612#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26612#false} is VALID [2018-11-14 18:50:49,829 INFO L273 TraceCheckUtils]: 206: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,829 INFO L273 TraceCheckUtils]: 207: Hoare triple {26612#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26612#false} is VALID [2018-11-14 18:50:49,829 INFO L273 TraceCheckUtils]: 208: Hoare triple {26612#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26612#false} is VALID [2018-11-14 18:50:49,829 INFO L273 TraceCheckUtils]: 209: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,830 INFO L273 TraceCheckUtils]: 210: Hoare triple {26612#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26612#false} is VALID [2018-11-14 18:50:49,830 INFO L273 TraceCheckUtils]: 211: Hoare triple {26612#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26612#false} is VALID [2018-11-14 18:50:49,830 INFO L273 TraceCheckUtils]: 212: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,830 INFO L273 TraceCheckUtils]: 213: Hoare triple {26612#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26612#false} is VALID [2018-11-14 18:50:49,830 INFO L273 TraceCheckUtils]: 214: Hoare triple {26612#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26612#false} is VALID [2018-11-14 18:50:49,830 INFO L273 TraceCheckUtils]: 215: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,830 INFO L273 TraceCheckUtils]: 216: Hoare triple {26612#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26612#false} is VALID [2018-11-14 18:50:49,830 INFO L273 TraceCheckUtils]: 217: Hoare triple {26612#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26612#false} is VALID [2018-11-14 18:50:49,830 INFO L273 TraceCheckUtils]: 218: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,831 INFO L273 TraceCheckUtils]: 219: Hoare triple {26612#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26612#false} is VALID [2018-11-14 18:50:49,831 INFO L273 TraceCheckUtils]: 220: Hoare triple {26612#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26612#false} is VALID [2018-11-14 18:50:49,831 INFO L273 TraceCheckUtils]: 221: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,831 INFO L273 TraceCheckUtils]: 222: Hoare triple {26612#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26612#false} is VALID [2018-11-14 18:50:49,831 INFO L273 TraceCheckUtils]: 223: Hoare triple {26612#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26612#false} is VALID [2018-11-14 18:50:49,831 INFO L273 TraceCheckUtils]: 224: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,831 INFO L273 TraceCheckUtils]: 225: Hoare triple {26612#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26612#false} is VALID [2018-11-14 18:50:49,831 INFO L273 TraceCheckUtils]: 226: Hoare triple {26612#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26612#false} is VALID [2018-11-14 18:50:49,831 INFO L273 TraceCheckUtils]: 227: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,832 INFO L273 TraceCheckUtils]: 228: Hoare triple {26612#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26612#false} is VALID [2018-11-14 18:50:49,832 INFO L273 TraceCheckUtils]: 229: Hoare triple {26612#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26612#false} is VALID [2018-11-14 18:50:49,832 INFO L273 TraceCheckUtils]: 230: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,832 INFO L273 TraceCheckUtils]: 231: Hoare triple {26612#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26612#false} is VALID [2018-11-14 18:50:49,832 INFO L273 TraceCheckUtils]: 232: Hoare triple {26612#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26612#false} is VALID [2018-11-14 18:50:49,832 INFO L273 TraceCheckUtils]: 233: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,832 INFO L273 TraceCheckUtils]: 234: Hoare triple {26612#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26612#false} is VALID [2018-11-14 18:50:49,832 INFO L273 TraceCheckUtils]: 235: Hoare triple {26612#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26612#false} is VALID [2018-11-14 18:50:49,833 INFO L273 TraceCheckUtils]: 236: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,833 INFO L273 TraceCheckUtils]: 237: Hoare triple {26612#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26612#false} is VALID [2018-11-14 18:50:49,833 INFO L273 TraceCheckUtils]: 238: Hoare triple {26612#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26612#false} is VALID [2018-11-14 18:50:49,833 INFO L273 TraceCheckUtils]: 239: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,833 INFO L273 TraceCheckUtils]: 240: Hoare triple {26612#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26612#false} is VALID [2018-11-14 18:50:49,833 INFO L273 TraceCheckUtils]: 241: Hoare triple {26612#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26612#false} is VALID [2018-11-14 18:50:49,833 INFO L273 TraceCheckUtils]: 242: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,833 INFO L273 TraceCheckUtils]: 243: Hoare triple {26612#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26612#false} is VALID [2018-11-14 18:50:49,834 INFO L273 TraceCheckUtils]: 244: Hoare triple {26612#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26612#false} is VALID [2018-11-14 18:50:49,834 INFO L273 TraceCheckUtils]: 245: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,834 INFO L273 TraceCheckUtils]: 246: Hoare triple {26612#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {26612#false} is VALID [2018-11-14 18:50:49,834 INFO L273 TraceCheckUtils]: 247: Hoare triple {26612#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26612#false} is VALID [2018-11-14 18:50:49,834 INFO L273 TraceCheckUtils]: 248: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,834 INFO L273 TraceCheckUtils]: 249: Hoare triple {26612#false} assume !(~i~0 < 20); {26612#false} is VALID [2018-11-14 18:50:49,834 INFO L273 TraceCheckUtils]: 250: Hoare triple {26612#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {26612#false} is VALID [2018-11-14 18:50:49,834 INFO L273 TraceCheckUtils]: 251: Hoare triple {26612#false} assume true; {26612#false} is VALID [2018-11-14 18:50:49,834 INFO L268 TraceCheckUtils]: 252: Hoare quadruple {26612#false} {26612#false} #77#return; {26612#false} is VALID [2018-11-14 18:50:49,835 INFO L273 TraceCheckUtils]: 253: Hoare triple {26612#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {26612#false} is VALID [2018-11-14 18:50:49,835 INFO L273 TraceCheckUtils]: 254: Hoare triple {26612#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {26612#false} is VALID [2018-11-14 18:50:49,835 INFO L273 TraceCheckUtils]: 255: Hoare triple {26612#false} assume !false; {26612#false} is VALID [2018-11-14 18:50:49,860 INFO L134 CoverageAnalysis]: Checked inductivity of 3968 backedges. 1476 proven. 345 refuted. 0 times theorem prover too weak. 2147 trivial. 0 not checked. [2018-11-14 18:50:49,881 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:50:49,882 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [18, 18] total 19 [2018-11-14 18:50:49,882 INFO L78 Accepts]: Start accepts. Automaton has 19 states. Word has length 256 [2018-11-14 18:50:49,883 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:50:49,883 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 19 states. [2018-11-14 18:50:49,989 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 96 edges. 96 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:50:49,989 INFO L459 AbstractCegarLoop]: Interpolant automaton has 19 states [2018-11-14 18:50:49,990 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2018-11-14 18:50:49,990 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=171, Invalid=171, Unknown=0, NotChecked=0, Total=342 [2018-11-14 18:50:49,990 INFO L87 Difference]: Start difference. First operand 155 states and 159 transitions. Second operand 19 states. [2018-11-14 18:50:50,410 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:50,411 INFO L93 Difference]: Finished difference Result 245 states and 255 transitions. [2018-11-14 18:50:50,411 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2018-11-14 18:50:50,411 INFO L78 Accepts]: Start accepts. Automaton has 19 states. Word has length 256 [2018-11-14 18:50:50,411 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:50:50,411 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 19 states. [2018-11-14 18:50:50,412 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 106 transitions. [2018-11-14 18:50:50,412 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 19 states. [2018-11-14 18:50:50,413 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 106 transitions. [2018-11-14 18:50:50,413 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 18 states and 106 transitions. [2018-11-14 18:50:50,520 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 106 edges. 106 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:50:50,523 INFO L225 Difference]: With dead ends: 245 [2018-11-14 18:50:50,524 INFO L226 Difference]: Without dead ends: 159 [2018-11-14 18:50:50,524 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 273 GetRequests, 256 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 28 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=171, Invalid=171, Unknown=0, NotChecked=0, Total=342 [2018-11-14 18:50:50,524 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 159 states. [2018-11-14 18:50:51,012 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 159 to 158. [2018-11-14 18:50:51,013 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:50:51,013 INFO L82 GeneralOperation]: Start isEquivalent. First operand 159 states. Second operand 158 states. [2018-11-14 18:50:51,013 INFO L74 IsIncluded]: Start isIncluded. First operand 159 states. Second operand 158 states. [2018-11-14 18:50:51,014 INFO L87 Difference]: Start difference. First operand 159 states. Second operand 158 states. [2018-11-14 18:50:51,016 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:51,016 INFO L93 Difference]: Finished difference Result 159 states and 163 transitions. [2018-11-14 18:50:51,017 INFO L276 IsEmpty]: Start isEmpty. Operand 159 states and 163 transitions. [2018-11-14 18:50:51,017 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:50:51,017 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:50:51,017 INFO L74 IsIncluded]: Start isIncluded. First operand 158 states. Second operand 159 states. [2018-11-14 18:50:51,017 INFO L87 Difference]: Start difference. First operand 158 states. Second operand 159 states. [2018-11-14 18:50:51,020 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:51,020 INFO L93 Difference]: Finished difference Result 159 states and 163 transitions. [2018-11-14 18:50:51,020 INFO L276 IsEmpty]: Start isEmpty. Operand 159 states and 163 transitions. [2018-11-14 18:50:51,020 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:50:51,021 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:50:51,021 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:50:51,021 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:50:51,021 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 158 states. [2018-11-14 18:50:51,023 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 158 states to 158 states and 162 transitions. [2018-11-14 18:50:51,024 INFO L78 Accepts]: Start accepts. Automaton has 158 states and 162 transitions. Word has length 256 [2018-11-14 18:50:51,024 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:50:51,024 INFO L480 AbstractCegarLoop]: Abstraction has 158 states and 162 transitions. [2018-11-14 18:50:51,024 INFO L481 AbstractCegarLoop]: Interpolant automaton has 19 states. [2018-11-14 18:50:51,024 INFO L276 IsEmpty]: Start isEmpty. Operand 158 states and 162 transitions. [2018-11-14 18:50:51,025 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 266 [2018-11-14 18:50:51,026 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:50:51,026 INFO L375 BasicCegarLoop]: trace histogram [51, 48, 48, 21, 20, 20, 9, 8, 8, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:50:51,026 INFO L423 AbstractCegarLoop]: === Iteration 33 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:50:51,026 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:50:51,026 INFO L82 PathProgramCache]: Analyzing trace with hash -438737453, now seen corresponding path program 29 times [2018-11-14 18:50:51,027 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:50:51,027 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:50:51,027 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:50:51,028 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 18:50:51,028 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:50:51,092 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:50:52,919 INFO L256 TraceCheckUtils]: 0: Hoare triple {28256#true} call ULTIMATE.init(); {28256#true} is VALID [2018-11-14 18:50:52,919 INFO L273 TraceCheckUtils]: 1: Hoare triple {28256#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {28256#true} is VALID [2018-11-14 18:50:52,919 INFO L273 TraceCheckUtils]: 2: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,919 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {28256#true} {28256#true} #69#return; {28256#true} is VALID [2018-11-14 18:50:52,920 INFO L256 TraceCheckUtils]: 4: Hoare triple {28256#true} call #t~ret12 := main(); {28256#true} is VALID [2018-11-14 18:50:52,920 INFO L273 TraceCheckUtils]: 5: Hoare triple {28256#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {28256#true} is VALID [2018-11-14 18:50:52,920 INFO L273 TraceCheckUtils]: 6: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,920 INFO L273 TraceCheckUtils]: 7: Hoare triple {28256#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {28256#true} is VALID [2018-11-14 18:50:52,920 INFO L273 TraceCheckUtils]: 8: Hoare triple {28256#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {28256#true} is VALID [2018-11-14 18:50:52,920 INFO L273 TraceCheckUtils]: 9: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,920 INFO L273 TraceCheckUtils]: 10: Hoare triple {28256#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {28256#true} is VALID [2018-11-14 18:50:52,920 INFO L273 TraceCheckUtils]: 11: Hoare triple {28256#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {28256#true} is VALID [2018-11-14 18:50:52,921 INFO L273 TraceCheckUtils]: 12: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,921 INFO L273 TraceCheckUtils]: 13: Hoare triple {28256#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {28256#true} is VALID [2018-11-14 18:50:52,921 INFO L273 TraceCheckUtils]: 14: Hoare triple {28256#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {28256#true} is VALID [2018-11-14 18:50:52,921 INFO L273 TraceCheckUtils]: 15: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,921 INFO L273 TraceCheckUtils]: 16: Hoare triple {28256#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {28256#true} is VALID [2018-11-14 18:50:52,921 INFO L273 TraceCheckUtils]: 17: Hoare triple {28256#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {28256#true} is VALID [2018-11-14 18:50:52,921 INFO L273 TraceCheckUtils]: 18: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,921 INFO L273 TraceCheckUtils]: 19: Hoare triple {28256#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {28256#true} is VALID [2018-11-14 18:50:52,921 INFO L273 TraceCheckUtils]: 20: Hoare triple {28256#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {28256#true} is VALID [2018-11-14 18:50:52,921 INFO L273 TraceCheckUtils]: 21: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,922 INFO L273 TraceCheckUtils]: 22: Hoare triple {28256#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {28256#true} is VALID [2018-11-14 18:50:52,922 INFO L273 TraceCheckUtils]: 23: Hoare triple {28256#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {28256#true} is VALID [2018-11-14 18:50:52,922 INFO L273 TraceCheckUtils]: 24: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,922 INFO L273 TraceCheckUtils]: 25: Hoare triple {28256#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {28256#true} is VALID [2018-11-14 18:50:52,922 INFO L273 TraceCheckUtils]: 26: Hoare triple {28256#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {28256#true} is VALID [2018-11-14 18:50:52,922 INFO L273 TraceCheckUtils]: 27: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,922 INFO L273 TraceCheckUtils]: 28: Hoare triple {28256#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {28256#true} is VALID [2018-11-14 18:50:52,922 INFO L273 TraceCheckUtils]: 29: Hoare triple {28256#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {28256#true} is VALID [2018-11-14 18:50:52,922 INFO L273 TraceCheckUtils]: 30: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,922 INFO L273 TraceCheckUtils]: 31: Hoare triple {28256#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {28256#true} is VALID [2018-11-14 18:50:52,923 INFO L273 TraceCheckUtils]: 32: Hoare triple {28256#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {28256#true} is VALID [2018-11-14 18:50:52,923 INFO L273 TraceCheckUtils]: 33: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,923 INFO L273 TraceCheckUtils]: 34: Hoare triple {28256#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {28256#true} is VALID [2018-11-14 18:50:52,923 INFO L273 TraceCheckUtils]: 35: Hoare triple {28256#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {28256#true} is VALID [2018-11-14 18:50:52,923 INFO L273 TraceCheckUtils]: 36: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,923 INFO L273 TraceCheckUtils]: 37: Hoare triple {28256#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {28256#true} is VALID [2018-11-14 18:50:52,923 INFO L273 TraceCheckUtils]: 38: Hoare triple {28256#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {28256#true} is VALID [2018-11-14 18:50:52,923 INFO L273 TraceCheckUtils]: 39: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,923 INFO L273 TraceCheckUtils]: 40: Hoare triple {28256#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {28256#true} is VALID [2018-11-14 18:50:52,924 INFO L273 TraceCheckUtils]: 41: Hoare triple {28256#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {28256#true} is VALID [2018-11-14 18:50:52,924 INFO L273 TraceCheckUtils]: 42: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,924 INFO L273 TraceCheckUtils]: 43: Hoare triple {28256#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {28256#true} is VALID [2018-11-14 18:50:52,924 INFO L273 TraceCheckUtils]: 44: Hoare triple {28256#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {28256#true} is VALID [2018-11-14 18:50:52,924 INFO L273 TraceCheckUtils]: 45: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,924 INFO L273 TraceCheckUtils]: 46: Hoare triple {28256#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {28256#true} is VALID [2018-11-14 18:50:52,924 INFO L273 TraceCheckUtils]: 47: Hoare triple {28256#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {28256#true} is VALID [2018-11-14 18:50:52,924 INFO L273 TraceCheckUtils]: 48: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,924 INFO L273 TraceCheckUtils]: 49: Hoare triple {28256#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {28256#true} is VALID [2018-11-14 18:50:52,924 INFO L273 TraceCheckUtils]: 50: Hoare triple {28256#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {28256#true} is VALID [2018-11-14 18:50:52,925 INFO L273 TraceCheckUtils]: 51: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,925 INFO L273 TraceCheckUtils]: 52: Hoare triple {28256#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {28256#true} is VALID [2018-11-14 18:50:52,925 INFO L273 TraceCheckUtils]: 53: Hoare triple {28256#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {28256#true} is VALID [2018-11-14 18:50:52,925 INFO L273 TraceCheckUtils]: 54: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,925 INFO L273 TraceCheckUtils]: 55: Hoare triple {28256#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {28256#true} is VALID [2018-11-14 18:50:52,925 INFO L273 TraceCheckUtils]: 56: Hoare triple {28256#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {28256#true} is VALID [2018-11-14 18:50:52,925 INFO L273 TraceCheckUtils]: 57: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,925 INFO L273 TraceCheckUtils]: 58: Hoare triple {28256#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {28256#true} is VALID [2018-11-14 18:50:52,925 INFO L273 TraceCheckUtils]: 59: Hoare triple {28256#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {28256#true} is VALID [2018-11-14 18:50:52,925 INFO L273 TraceCheckUtils]: 60: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,926 INFO L273 TraceCheckUtils]: 61: Hoare triple {28256#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {28256#true} is VALID [2018-11-14 18:50:52,926 INFO L273 TraceCheckUtils]: 62: Hoare triple {28256#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {28256#true} is VALID [2018-11-14 18:50:52,926 INFO L273 TraceCheckUtils]: 63: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,926 INFO L273 TraceCheckUtils]: 64: Hoare triple {28256#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {28256#true} is VALID [2018-11-14 18:50:52,926 INFO L273 TraceCheckUtils]: 65: Hoare triple {28256#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {28256#true} is VALID [2018-11-14 18:50:52,926 INFO L273 TraceCheckUtils]: 66: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,926 INFO L273 TraceCheckUtils]: 67: Hoare triple {28256#true} assume !(~i~1 < 20); {28256#true} is VALID [2018-11-14 18:50:52,926 INFO L256 TraceCheckUtils]: 68: Hoare triple {28256#true} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {28256#true} is VALID [2018-11-14 18:50:52,927 INFO L273 TraceCheckUtils]: 69: Hoare triple {28256#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {28258#(= avg_~i~0 0)} is VALID [2018-11-14 18:50:52,927 INFO L273 TraceCheckUtils]: 70: Hoare triple {28258#(= avg_~i~0 0)} assume true; {28258#(= avg_~i~0 0)} is VALID [2018-11-14 18:50:52,927 INFO L273 TraceCheckUtils]: 71: Hoare triple {28258#(= avg_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28258#(= avg_~i~0 0)} is VALID [2018-11-14 18:50:52,928 INFO L273 TraceCheckUtils]: 72: Hoare triple {28258#(= avg_~i~0 0)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28259#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:52,928 INFO L273 TraceCheckUtils]: 73: Hoare triple {28259#(<= avg_~i~0 1)} assume true; {28259#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:52,928 INFO L273 TraceCheckUtils]: 74: Hoare triple {28259#(<= avg_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28259#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:52,929 INFO L273 TraceCheckUtils]: 75: Hoare triple {28259#(<= avg_~i~0 1)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28260#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:52,929 INFO L273 TraceCheckUtils]: 76: Hoare triple {28260#(<= avg_~i~0 2)} assume true; {28260#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:52,929 INFO L273 TraceCheckUtils]: 77: Hoare triple {28260#(<= avg_~i~0 2)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28260#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:52,930 INFO L273 TraceCheckUtils]: 78: Hoare triple {28260#(<= avg_~i~0 2)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28261#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:52,930 INFO L273 TraceCheckUtils]: 79: Hoare triple {28261#(<= avg_~i~0 3)} assume true; {28261#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:52,930 INFO L273 TraceCheckUtils]: 80: Hoare triple {28261#(<= avg_~i~0 3)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28261#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:52,931 INFO L273 TraceCheckUtils]: 81: Hoare triple {28261#(<= avg_~i~0 3)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28262#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:52,931 INFO L273 TraceCheckUtils]: 82: Hoare triple {28262#(<= avg_~i~0 4)} assume true; {28262#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:52,932 INFO L273 TraceCheckUtils]: 83: Hoare triple {28262#(<= avg_~i~0 4)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28262#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:52,933 INFO L273 TraceCheckUtils]: 84: Hoare triple {28262#(<= avg_~i~0 4)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28263#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:52,933 INFO L273 TraceCheckUtils]: 85: Hoare triple {28263#(<= avg_~i~0 5)} assume true; {28263#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:52,934 INFO L273 TraceCheckUtils]: 86: Hoare triple {28263#(<= avg_~i~0 5)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28263#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:52,934 INFO L273 TraceCheckUtils]: 87: Hoare triple {28263#(<= avg_~i~0 5)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28264#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:52,935 INFO L273 TraceCheckUtils]: 88: Hoare triple {28264#(<= avg_~i~0 6)} assume true; {28264#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:52,935 INFO L273 TraceCheckUtils]: 89: Hoare triple {28264#(<= avg_~i~0 6)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28264#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:52,936 INFO L273 TraceCheckUtils]: 90: Hoare triple {28264#(<= avg_~i~0 6)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28265#(<= avg_~i~0 7)} is VALID [2018-11-14 18:50:52,936 INFO L273 TraceCheckUtils]: 91: Hoare triple {28265#(<= avg_~i~0 7)} assume true; {28265#(<= avg_~i~0 7)} is VALID [2018-11-14 18:50:52,937 INFO L273 TraceCheckUtils]: 92: Hoare triple {28265#(<= avg_~i~0 7)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28265#(<= avg_~i~0 7)} is VALID [2018-11-14 18:50:52,938 INFO L273 TraceCheckUtils]: 93: Hoare triple {28265#(<= avg_~i~0 7)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28266#(<= avg_~i~0 8)} is VALID [2018-11-14 18:50:52,938 INFO L273 TraceCheckUtils]: 94: Hoare triple {28266#(<= avg_~i~0 8)} assume true; {28266#(<= avg_~i~0 8)} is VALID [2018-11-14 18:50:52,939 INFO L273 TraceCheckUtils]: 95: Hoare triple {28266#(<= avg_~i~0 8)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28266#(<= avg_~i~0 8)} is VALID [2018-11-14 18:50:52,939 INFO L273 TraceCheckUtils]: 96: Hoare triple {28266#(<= avg_~i~0 8)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28267#(<= avg_~i~0 9)} is VALID [2018-11-14 18:50:52,940 INFO L273 TraceCheckUtils]: 97: Hoare triple {28267#(<= avg_~i~0 9)} assume true; {28267#(<= avg_~i~0 9)} is VALID [2018-11-14 18:50:52,940 INFO L273 TraceCheckUtils]: 98: Hoare triple {28267#(<= avg_~i~0 9)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28267#(<= avg_~i~0 9)} is VALID [2018-11-14 18:50:52,941 INFO L273 TraceCheckUtils]: 99: Hoare triple {28267#(<= avg_~i~0 9)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28268#(<= avg_~i~0 10)} is VALID [2018-11-14 18:50:52,941 INFO L273 TraceCheckUtils]: 100: Hoare triple {28268#(<= avg_~i~0 10)} assume true; {28268#(<= avg_~i~0 10)} is VALID [2018-11-14 18:50:52,942 INFO L273 TraceCheckUtils]: 101: Hoare triple {28268#(<= avg_~i~0 10)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28268#(<= avg_~i~0 10)} is VALID [2018-11-14 18:50:52,943 INFO L273 TraceCheckUtils]: 102: Hoare triple {28268#(<= avg_~i~0 10)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28269#(<= avg_~i~0 11)} is VALID [2018-11-14 18:50:52,943 INFO L273 TraceCheckUtils]: 103: Hoare triple {28269#(<= avg_~i~0 11)} assume true; {28269#(<= avg_~i~0 11)} is VALID [2018-11-14 18:50:52,944 INFO L273 TraceCheckUtils]: 104: Hoare triple {28269#(<= avg_~i~0 11)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28269#(<= avg_~i~0 11)} is VALID [2018-11-14 18:50:52,944 INFO L273 TraceCheckUtils]: 105: Hoare triple {28269#(<= avg_~i~0 11)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28270#(<= avg_~i~0 12)} is VALID [2018-11-14 18:50:52,945 INFO L273 TraceCheckUtils]: 106: Hoare triple {28270#(<= avg_~i~0 12)} assume true; {28270#(<= avg_~i~0 12)} is VALID [2018-11-14 18:50:52,945 INFO L273 TraceCheckUtils]: 107: Hoare triple {28270#(<= avg_~i~0 12)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28270#(<= avg_~i~0 12)} is VALID [2018-11-14 18:50:52,946 INFO L273 TraceCheckUtils]: 108: Hoare triple {28270#(<= avg_~i~0 12)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28271#(<= avg_~i~0 13)} is VALID [2018-11-14 18:50:52,946 INFO L273 TraceCheckUtils]: 109: Hoare triple {28271#(<= avg_~i~0 13)} assume true; {28271#(<= avg_~i~0 13)} is VALID [2018-11-14 18:50:52,947 INFO L273 TraceCheckUtils]: 110: Hoare triple {28271#(<= avg_~i~0 13)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28271#(<= avg_~i~0 13)} is VALID [2018-11-14 18:50:52,948 INFO L273 TraceCheckUtils]: 111: Hoare triple {28271#(<= avg_~i~0 13)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28272#(<= avg_~i~0 14)} is VALID [2018-11-14 18:50:52,948 INFO L273 TraceCheckUtils]: 112: Hoare triple {28272#(<= avg_~i~0 14)} assume true; {28272#(<= avg_~i~0 14)} is VALID [2018-11-14 18:50:52,949 INFO L273 TraceCheckUtils]: 113: Hoare triple {28272#(<= avg_~i~0 14)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28272#(<= avg_~i~0 14)} is VALID [2018-11-14 18:50:52,949 INFO L273 TraceCheckUtils]: 114: Hoare triple {28272#(<= avg_~i~0 14)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28273#(<= avg_~i~0 15)} is VALID [2018-11-14 18:50:52,950 INFO L273 TraceCheckUtils]: 115: Hoare triple {28273#(<= avg_~i~0 15)} assume true; {28273#(<= avg_~i~0 15)} is VALID [2018-11-14 18:50:52,950 INFO L273 TraceCheckUtils]: 116: Hoare triple {28273#(<= avg_~i~0 15)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28273#(<= avg_~i~0 15)} is VALID [2018-11-14 18:50:52,951 INFO L273 TraceCheckUtils]: 117: Hoare triple {28273#(<= avg_~i~0 15)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28274#(<= avg_~i~0 16)} is VALID [2018-11-14 18:50:52,952 INFO L273 TraceCheckUtils]: 118: Hoare triple {28274#(<= avg_~i~0 16)} assume true; {28274#(<= avg_~i~0 16)} is VALID [2018-11-14 18:50:52,952 INFO L273 TraceCheckUtils]: 119: Hoare triple {28274#(<= avg_~i~0 16)} assume !(~i~0 < 20); {28257#false} is VALID [2018-11-14 18:50:52,952 INFO L273 TraceCheckUtils]: 120: Hoare triple {28257#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {28257#false} is VALID [2018-11-14 18:50:52,953 INFO L273 TraceCheckUtils]: 121: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:52,953 INFO L268 TraceCheckUtils]: 122: Hoare quadruple {28257#false} {28256#true} #73#return; {28257#false} is VALID [2018-11-14 18:50:52,953 INFO L273 TraceCheckUtils]: 123: Hoare triple {28257#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); {28257#false} is VALID [2018-11-14 18:50:52,953 INFO L256 TraceCheckUtils]: 124: Hoare triple {28257#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {28256#true} is VALID [2018-11-14 18:50:52,953 INFO L273 TraceCheckUtils]: 125: Hoare triple {28256#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {28256#true} is VALID [2018-11-14 18:50:52,954 INFO L273 TraceCheckUtils]: 126: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,954 INFO L273 TraceCheckUtils]: 127: Hoare triple {28256#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28256#true} is VALID [2018-11-14 18:50:52,954 INFO L273 TraceCheckUtils]: 128: Hoare triple {28256#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28256#true} is VALID [2018-11-14 18:50:52,954 INFO L273 TraceCheckUtils]: 129: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,954 INFO L273 TraceCheckUtils]: 130: Hoare triple {28256#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28256#true} is VALID [2018-11-14 18:50:52,954 INFO L273 TraceCheckUtils]: 131: Hoare triple {28256#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28256#true} is VALID [2018-11-14 18:50:52,955 INFO L273 TraceCheckUtils]: 132: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,955 INFO L273 TraceCheckUtils]: 133: Hoare triple {28256#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28256#true} is VALID [2018-11-14 18:50:52,955 INFO L273 TraceCheckUtils]: 134: Hoare triple {28256#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28256#true} is VALID [2018-11-14 18:50:52,955 INFO L273 TraceCheckUtils]: 135: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,955 INFO L273 TraceCheckUtils]: 136: Hoare triple {28256#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28256#true} is VALID [2018-11-14 18:50:52,955 INFO L273 TraceCheckUtils]: 137: Hoare triple {28256#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28256#true} is VALID [2018-11-14 18:50:52,956 INFO L273 TraceCheckUtils]: 138: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,956 INFO L273 TraceCheckUtils]: 139: Hoare triple {28256#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28256#true} is VALID [2018-11-14 18:50:52,956 INFO L273 TraceCheckUtils]: 140: Hoare triple {28256#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28256#true} is VALID [2018-11-14 18:50:52,956 INFO L273 TraceCheckUtils]: 141: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,956 INFO L273 TraceCheckUtils]: 142: Hoare triple {28256#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28256#true} is VALID [2018-11-14 18:50:52,956 INFO L273 TraceCheckUtils]: 143: Hoare triple {28256#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28256#true} is VALID [2018-11-14 18:50:52,956 INFO L273 TraceCheckUtils]: 144: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,957 INFO L273 TraceCheckUtils]: 145: Hoare triple {28256#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28256#true} is VALID [2018-11-14 18:50:52,957 INFO L273 TraceCheckUtils]: 146: Hoare triple {28256#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28256#true} is VALID [2018-11-14 18:50:52,957 INFO L273 TraceCheckUtils]: 147: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,957 INFO L273 TraceCheckUtils]: 148: Hoare triple {28256#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28256#true} is VALID [2018-11-14 18:50:52,957 INFO L273 TraceCheckUtils]: 149: Hoare triple {28256#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28256#true} is VALID [2018-11-14 18:50:52,957 INFO L273 TraceCheckUtils]: 150: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,957 INFO L273 TraceCheckUtils]: 151: Hoare triple {28256#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28256#true} is VALID [2018-11-14 18:50:52,957 INFO L273 TraceCheckUtils]: 152: Hoare triple {28256#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28256#true} is VALID [2018-11-14 18:50:52,957 INFO L273 TraceCheckUtils]: 153: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,957 INFO L273 TraceCheckUtils]: 154: Hoare triple {28256#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28256#true} is VALID [2018-11-14 18:50:52,958 INFO L273 TraceCheckUtils]: 155: Hoare triple {28256#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28256#true} is VALID [2018-11-14 18:50:52,958 INFO L273 TraceCheckUtils]: 156: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,958 INFO L273 TraceCheckUtils]: 157: Hoare triple {28256#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28256#true} is VALID [2018-11-14 18:50:52,958 INFO L273 TraceCheckUtils]: 158: Hoare triple {28256#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28256#true} is VALID [2018-11-14 18:50:52,958 INFO L273 TraceCheckUtils]: 159: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,958 INFO L273 TraceCheckUtils]: 160: Hoare triple {28256#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28256#true} is VALID [2018-11-14 18:50:52,958 INFO L273 TraceCheckUtils]: 161: Hoare triple {28256#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28256#true} is VALID [2018-11-14 18:50:52,958 INFO L273 TraceCheckUtils]: 162: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,958 INFO L273 TraceCheckUtils]: 163: Hoare triple {28256#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28256#true} is VALID [2018-11-14 18:50:52,958 INFO L273 TraceCheckUtils]: 164: Hoare triple {28256#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28256#true} is VALID [2018-11-14 18:50:52,959 INFO L273 TraceCheckUtils]: 165: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,959 INFO L273 TraceCheckUtils]: 166: Hoare triple {28256#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28256#true} is VALID [2018-11-14 18:50:52,959 INFO L273 TraceCheckUtils]: 167: Hoare triple {28256#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28256#true} is VALID [2018-11-14 18:50:52,959 INFO L273 TraceCheckUtils]: 168: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,959 INFO L273 TraceCheckUtils]: 169: Hoare triple {28256#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28256#true} is VALID [2018-11-14 18:50:52,959 INFO L273 TraceCheckUtils]: 170: Hoare triple {28256#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28256#true} is VALID [2018-11-14 18:50:52,959 INFO L273 TraceCheckUtils]: 171: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,959 INFO L273 TraceCheckUtils]: 172: Hoare triple {28256#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28256#true} is VALID [2018-11-14 18:50:52,959 INFO L273 TraceCheckUtils]: 173: Hoare triple {28256#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28256#true} is VALID [2018-11-14 18:50:52,959 INFO L273 TraceCheckUtils]: 174: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,960 INFO L273 TraceCheckUtils]: 175: Hoare triple {28256#true} assume !(~i~0 < 20); {28256#true} is VALID [2018-11-14 18:50:52,960 INFO L273 TraceCheckUtils]: 176: Hoare triple {28256#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {28256#true} is VALID [2018-11-14 18:50:52,960 INFO L273 TraceCheckUtils]: 177: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,960 INFO L268 TraceCheckUtils]: 178: Hoare quadruple {28256#true} {28257#false} #75#return; {28257#false} is VALID [2018-11-14 18:50:52,960 INFO L273 TraceCheckUtils]: 179: Hoare triple {28257#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; {28257#false} is VALID [2018-11-14 18:50:52,960 INFO L273 TraceCheckUtils]: 180: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:52,960 INFO L273 TraceCheckUtils]: 181: Hoare triple {28257#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {28257#false} is VALID [2018-11-14 18:50:52,960 INFO L273 TraceCheckUtils]: 182: Hoare triple {28257#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {28257#false} is VALID [2018-11-14 18:50:52,960 INFO L273 TraceCheckUtils]: 183: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:52,960 INFO L273 TraceCheckUtils]: 184: Hoare triple {28257#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {28257#false} is VALID [2018-11-14 18:50:52,961 INFO L273 TraceCheckUtils]: 185: Hoare triple {28257#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {28257#false} is VALID [2018-11-14 18:50:52,961 INFO L273 TraceCheckUtils]: 186: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:52,961 INFO L273 TraceCheckUtils]: 187: Hoare triple {28257#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {28257#false} is VALID [2018-11-14 18:50:52,961 INFO L273 TraceCheckUtils]: 188: Hoare triple {28257#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {28257#false} is VALID [2018-11-14 18:50:52,961 INFO L273 TraceCheckUtils]: 189: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:52,961 INFO L273 TraceCheckUtils]: 190: Hoare triple {28257#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {28257#false} is VALID [2018-11-14 18:50:52,961 INFO L273 TraceCheckUtils]: 191: Hoare triple {28257#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {28257#false} is VALID [2018-11-14 18:50:52,961 INFO L273 TraceCheckUtils]: 192: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:52,961 INFO L273 TraceCheckUtils]: 193: Hoare triple {28257#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {28257#false} is VALID [2018-11-14 18:50:52,961 INFO L273 TraceCheckUtils]: 194: Hoare triple {28257#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {28257#false} is VALID [2018-11-14 18:50:52,962 INFO L273 TraceCheckUtils]: 195: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:52,962 INFO L273 TraceCheckUtils]: 196: Hoare triple {28257#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {28257#false} is VALID [2018-11-14 18:50:52,962 INFO L273 TraceCheckUtils]: 197: Hoare triple {28257#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {28257#false} is VALID [2018-11-14 18:50:52,962 INFO L273 TraceCheckUtils]: 198: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:52,962 INFO L273 TraceCheckUtils]: 199: Hoare triple {28257#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {28257#false} is VALID [2018-11-14 18:50:52,962 INFO L273 TraceCheckUtils]: 200: Hoare triple {28257#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {28257#false} is VALID [2018-11-14 18:50:52,962 INFO L273 TraceCheckUtils]: 201: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:52,962 INFO L273 TraceCheckUtils]: 202: Hoare triple {28257#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {28257#false} is VALID [2018-11-14 18:50:52,962 INFO L273 TraceCheckUtils]: 203: Hoare triple {28257#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {28257#false} is VALID [2018-11-14 18:50:52,962 INFO L273 TraceCheckUtils]: 204: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:52,963 INFO L273 TraceCheckUtils]: 205: Hoare triple {28257#false} assume !(~i~2 < 19); {28257#false} is VALID [2018-11-14 18:50:52,963 INFO L273 TraceCheckUtils]: 206: Hoare triple {28257#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {28257#false} is VALID [2018-11-14 18:50:52,963 INFO L256 TraceCheckUtils]: 207: Hoare triple {28257#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {28256#true} is VALID [2018-11-14 18:50:52,963 INFO L273 TraceCheckUtils]: 208: Hoare triple {28256#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {28256#true} is VALID [2018-11-14 18:50:52,963 INFO L273 TraceCheckUtils]: 209: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,963 INFO L273 TraceCheckUtils]: 210: Hoare triple {28256#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28256#true} is VALID [2018-11-14 18:50:52,963 INFO L273 TraceCheckUtils]: 211: Hoare triple {28256#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28256#true} is VALID [2018-11-14 18:50:52,963 INFO L273 TraceCheckUtils]: 212: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,963 INFO L273 TraceCheckUtils]: 213: Hoare triple {28256#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28256#true} is VALID [2018-11-14 18:50:52,963 INFO L273 TraceCheckUtils]: 214: Hoare triple {28256#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28256#true} is VALID [2018-11-14 18:50:52,964 INFO L273 TraceCheckUtils]: 215: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,964 INFO L273 TraceCheckUtils]: 216: Hoare triple {28256#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28256#true} is VALID [2018-11-14 18:50:52,964 INFO L273 TraceCheckUtils]: 217: Hoare triple {28256#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28256#true} is VALID [2018-11-14 18:50:52,964 INFO L273 TraceCheckUtils]: 218: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,964 INFO L273 TraceCheckUtils]: 219: Hoare triple {28256#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28256#true} is VALID [2018-11-14 18:50:52,964 INFO L273 TraceCheckUtils]: 220: Hoare triple {28256#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28256#true} is VALID [2018-11-14 18:50:52,964 INFO L273 TraceCheckUtils]: 221: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,964 INFO L273 TraceCheckUtils]: 222: Hoare triple {28256#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28256#true} is VALID [2018-11-14 18:50:52,964 INFO L273 TraceCheckUtils]: 223: Hoare triple {28256#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28256#true} is VALID [2018-11-14 18:50:52,965 INFO L273 TraceCheckUtils]: 224: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,965 INFO L273 TraceCheckUtils]: 225: Hoare triple {28256#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28256#true} is VALID [2018-11-14 18:50:52,965 INFO L273 TraceCheckUtils]: 226: Hoare triple {28256#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28256#true} is VALID [2018-11-14 18:50:52,965 INFO L273 TraceCheckUtils]: 227: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,965 INFO L273 TraceCheckUtils]: 228: Hoare triple {28256#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28256#true} is VALID [2018-11-14 18:50:52,965 INFO L273 TraceCheckUtils]: 229: Hoare triple {28256#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28256#true} is VALID [2018-11-14 18:50:52,965 INFO L273 TraceCheckUtils]: 230: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,965 INFO L273 TraceCheckUtils]: 231: Hoare triple {28256#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28256#true} is VALID [2018-11-14 18:50:52,965 INFO L273 TraceCheckUtils]: 232: Hoare triple {28256#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28256#true} is VALID [2018-11-14 18:50:52,965 INFO L273 TraceCheckUtils]: 233: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,966 INFO L273 TraceCheckUtils]: 234: Hoare triple {28256#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28256#true} is VALID [2018-11-14 18:50:52,966 INFO L273 TraceCheckUtils]: 235: Hoare triple {28256#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28256#true} is VALID [2018-11-14 18:50:52,966 INFO L273 TraceCheckUtils]: 236: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,966 INFO L273 TraceCheckUtils]: 237: Hoare triple {28256#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28256#true} is VALID [2018-11-14 18:50:52,966 INFO L273 TraceCheckUtils]: 238: Hoare triple {28256#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28256#true} is VALID [2018-11-14 18:50:52,966 INFO L273 TraceCheckUtils]: 239: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,966 INFO L273 TraceCheckUtils]: 240: Hoare triple {28256#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28256#true} is VALID [2018-11-14 18:50:52,966 INFO L273 TraceCheckUtils]: 241: Hoare triple {28256#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28256#true} is VALID [2018-11-14 18:50:52,966 INFO L273 TraceCheckUtils]: 242: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,966 INFO L273 TraceCheckUtils]: 243: Hoare triple {28256#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28256#true} is VALID [2018-11-14 18:50:52,966 INFO L273 TraceCheckUtils]: 244: Hoare triple {28256#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28256#true} is VALID [2018-11-14 18:50:52,967 INFO L273 TraceCheckUtils]: 245: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,967 INFO L273 TraceCheckUtils]: 246: Hoare triple {28256#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28256#true} is VALID [2018-11-14 18:50:52,967 INFO L273 TraceCheckUtils]: 247: Hoare triple {28256#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28256#true} is VALID [2018-11-14 18:50:52,967 INFO L273 TraceCheckUtils]: 248: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,967 INFO L273 TraceCheckUtils]: 249: Hoare triple {28256#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28256#true} is VALID [2018-11-14 18:50:52,967 INFO L273 TraceCheckUtils]: 250: Hoare triple {28256#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28256#true} is VALID [2018-11-14 18:50:52,967 INFO L273 TraceCheckUtils]: 251: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,967 INFO L273 TraceCheckUtils]: 252: Hoare triple {28256#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28256#true} is VALID [2018-11-14 18:50:52,967 INFO L273 TraceCheckUtils]: 253: Hoare triple {28256#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28256#true} is VALID [2018-11-14 18:50:52,968 INFO L273 TraceCheckUtils]: 254: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,968 INFO L273 TraceCheckUtils]: 255: Hoare triple {28256#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28256#true} is VALID [2018-11-14 18:50:52,968 INFO L273 TraceCheckUtils]: 256: Hoare triple {28256#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28256#true} is VALID [2018-11-14 18:50:52,968 INFO L273 TraceCheckUtils]: 257: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,968 INFO L273 TraceCheckUtils]: 258: Hoare triple {28256#true} assume !(~i~0 < 20); {28256#true} is VALID [2018-11-14 18:50:52,968 INFO L273 TraceCheckUtils]: 259: Hoare triple {28256#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {28256#true} is VALID [2018-11-14 18:50:52,968 INFO L273 TraceCheckUtils]: 260: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:52,968 INFO L268 TraceCheckUtils]: 261: Hoare quadruple {28256#true} {28257#false} #77#return; {28257#false} is VALID [2018-11-14 18:50:52,968 INFO L273 TraceCheckUtils]: 262: Hoare triple {28257#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {28257#false} is VALID [2018-11-14 18:50:52,968 INFO L273 TraceCheckUtils]: 263: Hoare triple {28257#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {28257#false} is VALID [2018-11-14 18:50:52,969 INFO L273 TraceCheckUtils]: 264: Hoare triple {28257#false} assume !false; {28257#false} is VALID [2018-11-14 18:50:52,994 INFO L134 CoverageAnalysis]: Checked inductivity of 4400 backedges. 0 proven. 2066 refuted. 0 times theorem prover too weak. 2334 trivial. 0 not checked. [2018-11-14 18:50:52,994 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:50:52,994 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 31 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 31 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:50:53,004 INFO L103 rtionOrderModulation]: Keeping assertion order INSIDE_LOOP_FIRST1 [2018-11-14 18:50:57,484 INFO L249 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 34 check-sat command(s) [2018-11-14 18:50:57,484 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 18:50:57,543 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:50:57,545 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:50:58,259 INFO L256 TraceCheckUtils]: 0: Hoare triple {28256#true} call ULTIMATE.init(); {28256#true} is VALID [2018-11-14 18:50:58,259 INFO L273 TraceCheckUtils]: 1: Hoare triple {28256#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {28256#true} is VALID [2018-11-14 18:50:58,259 INFO L273 TraceCheckUtils]: 2: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:58,260 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {28256#true} {28256#true} #69#return; {28256#true} is VALID [2018-11-14 18:50:58,260 INFO L256 TraceCheckUtils]: 4: Hoare triple {28256#true} call #t~ret12 := main(); {28256#true} is VALID [2018-11-14 18:50:58,260 INFO L273 TraceCheckUtils]: 5: Hoare triple {28256#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {28256#true} is VALID [2018-11-14 18:50:58,260 INFO L273 TraceCheckUtils]: 6: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:58,260 INFO L273 TraceCheckUtils]: 7: Hoare triple {28256#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {28256#true} is VALID [2018-11-14 18:50:58,260 INFO L273 TraceCheckUtils]: 8: Hoare triple {28256#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {28256#true} is VALID [2018-11-14 18:50:58,260 INFO L273 TraceCheckUtils]: 9: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:58,261 INFO L273 TraceCheckUtils]: 10: Hoare triple {28256#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {28256#true} is VALID [2018-11-14 18:50:58,261 INFO L273 TraceCheckUtils]: 11: Hoare triple {28256#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {28256#true} is VALID [2018-11-14 18:50:58,261 INFO L273 TraceCheckUtils]: 12: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:58,261 INFO L273 TraceCheckUtils]: 13: Hoare triple {28256#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {28256#true} is VALID [2018-11-14 18:50:58,261 INFO L273 TraceCheckUtils]: 14: Hoare triple {28256#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {28256#true} is VALID [2018-11-14 18:50:58,261 INFO L273 TraceCheckUtils]: 15: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:58,261 INFO L273 TraceCheckUtils]: 16: Hoare triple {28256#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {28256#true} is VALID [2018-11-14 18:50:58,261 INFO L273 TraceCheckUtils]: 17: Hoare triple {28256#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {28256#true} is VALID [2018-11-14 18:50:58,261 INFO L273 TraceCheckUtils]: 18: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:58,261 INFO L273 TraceCheckUtils]: 19: Hoare triple {28256#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {28256#true} is VALID [2018-11-14 18:50:58,262 INFO L273 TraceCheckUtils]: 20: Hoare triple {28256#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {28256#true} is VALID [2018-11-14 18:50:58,262 INFO L273 TraceCheckUtils]: 21: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:58,262 INFO L273 TraceCheckUtils]: 22: Hoare triple {28256#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {28256#true} is VALID [2018-11-14 18:50:58,262 INFO L273 TraceCheckUtils]: 23: Hoare triple {28256#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {28256#true} is VALID [2018-11-14 18:50:58,262 INFO L273 TraceCheckUtils]: 24: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:58,262 INFO L273 TraceCheckUtils]: 25: Hoare triple {28256#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {28256#true} is VALID [2018-11-14 18:50:58,262 INFO L273 TraceCheckUtils]: 26: Hoare triple {28256#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {28256#true} is VALID [2018-11-14 18:50:58,262 INFO L273 TraceCheckUtils]: 27: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:58,262 INFO L273 TraceCheckUtils]: 28: Hoare triple {28256#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {28256#true} is VALID [2018-11-14 18:50:58,262 INFO L273 TraceCheckUtils]: 29: Hoare triple {28256#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {28256#true} is VALID [2018-11-14 18:50:58,263 INFO L273 TraceCheckUtils]: 30: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:58,263 INFO L273 TraceCheckUtils]: 31: Hoare triple {28256#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {28256#true} is VALID [2018-11-14 18:50:58,263 INFO L273 TraceCheckUtils]: 32: Hoare triple {28256#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {28256#true} is VALID [2018-11-14 18:50:58,263 INFO L273 TraceCheckUtils]: 33: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:58,263 INFO L273 TraceCheckUtils]: 34: Hoare triple {28256#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {28256#true} is VALID [2018-11-14 18:50:58,263 INFO L273 TraceCheckUtils]: 35: Hoare triple {28256#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {28256#true} is VALID [2018-11-14 18:50:58,263 INFO L273 TraceCheckUtils]: 36: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:58,263 INFO L273 TraceCheckUtils]: 37: Hoare triple {28256#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {28256#true} is VALID [2018-11-14 18:50:58,263 INFO L273 TraceCheckUtils]: 38: Hoare triple {28256#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {28256#true} is VALID [2018-11-14 18:50:58,263 INFO L273 TraceCheckUtils]: 39: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:58,264 INFO L273 TraceCheckUtils]: 40: Hoare triple {28256#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {28256#true} is VALID [2018-11-14 18:50:58,264 INFO L273 TraceCheckUtils]: 41: Hoare triple {28256#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {28256#true} is VALID [2018-11-14 18:50:58,264 INFO L273 TraceCheckUtils]: 42: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:58,264 INFO L273 TraceCheckUtils]: 43: Hoare triple {28256#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {28256#true} is VALID [2018-11-14 18:50:58,264 INFO L273 TraceCheckUtils]: 44: Hoare triple {28256#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {28256#true} is VALID [2018-11-14 18:50:58,264 INFO L273 TraceCheckUtils]: 45: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:58,264 INFO L273 TraceCheckUtils]: 46: Hoare triple {28256#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {28256#true} is VALID [2018-11-14 18:50:58,264 INFO L273 TraceCheckUtils]: 47: Hoare triple {28256#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {28256#true} is VALID [2018-11-14 18:50:58,264 INFO L273 TraceCheckUtils]: 48: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:58,265 INFO L273 TraceCheckUtils]: 49: Hoare triple {28256#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {28256#true} is VALID [2018-11-14 18:50:58,265 INFO L273 TraceCheckUtils]: 50: Hoare triple {28256#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {28256#true} is VALID [2018-11-14 18:50:58,265 INFO L273 TraceCheckUtils]: 51: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:58,265 INFO L273 TraceCheckUtils]: 52: Hoare triple {28256#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {28256#true} is VALID [2018-11-14 18:50:58,265 INFO L273 TraceCheckUtils]: 53: Hoare triple {28256#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {28256#true} is VALID [2018-11-14 18:50:58,265 INFO L273 TraceCheckUtils]: 54: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:58,265 INFO L273 TraceCheckUtils]: 55: Hoare triple {28256#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {28256#true} is VALID [2018-11-14 18:50:58,265 INFO L273 TraceCheckUtils]: 56: Hoare triple {28256#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {28256#true} is VALID [2018-11-14 18:50:58,265 INFO L273 TraceCheckUtils]: 57: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:58,265 INFO L273 TraceCheckUtils]: 58: Hoare triple {28256#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {28256#true} is VALID [2018-11-14 18:50:58,266 INFO L273 TraceCheckUtils]: 59: Hoare triple {28256#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {28256#true} is VALID [2018-11-14 18:50:58,266 INFO L273 TraceCheckUtils]: 60: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:58,266 INFO L273 TraceCheckUtils]: 61: Hoare triple {28256#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {28256#true} is VALID [2018-11-14 18:50:58,266 INFO L273 TraceCheckUtils]: 62: Hoare triple {28256#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {28256#true} is VALID [2018-11-14 18:50:58,266 INFO L273 TraceCheckUtils]: 63: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:58,266 INFO L273 TraceCheckUtils]: 64: Hoare triple {28256#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {28256#true} is VALID [2018-11-14 18:50:58,266 INFO L273 TraceCheckUtils]: 65: Hoare triple {28256#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {28256#true} is VALID [2018-11-14 18:50:58,266 INFO L273 TraceCheckUtils]: 66: Hoare triple {28256#true} assume true; {28256#true} is VALID [2018-11-14 18:50:58,266 INFO L273 TraceCheckUtils]: 67: Hoare triple {28256#true} assume !(~i~1 < 20); {28256#true} is VALID [2018-11-14 18:50:58,266 INFO L256 TraceCheckUtils]: 68: Hoare triple {28256#true} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {28256#true} is VALID [2018-11-14 18:50:58,267 INFO L273 TraceCheckUtils]: 69: Hoare triple {28256#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {28485#(<= avg_~i~0 0)} is VALID [2018-11-14 18:50:58,267 INFO L273 TraceCheckUtils]: 70: Hoare triple {28485#(<= avg_~i~0 0)} assume true; {28485#(<= avg_~i~0 0)} is VALID [2018-11-14 18:50:58,268 INFO L273 TraceCheckUtils]: 71: Hoare triple {28485#(<= avg_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28485#(<= avg_~i~0 0)} is VALID [2018-11-14 18:50:58,268 INFO L273 TraceCheckUtils]: 72: Hoare triple {28485#(<= avg_~i~0 0)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28259#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:58,268 INFO L273 TraceCheckUtils]: 73: Hoare triple {28259#(<= avg_~i~0 1)} assume true; {28259#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:58,269 INFO L273 TraceCheckUtils]: 74: Hoare triple {28259#(<= avg_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28259#(<= avg_~i~0 1)} is VALID [2018-11-14 18:50:58,269 INFO L273 TraceCheckUtils]: 75: Hoare triple {28259#(<= avg_~i~0 1)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28260#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:58,269 INFO L273 TraceCheckUtils]: 76: Hoare triple {28260#(<= avg_~i~0 2)} assume true; {28260#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:58,270 INFO L273 TraceCheckUtils]: 77: Hoare triple {28260#(<= avg_~i~0 2)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28260#(<= avg_~i~0 2)} is VALID [2018-11-14 18:50:58,270 INFO L273 TraceCheckUtils]: 78: Hoare triple {28260#(<= avg_~i~0 2)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28261#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:58,270 INFO L273 TraceCheckUtils]: 79: Hoare triple {28261#(<= avg_~i~0 3)} assume true; {28261#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:58,271 INFO L273 TraceCheckUtils]: 80: Hoare triple {28261#(<= avg_~i~0 3)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28261#(<= avg_~i~0 3)} is VALID [2018-11-14 18:50:58,271 INFO L273 TraceCheckUtils]: 81: Hoare triple {28261#(<= avg_~i~0 3)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28262#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:58,272 INFO L273 TraceCheckUtils]: 82: Hoare triple {28262#(<= avg_~i~0 4)} assume true; {28262#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:58,272 INFO L273 TraceCheckUtils]: 83: Hoare triple {28262#(<= avg_~i~0 4)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28262#(<= avg_~i~0 4)} is VALID [2018-11-14 18:50:58,273 INFO L273 TraceCheckUtils]: 84: Hoare triple {28262#(<= avg_~i~0 4)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28263#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:58,273 INFO L273 TraceCheckUtils]: 85: Hoare triple {28263#(<= avg_~i~0 5)} assume true; {28263#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:58,274 INFO L273 TraceCheckUtils]: 86: Hoare triple {28263#(<= avg_~i~0 5)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28263#(<= avg_~i~0 5)} is VALID [2018-11-14 18:50:58,274 INFO L273 TraceCheckUtils]: 87: Hoare triple {28263#(<= avg_~i~0 5)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28264#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:58,275 INFO L273 TraceCheckUtils]: 88: Hoare triple {28264#(<= avg_~i~0 6)} assume true; {28264#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:58,275 INFO L273 TraceCheckUtils]: 89: Hoare triple {28264#(<= avg_~i~0 6)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28264#(<= avg_~i~0 6)} is VALID [2018-11-14 18:50:58,276 INFO L273 TraceCheckUtils]: 90: Hoare triple {28264#(<= avg_~i~0 6)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28265#(<= avg_~i~0 7)} is VALID [2018-11-14 18:50:58,277 INFO L273 TraceCheckUtils]: 91: Hoare triple {28265#(<= avg_~i~0 7)} assume true; {28265#(<= avg_~i~0 7)} is VALID [2018-11-14 18:50:58,277 INFO L273 TraceCheckUtils]: 92: Hoare triple {28265#(<= avg_~i~0 7)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28265#(<= avg_~i~0 7)} is VALID [2018-11-14 18:50:58,278 INFO L273 TraceCheckUtils]: 93: Hoare triple {28265#(<= avg_~i~0 7)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28266#(<= avg_~i~0 8)} is VALID [2018-11-14 18:50:58,278 INFO L273 TraceCheckUtils]: 94: Hoare triple {28266#(<= avg_~i~0 8)} assume true; {28266#(<= avg_~i~0 8)} is VALID [2018-11-14 18:50:58,279 INFO L273 TraceCheckUtils]: 95: Hoare triple {28266#(<= avg_~i~0 8)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28266#(<= avg_~i~0 8)} is VALID [2018-11-14 18:50:58,280 INFO L273 TraceCheckUtils]: 96: Hoare triple {28266#(<= avg_~i~0 8)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28267#(<= avg_~i~0 9)} is VALID [2018-11-14 18:50:58,280 INFO L273 TraceCheckUtils]: 97: Hoare triple {28267#(<= avg_~i~0 9)} assume true; {28267#(<= avg_~i~0 9)} is VALID [2018-11-14 18:50:58,281 INFO L273 TraceCheckUtils]: 98: Hoare triple {28267#(<= avg_~i~0 9)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28267#(<= avg_~i~0 9)} is VALID [2018-11-14 18:50:58,281 INFO L273 TraceCheckUtils]: 99: Hoare triple {28267#(<= avg_~i~0 9)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28268#(<= avg_~i~0 10)} is VALID [2018-11-14 18:50:58,282 INFO L273 TraceCheckUtils]: 100: Hoare triple {28268#(<= avg_~i~0 10)} assume true; {28268#(<= avg_~i~0 10)} is VALID [2018-11-14 18:50:58,282 INFO L273 TraceCheckUtils]: 101: Hoare triple {28268#(<= avg_~i~0 10)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28268#(<= avg_~i~0 10)} is VALID [2018-11-14 18:50:58,283 INFO L273 TraceCheckUtils]: 102: Hoare triple {28268#(<= avg_~i~0 10)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28269#(<= avg_~i~0 11)} is VALID [2018-11-14 18:50:58,283 INFO L273 TraceCheckUtils]: 103: Hoare triple {28269#(<= avg_~i~0 11)} assume true; {28269#(<= avg_~i~0 11)} is VALID [2018-11-14 18:50:58,284 INFO L273 TraceCheckUtils]: 104: Hoare triple {28269#(<= avg_~i~0 11)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28269#(<= avg_~i~0 11)} is VALID [2018-11-14 18:50:58,285 INFO L273 TraceCheckUtils]: 105: Hoare triple {28269#(<= avg_~i~0 11)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28270#(<= avg_~i~0 12)} is VALID [2018-11-14 18:50:58,285 INFO L273 TraceCheckUtils]: 106: Hoare triple {28270#(<= avg_~i~0 12)} assume true; {28270#(<= avg_~i~0 12)} is VALID [2018-11-14 18:50:58,286 INFO L273 TraceCheckUtils]: 107: Hoare triple {28270#(<= avg_~i~0 12)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28270#(<= avg_~i~0 12)} is VALID [2018-11-14 18:50:58,286 INFO L273 TraceCheckUtils]: 108: Hoare triple {28270#(<= avg_~i~0 12)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28271#(<= avg_~i~0 13)} is VALID [2018-11-14 18:50:58,287 INFO L273 TraceCheckUtils]: 109: Hoare triple {28271#(<= avg_~i~0 13)} assume true; {28271#(<= avg_~i~0 13)} is VALID [2018-11-14 18:50:58,287 INFO L273 TraceCheckUtils]: 110: Hoare triple {28271#(<= avg_~i~0 13)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28271#(<= avg_~i~0 13)} is VALID [2018-11-14 18:50:58,288 INFO L273 TraceCheckUtils]: 111: Hoare triple {28271#(<= avg_~i~0 13)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28272#(<= avg_~i~0 14)} is VALID [2018-11-14 18:50:58,289 INFO L273 TraceCheckUtils]: 112: Hoare triple {28272#(<= avg_~i~0 14)} assume true; {28272#(<= avg_~i~0 14)} is VALID [2018-11-14 18:50:58,289 INFO L273 TraceCheckUtils]: 113: Hoare triple {28272#(<= avg_~i~0 14)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28272#(<= avg_~i~0 14)} is VALID [2018-11-14 18:50:58,290 INFO L273 TraceCheckUtils]: 114: Hoare triple {28272#(<= avg_~i~0 14)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28273#(<= avg_~i~0 15)} is VALID [2018-11-14 18:50:58,290 INFO L273 TraceCheckUtils]: 115: Hoare triple {28273#(<= avg_~i~0 15)} assume true; {28273#(<= avg_~i~0 15)} is VALID [2018-11-14 18:50:58,291 INFO L273 TraceCheckUtils]: 116: Hoare triple {28273#(<= avg_~i~0 15)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28273#(<= avg_~i~0 15)} is VALID [2018-11-14 18:50:58,292 INFO L273 TraceCheckUtils]: 117: Hoare triple {28273#(<= avg_~i~0 15)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28274#(<= avg_~i~0 16)} is VALID [2018-11-14 18:50:58,292 INFO L273 TraceCheckUtils]: 118: Hoare triple {28274#(<= avg_~i~0 16)} assume true; {28274#(<= avg_~i~0 16)} is VALID [2018-11-14 18:50:58,293 INFO L273 TraceCheckUtils]: 119: Hoare triple {28274#(<= avg_~i~0 16)} assume !(~i~0 < 20); {28257#false} is VALID [2018-11-14 18:50:58,293 INFO L273 TraceCheckUtils]: 120: Hoare triple {28257#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {28257#false} is VALID [2018-11-14 18:50:58,293 INFO L273 TraceCheckUtils]: 121: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:58,293 INFO L268 TraceCheckUtils]: 122: Hoare quadruple {28257#false} {28256#true} #73#return; {28257#false} is VALID [2018-11-14 18:50:58,293 INFO L273 TraceCheckUtils]: 123: Hoare triple {28257#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); {28257#false} is VALID [2018-11-14 18:50:58,294 INFO L256 TraceCheckUtils]: 124: Hoare triple {28257#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {28257#false} is VALID [2018-11-14 18:50:58,294 INFO L273 TraceCheckUtils]: 125: Hoare triple {28257#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {28257#false} is VALID [2018-11-14 18:50:58,294 INFO L273 TraceCheckUtils]: 126: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:58,294 INFO L273 TraceCheckUtils]: 127: Hoare triple {28257#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28257#false} is VALID [2018-11-14 18:50:58,294 INFO L273 TraceCheckUtils]: 128: Hoare triple {28257#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28257#false} is VALID [2018-11-14 18:50:58,294 INFO L273 TraceCheckUtils]: 129: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:58,295 INFO L273 TraceCheckUtils]: 130: Hoare triple {28257#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28257#false} is VALID [2018-11-14 18:50:58,295 INFO L273 TraceCheckUtils]: 131: Hoare triple {28257#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28257#false} is VALID [2018-11-14 18:50:58,295 INFO L273 TraceCheckUtils]: 132: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:58,295 INFO L273 TraceCheckUtils]: 133: Hoare triple {28257#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28257#false} is VALID [2018-11-14 18:50:58,295 INFO L273 TraceCheckUtils]: 134: Hoare triple {28257#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28257#false} is VALID [2018-11-14 18:50:58,295 INFO L273 TraceCheckUtils]: 135: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:58,295 INFO L273 TraceCheckUtils]: 136: Hoare triple {28257#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28257#false} is VALID [2018-11-14 18:50:58,296 INFO L273 TraceCheckUtils]: 137: Hoare triple {28257#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28257#false} is VALID [2018-11-14 18:50:58,296 INFO L273 TraceCheckUtils]: 138: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:58,296 INFO L273 TraceCheckUtils]: 139: Hoare triple {28257#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28257#false} is VALID [2018-11-14 18:50:58,296 INFO L273 TraceCheckUtils]: 140: Hoare triple {28257#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28257#false} is VALID [2018-11-14 18:50:58,296 INFO L273 TraceCheckUtils]: 141: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:58,296 INFO L273 TraceCheckUtils]: 142: Hoare triple {28257#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28257#false} is VALID [2018-11-14 18:50:58,296 INFO L273 TraceCheckUtils]: 143: Hoare triple {28257#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28257#false} is VALID [2018-11-14 18:50:58,296 INFO L273 TraceCheckUtils]: 144: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:58,296 INFO L273 TraceCheckUtils]: 145: Hoare triple {28257#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28257#false} is VALID [2018-11-14 18:50:58,296 INFO L273 TraceCheckUtils]: 146: Hoare triple {28257#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28257#false} is VALID [2018-11-14 18:50:58,297 INFO L273 TraceCheckUtils]: 147: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:58,297 INFO L273 TraceCheckUtils]: 148: Hoare triple {28257#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28257#false} is VALID [2018-11-14 18:50:58,297 INFO L273 TraceCheckUtils]: 149: Hoare triple {28257#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28257#false} is VALID [2018-11-14 18:50:58,297 INFO L273 TraceCheckUtils]: 150: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:58,297 INFO L273 TraceCheckUtils]: 151: Hoare triple {28257#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28257#false} is VALID [2018-11-14 18:50:58,297 INFO L273 TraceCheckUtils]: 152: Hoare triple {28257#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28257#false} is VALID [2018-11-14 18:50:58,297 INFO L273 TraceCheckUtils]: 153: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:58,297 INFO L273 TraceCheckUtils]: 154: Hoare triple {28257#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28257#false} is VALID [2018-11-14 18:50:58,297 INFO L273 TraceCheckUtils]: 155: Hoare triple {28257#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28257#false} is VALID [2018-11-14 18:50:58,297 INFO L273 TraceCheckUtils]: 156: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:58,298 INFO L273 TraceCheckUtils]: 157: Hoare triple {28257#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28257#false} is VALID [2018-11-14 18:50:58,298 INFO L273 TraceCheckUtils]: 158: Hoare triple {28257#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28257#false} is VALID [2018-11-14 18:50:58,298 INFO L273 TraceCheckUtils]: 159: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:58,298 INFO L273 TraceCheckUtils]: 160: Hoare triple {28257#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28257#false} is VALID [2018-11-14 18:50:58,298 INFO L273 TraceCheckUtils]: 161: Hoare triple {28257#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28257#false} is VALID [2018-11-14 18:50:58,298 INFO L273 TraceCheckUtils]: 162: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:58,298 INFO L273 TraceCheckUtils]: 163: Hoare triple {28257#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28257#false} is VALID [2018-11-14 18:50:58,298 INFO L273 TraceCheckUtils]: 164: Hoare triple {28257#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28257#false} is VALID [2018-11-14 18:50:58,298 INFO L273 TraceCheckUtils]: 165: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:58,298 INFO L273 TraceCheckUtils]: 166: Hoare triple {28257#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28257#false} is VALID [2018-11-14 18:50:58,299 INFO L273 TraceCheckUtils]: 167: Hoare triple {28257#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28257#false} is VALID [2018-11-14 18:50:58,299 INFO L273 TraceCheckUtils]: 168: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:58,299 INFO L273 TraceCheckUtils]: 169: Hoare triple {28257#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28257#false} is VALID [2018-11-14 18:50:58,299 INFO L273 TraceCheckUtils]: 170: Hoare triple {28257#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28257#false} is VALID [2018-11-14 18:50:58,299 INFO L273 TraceCheckUtils]: 171: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:58,299 INFO L273 TraceCheckUtils]: 172: Hoare triple {28257#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28257#false} is VALID [2018-11-14 18:50:58,299 INFO L273 TraceCheckUtils]: 173: Hoare triple {28257#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28257#false} is VALID [2018-11-14 18:50:58,299 INFO L273 TraceCheckUtils]: 174: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:58,299 INFO L273 TraceCheckUtils]: 175: Hoare triple {28257#false} assume !(~i~0 < 20); {28257#false} is VALID [2018-11-14 18:50:58,299 INFO L273 TraceCheckUtils]: 176: Hoare triple {28257#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {28257#false} is VALID [2018-11-14 18:50:58,300 INFO L273 TraceCheckUtils]: 177: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:58,300 INFO L268 TraceCheckUtils]: 178: Hoare quadruple {28257#false} {28257#false} #75#return; {28257#false} is VALID [2018-11-14 18:50:58,300 INFO L273 TraceCheckUtils]: 179: Hoare triple {28257#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; {28257#false} is VALID [2018-11-14 18:50:58,300 INFO L273 TraceCheckUtils]: 180: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:58,300 INFO L273 TraceCheckUtils]: 181: Hoare triple {28257#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {28257#false} is VALID [2018-11-14 18:50:58,300 INFO L273 TraceCheckUtils]: 182: Hoare triple {28257#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {28257#false} is VALID [2018-11-14 18:50:58,300 INFO L273 TraceCheckUtils]: 183: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:58,300 INFO L273 TraceCheckUtils]: 184: Hoare triple {28257#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {28257#false} is VALID [2018-11-14 18:50:58,300 INFO L273 TraceCheckUtils]: 185: Hoare triple {28257#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {28257#false} is VALID [2018-11-14 18:50:58,300 INFO L273 TraceCheckUtils]: 186: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:58,301 INFO L273 TraceCheckUtils]: 187: Hoare triple {28257#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {28257#false} is VALID [2018-11-14 18:50:58,301 INFO L273 TraceCheckUtils]: 188: Hoare triple {28257#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {28257#false} is VALID [2018-11-14 18:50:58,301 INFO L273 TraceCheckUtils]: 189: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:58,301 INFO L273 TraceCheckUtils]: 190: Hoare triple {28257#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {28257#false} is VALID [2018-11-14 18:50:58,301 INFO L273 TraceCheckUtils]: 191: Hoare triple {28257#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {28257#false} is VALID [2018-11-14 18:50:58,301 INFO L273 TraceCheckUtils]: 192: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:58,301 INFO L273 TraceCheckUtils]: 193: Hoare triple {28257#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {28257#false} is VALID [2018-11-14 18:50:58,301 INFO L273 TraceCheckUtils]: 194: Hoare triple {28257#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {28257#false} is VALID [2018-11-14 18:50:58,301 INFO L273 TraceCheckUtils]: 195: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:58,302 INFO L273 TraceCheckUtils]: 196: Hoare triple {28257#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {28257#false} is VALID [2018-11-14 18:50:58,302 INFO L273 TraceCheckUtils]: 197: Hoare triple {28257#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {28257#false} is VALID [2018-11-14 18:50:58,302 INFO L273 TraceCheckUtils]: 198: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:58,302 INFO L273 TraceCheckUtils]: 199: Hoare triple {28257#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {28257#false} is VALID [2018-11-14 18:50:58,302 INFO L273 TraceCheckUtils]: 200: Hoare triple {28257#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {28257#false} is VALID [2018-11-14 18:50:58,302 INFO L273 TraceCheckUtils]: 201: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:58,302 INFO L273 TraceCheckUtils]: 202: Hoare triple {28257#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {28257#false} is VALID [2018-11-14 18:50:58,302 INFO L273 TraceCheckUtils]: 203: Hoare triple {28257#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {28257#false} is VALID [2018-11-14 18:50:58,302 INFO L273 TraceCheckUtils]: 204: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:58,302 INFO L273 TraceCheckUtils]: 205: Hoare triple {28257#false} assume !(~i~2 < 19); {28257#false} is VALID [2018-11-14 18:50:58,303 INFO L273 TraceCheckUtils]: 206: Hoare triple {28257#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {28257#false} is VALID [2018-11-14 18:50:58,303 INFO L256 TraceCheckUtils]: 207: Hoare triple {28257#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {28257#false} is VALID [2018-11-14 18:50:58,303 INFO L273 TraceCheckUtils]: 208: Hoare triple {28257#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {28257#false} is VALID [2018-11-14 18:50:58,303 INFO L273 TraceCheckUtils]: 209: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:58,303 INFO L273 TraceCheckUtils]: 210: Hoare triple {28257#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28257#false} is VALID [2018-11-14 18:50:58,303 INFO L273 TraceCheckUtils]: 211: Hoare triple {28257#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28257#false} is VALID [2018-11-14 18:50:58,303 INFO L273 TraceCheckUtils]: 212: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:58,303 INFO L273 TraceCheckUtils]: 213: Hoare triple {28257#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28257#false} is VALID [2018-11-14 18:50:58,303 INFO L273 TraceCheckUtils]: 214: Hoare triple {28257#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28257#false} is VALID [2018-11-14 18:50:58,303 INFO L273 TraceCheckUtils]: 215: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:58,304 INFO L273 TraceCheckUtils]: 216: Hoare triple {28257#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28257#false} is VALID [2018-11-14 18:50:58,304 INFO L273 TraceCheckUtils]: 217: Hoare triple {28257#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28257#false} is VALID [2018-11-14 18:50:58,304 INFO L273 TraceCheckUtils]: 218: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:58,304 INFO L273 TraceCheckUtils]: 219: Hoare triple {28257#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28257#false} is VALID [2018-11-14 18:50:58,304 INFO L273 TraceCheckUtils]: 220: Hoare triple {28257#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28257#false} is VALID [2018-11-14 18:50:58,304 INFO L273 TraceCheckUtils]: 221: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:58,304 INFO L273 TraceCheckUtils]: 222: Hoare triple {28257#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28257#false} is VALID [2018-11-14 18:50:58,304 INFO L273 TraceCheckUtils]: 223: Hoare triple {28257#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28257#false} is VALID [2018-11-14 18:50:58,304 INFO L273 TraceCheckUtils]: 224: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:58,304 INFO L273 TraceCheckUtils]: 225: Hoare triple {28257#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28257#false} is VALID [2018-11-14 18:50:58,305 INFO L273 TraceCheckUtils]: 226: Hoare triple {28257#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28257#false} is VALID [2018-11-14 18:50:58,305 INFO L273 TraceCheckUtils]: 227: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:58,305 INFO L273 TraceCheckUtils]: 228: Hoare triple {28257#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28257#false} is VALID [2018-11-14 18:50:58,305 INFO L273 TraceCheckUtils]: 229: Hoare triple {28257#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28257#false} is VALID [2018-11-14 18:50:58,305 INFO L273 TraceCheckUtils]: 230: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:58,305 INFO L273 TraceCheckUtils]: 231: Hoare triple {28257#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28257#false} is VALID [2018-11-14 18:50:58,305 INFO L273 TraceCheckUtils]: 232: Hoare triple {28257#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28257#false} is VALID [2018-11-14 18:50:58,305 INFO L273 TraceCheckUtils]: 233: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:58,305 INFO L273 TraceCheckUtils]: 234: Hoare triple {28257#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28257#false} is VALID [2018-11-14 18:50:58,305 INFO L273 TraceCheckUtils]: 235: Hoare triple {28257#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28257#false} is VALID [2018-11-14 18:50:58,306 INFO L273 TraceCheckUtils]: 236: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:58,306 INFO L273 TraceCheckUtils]: 237: Hoare triple {28257#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28257#false} is VALID [2018-11-14 18:50:58,306 INFO L273 TraceCheckUtils]: 238: Hoare triple {28257#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28257#false} is VALID [2018-11-14 18:50:58,306 INFO L273 TraceCheckUtils]: 239: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:58,306 INFO L273 TraceCheckUtils]: 240: Hoare triple {28257#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28257#false} is VALID [2018-11-14 18:50:58,306 INFO L273 TraceCheckUtils]: 241: Hoare triple {28257#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28257#false} is VALID [2018-11-14 18:50:58,306 INFO L273 TraceCheckUtils]: 242: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:58,306 INFO L273 TraceCheckUtils]: 243: Hoare triple {28257#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28257#false} is VALID [2018-11-14 18:50:58,306 INFO L273 TraceCheckUtils]: 244: Hoare triple {28257#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28257#false} is VALID [2018-11-14 18:50:58,306 INFO L273 TraceCheckUtils]: 245: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:58,307 INFO L273 TraceCheckUtils]: 246: Hoare triple {28257#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28257#false} is VALID [2018-11-14 18:50:58,307 INFO L273 TraceCheckUtils]: 247: Hoare triple {28257#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28257#false} is VALID [2018-11-14 18:50:58,307 INFO L273 TraceCheckUtils]: 248: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:58,307 INFO L273 TraceCheckUtils]: 249: Hoare triple {28257#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28257#false} is VALID [2018-11-14 18:50:58,307 INFO L273 TraceCheckUtils]: 250: Hoare triple {28257#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28257#false} is VALID [2018-11-14 18:50:58,307 INFO L273 TraceCheckUtils]: 251: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:58,307 INFO L273 TraceCheckUtils]: 252: Hoare triple {28257#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28257#false} is VALID [2018-11-14 18:50:58,307 INFO L273 TraceCheckUtils]: 253: Hoare triple {28257#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28257#false} is VALID [2018-11-14 18:50:58,307 INFO L273 TraceCheckUtils]: 254: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:58,307 INFO L273 TraceCheckUtils]: 255: Hoare triple {28257#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {28257#false} is VALID [2018-11-14 18:50:58,308 INFO L273 TraceCheckUtils]: 256: Hoare triple {28257#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {28257#false} is VALID [2018-11-14 18:50:58,308 INFO L273 TraceCheckUtils]: 257: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:58,308 INFO L273 TraceCheckUtils]: 258: Hoare triple {28257#false} assume !(~i~0 < 20); {28257#false} is VALID [2018-11-14 18:50:58,308 INFO L273 TraceCheckUtils]: 259: Hoare triple {28257#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {28257#false} is VALID [2018-11-14 18:50:58,308 INFO L273 TraceCheckUtils]: 260: Hoare triple {28257#false} assume true; {28257#false} is VALID [2018-11-14 18:50:58,308 INFO L268 TraceCheckUtils]: 261: Hoare quadruple {28257#false} {28257#false} #77#return; {28257#false} is VALID [2018-11-14 18:50:58,308 INFO L273 TraceCheckUtils]: 262: Hoare triple {28257#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {28257#false} is VALID [2018-11-14 18:50:58,308 INFO L273 TraceCheckUtils]: 263: Hoare triple {28257#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {28257#false} is VALID [2018-11-14 18:50:58,308 INFO L273 TraceCheckUtils]: 264: Hoare triple {28257#false} assume !false; {28257#false} is VALID [2018-11-14 18:50:58,334 INFO L134 CoverageAnalysis]: Checked inductivity of 4400 backedges. 1670 proven. 392 refuted. 0 times theorem prover too weak. 2338 trivial. 0 not checked. [2018-11-14 18:50:58,357 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:50:58,357 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [19, 19] total 20 [2018-11-14 18:50:58,357 INFO L78 Accepts]: Start accepts. Automaton has 20 states. Word has length 265 [2018-11-14 18:50:58,359 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:50:58,359 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 20 states. [2018-11-14 18:50:58,444 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 99 edges. 99 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:50:58,445 INFO L459 AbstractCegarLoop]: Interpolant automaton has 20 states [2018-11-14 18:50:58,445 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2018-11-14 18:50:58,445 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=190, Invalid=190, Unknown=0, NotChecked=0, Total=380 [2018-11-14 18:50:58,446 INFO L87 Difference]: Start difference. First operand 158 states and 162 transitions. Second operand 20 states. [2018-11-14 18:50:58,973 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:58,974 INFO L93 Difference]: Finished difference Result 251 states and 261 transitions. [2018-11-14 18:50:58,974 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2018-11-14 18:50:58,974 INFO L78 Accepts]: Start accepts. Automaton has 20 states. Word has length 265 [2018-11-14 18:50:58,974 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:50:58,974 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 20 states. [2018-11-14 18:50:58,975 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 109 transitions. [2018-11-14 18:50:58,975 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 20 states. [2018-11-14 18:50:58,976 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 109 transitions. [2018-11-14 18:50:58,976 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 19 states and 109 transitions. [2018-11-14 18:50:59,111 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 109 edges. 109 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:50:59,114 INFO L225 Difference]: With dead ends: 251 [2018-11-14 18:50:59,115 INFO L226 Difference]: Without dead ends: 162 [2018-11-14 18:50:59,116 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 283 GetRequests, 265 SyntacticMatches, 0 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 30 ImplicationChecksByTransitivity, 1.5s TimeCoverageRelationStatistics Valid=190, Invalid=190, Unknown=0, NotChecked=0, Total=380 [2018-11-14 18:50:59,116 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 162 states. [2018-11-14 18:50:59,173 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 162 to 161. [2018-11-14 18:50:59,174 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:50:59,174 INFO L82 GeneralOperation]: Start isEquivalent. First operand 162 states. Second operand 161 states. [2018-11-14 18:50:59,174 INFO L74 IsIncluded]: Start isIncluded. First operand 162 states. Second operand 161 states. [2018-11-14 18:50:59,174 INFO L87 Difference]: Start difference. First operand 162 states. Second operand 161 states. [2018-11-14 18:50:59,177 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:59,178 INFO L93 Difference]: Finished difference Result 162 states and 166 transitions. [2018-11-14 18:50:59,178 INFO L276 IsEmpty]: Start isEmpty. Operand 162 states and 166 transitions. [2018-11-14 18:50:59,178 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:50:59,178 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:50:59,178 INFO L74 IsIncluded]: Start isIncluded. First operand 161 states. Second operand 162 states. [2018-11-14 18:50:59,178 INFO L87 Difference]: Start difference. First operand 161 states. Second operand 162 states. [2018-11-14 18:50:59,180 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:50:59,181 INFO L93 Difference]: Finished difference Result 162 states and 166 transitions. [2018-11-14 18:50:59,181 INFO L276 IsEmpty]: Start isEmpty. Operand 162 states and 166 transitions. [2018-11-14 18:50:59,181 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:50:59,181 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:50:59,181 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:50:59,181 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:50:59,181 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 161 states. [2018-11-14 18:50:59,183 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 161 states to 161 states and 165 transitions. [2018-11-14 18:50:59,183 INFO L78 Accepts]: Start accepts. Automaton has 161 states and 165 transitions. Word has length 265 [2018-11-14 18:50:59,184 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:50:59,184 INFO L480 AbstractCegarLoop]: Abstraction has 161 states and 165 transitions. [2018-11-14 18:50:59,184 INFO L481 AbstractCegarLoop]: Interpolant automaton has 20 states. [2018-11-14 18:50:59,184 INFO L276 IsEmpty]: Start isEmpty. Operand 161 states and 165 transitions. [2018-11-14 18:50:59,185 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 275 [2018-11-14 18:50:59,185 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:50:59,185 INFO L375 BasicCegarLoop]: trace histogram [54, 51, 51, 21, 20, 20, 9, 8, 8, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:50:59,185 INFO L423 AbstractCegarLoop]: === Iteration 34 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:50:59,186 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:50:59,186 INFO L82 PathProgramCache]: Analyzing trace with hash -1449369883, now seen corresponding path program 30 times [2018-11-14 18:50:59,186 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:50:59,186 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:50:59,187 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:50:59,187 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 18:50:59,187 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:50:59,219 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:51:00,512 INFO L256 TraceCheckUtils]: 0: Hoare triple {29947#true} call ULTIMATE.init(); {29947#true} is VALID [2018-11-14 18:51:00,513 INFO L273 TraceCheckUtils]: 1: Hoare triple {29947#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {29947#true} is VALID [2018-11-14 18:51:00,513 INFO L273 TraceCheckUtils]: 2: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,513 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {29947#true} {29947#true} #69#return; {29947#true} is VALID [2018-11-14 18:51:00,513 INFO L256 TraceCheckUtils]: 4: Hoare triple {29947#true} call #t~ret12 := main(); {29947#true} is VALID [2018-11-14 18:51:00,513 INFO L273 TraceCheckUtils]: 5: Hoare triple {29947#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {29947#true} is VALID [2018-11-14 18:51:00,513 INFO L273 TraceCheckUtils]: 6: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,514 INFO L273 TraceCheckUtils]: 7: Hoare triple {29947#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {29947#true} is VALID [2018-11-14 18:51:00,514 INFO L273 TraceCheckUtils]: 8: Hoare triple {29947#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {29947#true} is VALID [2018-11-14 18:51:00,514 INFO L273 TraceCheckUtils]: 9: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,514 INFO L273 TraceCheckUtils]: 10: Hoare triple {29947#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {29947#true} is VALID [2018-11-14 18:51:00,514 INFO L273 TraceCheckUtils]: 11: Hoare triple {29947#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {29947#true} is VALID [2018-11-14 18:51:00,515 INFO L273 TraceCheckUtils]: 12: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,515 INFO L273 TraceCheckUtils]: 13: Hoare triple {29947#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {29947#true} is VALID [2018-11-14 18:51:00,515 INFO L273 TraceCheckUtils]: 14: Hoare triple {29947#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {29947#true} is VALID [2018-11-14 18:51:00,515 INFO L273 TraceCheckUtils]: 15: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,515 INFO L273 TraceCheckUtils]: 16: Hoare triple {29947#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {29947#true} is VALID [2018-11-14 18:51:00,515 INFO L273 TraceCheckUtils]: 17: Hoare triple {29947#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {29947#true} is VALID [2018-11-14 18:51:00,515 INFO L273 TraceCheckUtils]: 18: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,515 INFO L273 TraceCheckUtils]: 19: Hoare triple {29947#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {29947#true} is VALID [2018-11-14 18:51:00,515 INFO L273 TraceCheckUtils]: 20: Hoare triple {29947#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {29947#true} is VALID [2018-11-14 18:51:00,515 INFO L273 TraceCheckUtils]: 21: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,516 INFO L273 TraceCheckUtils]: 22: Hoare triple {29947#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {29947#true} is VALID [2018-11-14 18:51:00,516 INFO L273 TraceCheckUtils]: 23: Hoare triple {29947#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {29947#true} is VALID [2018-11-14 18:51:00,516 INFO L273 TraceCheckUtils]: 24: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,516 INFO L273 TraceCheckUtils]: 25: Hoare triple {29947#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {29947#true} is VALID [2018-11-14 18:51:00,516 INFO L273 TraceCheckUtils]: 26: Hoare triple {29947#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {29947#true} is VALID [2018-11-14 18:51:00,516 INFO L273 TraceCheckUtils]: 27: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,516 INFO L273 TraceCheckUtils]: 28: Hoare triple {29947#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {29947#true} is VALID [2018-11-14 18:51:00,516 INFO L273 TraceCheckUtils]: 29: Hoare triple {29947#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {29947#true} is VALID [2018-11-14 18:51:00,516 INFO L273 TraceCheckUtils]: 30: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,516 INFO L273 TraceCheckUtils]: 31: Hoare triple {29947#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {29947#true} is VALID [2018-11-14 18:51:00,517 INFO L273 TraceCheckUtils]: 32: Hoare triple {29947#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {29947#true} is VALID [2018-11-14 18:51:00,517 INFO L273 TraceCheckUtils]: 33: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,517 INFO L273 TraceCheckUtils]: 34: Hoare triple {29947#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {29947#true} is VALID [2018-11-14 18:51:00,517 INFO L273 TraceCheckUtils]: 35: Hoare triple {29947#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {29947#true} is VALID [2018-11-14 18:51:00,517 INFO L273 TraceCheckUtils]: 36: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,517 INFO L273 TraceCheckUtils]: 37: Hoare triple {29947#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {29947#true} is VALID [2018-11-14 18:51:00,517 INFO L273 TraceCheckUtils]: 38: Hoare triple {29947#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {29947#true} is VALID [2018-11-14 18:51:00,517 INFO L273 TraceCheckUtils]: 39: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,517 INFO L273 TraceCheckUtils]: 40: Hoare triple {29947#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {29947#true} is VALID [2018-11-14 18:51:00,518 INFO L273 TraceCheckUtils]: 41: Hoare triple {29947#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {29947#true} is VALID [2018-11-14 18:51:00,518 INFO L273 TraceCheckUtils]: 42: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,518 INFO L273 TraceCheckUtils]: 43: Hoare triple {29947#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {29947#true} is VALID [2018-11-14 18:51:00,518 INFO L273 TraceCheckUtils]: 44: Hoare triple {29947#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {29947#true} is VALID [2018-11-14 18:51:00,518 INFO L273 TraceCheckUtils]: 45: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,518 INFO L273 TraceCheckUtils]: 46: Hoare triple {29947#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {29947#true} is VALID [2018-11-14 18:51:00,518 INFO L273 TraceCheckUtils]: 47: Hoare triple {29947#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {29947#true} is VALID [2018-11-14 18:51:00,518 INFO L273 TraceCheckUtils]: 48: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,518 INFO L273 TraceCheckUtils]: 49: Hoare triple {29947#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {29947#true} is VALID [2018-11-14 18:51:00,518 INFO L273 TraceCheckUtils]: 50: Hoare triple {29947#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {29947#true} is VALID [2018-11-14 18:51:00,519 INFO L273 TraceCheckUtils]: 51: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,519 INFO L273 TraceCheckUtils]: 52: Hoare triple {29947#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {29947#true} is VALID [2018-11-14 18:51:00,519 INFO L273 TraceCheckUtils]: 53: Hoare triple {29947#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {29947#true} is VALID [2018-11-14 18:51:00,519 INFO L273 TraceCheckUtils]: 54: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,519 INFO L273 TraceCheckUtils]: 55: Hoare triple {29947#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {29947#true} is VALID [2018-11-14 18:51:00,519 INFO L273 TraceCheckUtils]: 56: Hoare triple {29947#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {29947#true} is VALID [2018-11-14 18:51:00,519 INFO L273 TraceCheckUtils]: 57: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,519 INFO L273 TraceCheckUtils]: 58: Hoare triple {29947#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {29947#true} is VALID [2018-11-14 18:51:00,519 INFO L273 TraceCheckUtils]: 59: Hoare triple {29947#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {29947#true} is VALID [2018-11-14 18:51:00,519 INFO L273 TraceCheckUtils]: 60: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,520 INFO L273 TraceCheckUtils]: 61: Hoare triple {29947#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {29947#true} is VALID [2018-11-14 18:51:00,520 INFO L273 TraceCheckUtils]: 62: Hoare triple {29947#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {29947#true} is VALID [2018-11-14 18:51:00,520 INFO L273 TraceCheckUtils]: 63: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,520 INFO L273 TraceCheckUtils]: 64: Hoare triple {29947#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {29947#true} is VALID [2018-11-14 18:51:00,520 INFO L273 TraceCheckUtils]: 65: Hoare triple {29947#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {29947#true} is VALID [2018-11-14 18:51:00,520 INFO L273 TraceCheckUtils]: 66: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,520 INFO L273 TraceCheckUtils]: 67: Hoare triple {29947#true} assume !(~i~1 < 20); {29947#true} is VALID [2018-11-14 18:51:00,520 INFO L256 TraceCheckUtils]: 68: Hoare triple {29947#true} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {29947#true} is VALID [2018-11-14 18:51:00,521 INFO L273 TraceCheckUtils]: 69: Hoare triple {29947#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {29949#(= avg_~i~0 0)} is VALID [2018-11-14 18:51:00,521 INFO L273 TraceCheckUtils]: 70: Hoare triple {29949#(= avg_~i~0 0)} assume true; {29949#(= avg_~i~0 0)} is VALID [2018-11-14 18:51:00,521 INFO L273 TraceCheckUtils]: 71: Hoare triple {29949#(= avg_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29949#(= avg_~i~0 0)} is VALID [2018-11-14 18:51:00,522 INFO L273 TraceCheckUtils]: 72: Hoare triple {29949#(= avg_~i~0 0)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29950#(<= avg_~i~0 1)} is VALID [2018-11-14 18:51:00,522 INFO L273 TraceCheckUtils]: 73: Hoare triple {29950#(<= avg_~i~0 1)} assume true; {29950#(<= avg_~i~0 1)} is VALID [2018-11-14 18:51:00,522 INFO L273 TraceCheckUtils]: 74: Hoare triple {29950#(<= avg_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29950#(<= avg_~i~0 1)} is VALID [2018-11-14 18:51:00,523 INFO L273 TraceCheckUtils]: 75: Hoare triple {29950#(<= avg_~i~0 1)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29951#(<= avg_~i~0 2)} is VALID [2018-11-14 18:51:00,523 INFO L273 TraceCheckUtils]: 76: Hoare triple {29951#(<= avg_~i~0 2)} assume true; {29951#(<= avg_~i~0 2)} is VALID [2018-11-14 18:51:00,523 INFO L273 TraceCheckUtils]: 77: Hoare triple {29951#(<= avg_~i~0 2)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29951#(<= avg_~i~0 2)} is VALID [2018-11-14 18:51:00,524 INFO L273 TraceCheckUtils]: 78: Hoare triple {29951#(<= avg_~i~0 2)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29952#(<= avg_~i~0 3)} is VALID [2018-11-14 18:51:00,524 INFO L273 TraceCheckUtils]: 79: Hoare triple {29952#(<= avg_~i~0 3)} assume true; {29952#(<= avg_~i~0 3)} is VALID [2018-11-14 18:51:00,525 INFO L273 TraceCheckUtils]: 80: Hoare triple {29952#(<= avg_~i~0 3)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29952#(<= avg_~i~0 3)} is VALID [2018-11-14 18:51:00,526 INFO L273 TraceCheckUtils]: 81: Hoare triple {29952#(<= avg_~i~0 3)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29953#(<= avg_~i~0 4)} is VALID [2018-11-14 18:51:00,526 INFO L273 TraceCheckUtils]: 82: Hoare triple {29953#(<= avg_~i~0 4)} assume true; {29953#(<= avg_~i~0 4)} is VALID [2018-11-14 18:51:00,526 INFO L273 TraceCheckUtils]: 83: Hoare triple {29953#(<= avg_~i~0 4)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29953#(<= avg_~i~0 4)} is VALID [2018-11-14 18:51:00,527 INFO L273 TraceCheckUtils]: 84: Hoare triple {29953#(<= avg_~i~0 4)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29954#(<= avg_~i~0 5)} is VALID [2018-11-14 18:51:00,528 INFO L273 TraceCheckUtils]: 85: Hoare triple {29954#(<= avg_~i~0 5)} assume true; {29954#(<= avg_~i~0 5)} is VALID [2018-11-14 18:51:00,528 INFO L273 TraceCheckUtils]: 86: Hoare triple {29954#(<= avg_~i~0 5)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29954#(<= avg_~i~0 5)} is VALID [2018-11-14 18:51:00,529 INFO L273 TraceCheckUtils]: 87: Hoare triple {29954#(<= avg_~i~0 5)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29955#(<= avg_~i~0 6)} is VALID [2018-11-14 18:51:00,529 INFO L273 TraceCheckUtils]: 88: Hoare triple {29955#(<= avg_~i~0 6)} assume true; {29955#(<= avg_~i~0 6)} is VALID [2018-11-14 18:51:00,530 INFO L273 TraceCheckUtils]: 89: Hoare triple {29955#(<= avg_~i~0 6)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29955#(<= avg_~i~0 6)} is VALID [2018-11-14 18:51:00,531 INFO L273 TraceCheckUtils]: 90: Hoare triple {29955#(<= avg_~i~0 6)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29956#(<= avg_~i~0 7)} is VALID [2018-11-14 18:51:00,531 INFO L273 TraceCheckUtils]: 91: Hoare triple {29956#(<= avg_~i~0 7)} assume true; {29956#(<= avg_~i~0 7)} is VALID [2018-11-14 18:51:00,532 INFO L273 TraceCheckUtils]: 92: Hoare triple {29956#(<= avg_~i~0 7)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29956#(<= avg_~i~0 7)} is VALID [2018-11-14 18:51:00,532 INFO L273 TraceCheckUtils]: 93: Hoare triple {29956#(<= avg_~i~0 7)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29957#(<= avg_~i~0 8)} is VALID [2018-11-14 18:51:00,533 INFO L273 TraceCheckUtils]: 94: Hoare triple {29957#(<= avg_~i~0 8)} assume true; {29957#(<= avg_~i~0 8)} is VALID [2018-11-14 18:51:00,533 INFO L273 TraceCheckUtils]: 95: Hoare triple {29957#(<= avg_~i~0 8)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29957#(<= avg_~i~0 8)} is VALID [2018-11-14 18:51:00,534 INFO L273 TraceCheckUtils]: 96: Hoare triple {29957#(<= avg_~i~0 8)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29958#(<= avg_~i~0 9)} is VALID [2018-11-14 18:51:00,534 INFO L273 TraceCheckUtils]: 97: Hoare triple {29958#(<= avg_~i~0 9)} assume true; {29958#(<= avg_~i~0 9)} is VALID [2018-11-14 18:51:00,535 INFO L273 TraceCheckUtils]: 98: Hoare triple {29958#(<= avg_~i~0 9)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29958#(<= avg_~i~0 9)} is VALID [2018-11-14 18:51:00,536 INFO L273 TraceCheckUtils]: 99: Hoare triple {29958#(<= avg_~i~0 9)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29959#(<= avg_~i~0 10)} is VALID [2018-11-14 18:51:00,536 INFO L273 TraceCheckUtils]: 100: Hoare triple {29959#(<= avg_~i~0 10)} assume true; {29959#(<= avg_~i~0 10)} is VALID [2018-11-14 18:51:00,537 INFO L273 TraceCheckUtils]: 101: Hoare triple {29959#(<= avg_~i~0 10)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29959#(<= avg_~i~0 10)} is VALID [2018-11-14 18:51:00,537 INFO L273 TraceCheckUtils]: 102: Hoare triple {29959#(<= avg_~i~0 10)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29960#(<= avg_~i~0 11)} is VALID [2018-11-14 18:51:00,538 INFO L273 TraceCheckUtils]: 103: Hoare triple {29960#(<= avg_~i~0 11)} assume true; {29960#(<= avg_~i~0 11)} is VALID [2018-11-14 18:51:00,538 INFO L273 TraceCheckUtils]: 104: Hoare triple {29960#(<= avg_~i~0 11)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29960#(<= avg_~i~0 11)} is VALID [2018-11-14 18:51:00,539 INFO L273 TraceCheckUtils]: 105: Hoare triple {29960#(<= avg_~i~0 11)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29961#(<= avg_~i~0 12)} is VALID [2018-11-14 18:51:00,539 INFO L273 TraceCheckUtils]: 106: Hoare triple {29961#(<= avg_~i~0 12)} assume true; {29961#(<= avg_~i~0 12)} is VALID [2018-11-14 18:51:00,540 INFO L273 TraceCheckUtils]: 107: Hoare triple {29961#(<= avg_~i~0 12)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29961#(<= avg_~i~0 12)} is VALID [2018-11-14 18:51:00,541 INFO L273 TraceCheckUtils]: 108: Hoare triple {29961#(<= avg_~i~0 12)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29962#(<= avg_~i~0 13)} is VALID [2018-11-14 18:51:00,541 INFO L273 TraceCheckUtils]: 109: Hoare triple {29962#(<= avg_~i~0 13)} assume true; {29962#(<= avg_~i~0 13)} is VALID [2018-11-14 18:51:00,542 INFO L273 TraceCheckUtils]: 110: Hoare triple {29962#(<= avg_~i~0 13)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29962#(<= avg_~i~0 13)} is VALID [2018-11-14 18:51:00,542 INFO L273 TraceCheckUtils]: 111: Hoare triple {29962#(<= avg_~i~0 13)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29963#(<= avg_~i~0 14)} is VALID [2018-11-14 18:51:00,543 INFO L273 TraceCheckUtils]: 112: Hoare triple {29963#(<= avg_~i~0 14)} assume true; {29963#(<= avg_~i~0 14)} is VALID [2018-11-14 18:51:00,543 INFO L273 TraceCheckUtils]: 113: Hoare triple {29963#(<= avg_~i~0 14)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29963#(<= avg_~i~0 14)} is VALID [2018-11-14 18:51:00,544 INFO L273 TraceCheckUtils]: 114: Hoare triple {29963#(<= avg_~i~0 14)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29964#(<= avg_~i~0 15)} is VALID [2018-11-14 18:51:00,544 INFO L273 TraceCheckUtils]: 115: Hoare triple {29964#(<= avg_~i~0 15)} assume true; {29964#(<= avg_~i~0 15)} is VALID [2018-11-14 18:51:00,545 INFO L273 TraceCheckUtils]: 116: Hoare triple {29964#(<= avg_~i~0 15)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29964#(<= avg_~i~0 15)} is VALID [2018-11-14 18:51:00,545 INFO L273 TraceCheckUtils]: 117: Hoare triple {29964#(<= avg_~i~0 15)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29965#(<= avg_~i~0 16)} is VALID [2018-11-14 18:51:00,546 INFO L273 TraceCheckUtils]: 118: Hoare triple {29965#(<= avg_~i~0 16)} assume true; {29965#(<= avg_~i~0 16)} is VALID [2018-11-14 18:51:00,546 INFO L273 TraceCheckUtils]: 119: Hoare triple {29965#(<= avg_~i~0 16)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29965#(<= avg_~i~0 16)} is VALID [2018-11-14 18:51:00,547 INFO L273 TraceCheckUtils]: 120: Hoare triple {29965#(<= avg_~i~0 16)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29966#(<= avg_~i~0 17)} is VALID [2018-11-14 18:51:00,548 INFO L273 TraceCheckUtils]: 121: Hoare triple {29966#(<= avg_~i~0 17)} assume true; {29966#(<= avg_~i~0 17)} is VALID [2018-11-14 18:51:00,548 INFO L273 TraceCheckUtils]: 122: Hoare triple {29966#(<= avg_~i~0 17)} assume !(~i~0 < 20); {29948#false} is VALID [2018-11-14 18:51:00,548 INFO L273 TraceCheckUtils]: 123: Hoare triple {29948#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {29948#false} is VALID [2018-11-14 18:51:00,549 INFO L273 TraceCheckUtils]: 124: Hoare triple {29948#false} assume true; {29948#false} is VALID [2018-11-14 18:51:00,549 INFO L268 TraceCheckUtils]: 125: Hoare quadruple {29948#false} {29947#true} #73#return; {29948#false} is VALID [2018-11-14 18:51:00,549 INFO L273 TraceCheckUtils]: 126: Hoare triple {29948#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); {29948#false} is VALID [2018-11-14 18:51:00,549 INFO L256 TraceCheckUtils]: 127: Hoare triple {29948#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {29947#true} is VALID [2018-11-14 18:51:00,549 INFO L273 TraceCheckUtils]: 128: Hoare triple {29947#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {29947#true} is VALID [2018-11-14 18:51:00,549 INFO L273 TraceCheckUtils]: 129: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,550 INFO L273 TraceCheckUtils]: 130: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:00,550 INFO L273 TraceCheckUtils]: 131: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:00,550 INFO L273 TraceCheckUtils]: 132: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,550 INFO L273 TraceCheckUtils]: 133: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:00,550 INFO L273 TraceCheckUtils]: 134: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:00,550 INFO L273 TraceCheckUtils]: 135: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,551 INFO L273 TraceCheckUtils]: 136: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:00,551 INFO L273 TraceCheckUtils]: 137: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:00,551 INFO L273 TraceCheckUtils]: 138: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,551 INFO L273 TraceCheckUtils]: 139: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:00,551 INFO L273 TraceCheckUtils]: 140: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:00,551 INFO L273 TraceCheckUtils]: 141: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,551 INFO L273 TraceCheckUtils]: 142: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:00,551 INFO L273 TraceCheckUtils]: 143: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:00,551 INFO L273 TraceCheckUtils]: 144: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,551 INFO L273 TraceCheckUtils]: 145: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:00,552 INFO L273 TraceCheckUtils]: 146: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:00,552 INFO L273 TraceCheckUtils]: 147: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,552 INFO L273 TraceCheckUtils]: 148: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:00,552 INFO L273 TraceCheckUtils]: 149: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:00,552 INFO L273 TraceCheckUtils]: 150: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,552 INFO L273 TraceCheckUtils]: 151: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:00,552 INFO L273 TraceCheckUtils]: 152: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:00,552 INFO L273 TraceCheckUtils]: 153: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,552 INFO L273 TraceCheckUtils]: 154: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:00,552 INFO L273 TraceCheckUtils]: 155: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:00,553 INFO L273 TraceCheckUtils]: 156: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,553 INFO L273 TraceCheckUtils]: 157: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:00,553 INFO L273 TraceCheckUtils]: 158: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:00,553 INFO L273 TraceCheckUtils]: 159: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,553 INFO L273 TraceCheckUtils]: 160: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:00,553 INFO L273 TraceCheckUtils]: 161: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:00,553 INFO L273 TraceCheckUtils]: 162: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,553 INFO L273 TraceCheckUtils]: 163: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:00,553 INFO L273 TraceCheckUtils]: 164: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:00,553 INFO L273 TraceCheckUtils]: 165: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,554 INFO L273 TraceCheckUtils]: 166: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:00,554 INFO L273 TraceCheckUtils]: 167: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:00,554 INFO L273 TraceCheckUtils]: 168: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,554 INFO L273 TraceCheckUtils]: 169: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:00,554 INFO L273 TraceCheckUtils]: 170: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:00,554 INFO L273 TraceCheckUtils]: 171: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,554 INFO L273 TraceCheckUtils]: 172: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:00,554 INFO L273 TraceCheckUtils]: 173: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:00,554 INFO L273 TraceCheckUtils]: 174: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,554 INFO L273 TraceCheckUtils]: 175: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:00,555 INFO L273 TraceCheckUtils]: 176: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:00,555 INFO L273 TraceCheckUtils]: 177: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,555 INFO L273 TraceCheckUtils]: 178: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:00,555 INFO L273 TraceCheckUtils]: 179: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:00,555 INFO L273 TraceCheckUtils]: 180: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,555 INFO L273 TraceCheckUtils]: 181: Hoare triple {29947#true} assume !(~i~0 < 20); {29947#true} is VALID [2018-11-14 18:51:00,555 INFO L273 TraceCheckUtils]: 182: Hoare triple {29947#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {29947#true} is VALID [2018-11-14 18:51:00,555 INFO L273 TraceCheckUtils]: 183: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,555 INFO L268 TraceCheckUtils]: 184: Hoare quadruple {29947#true} {29948#false} #75#return; {29948#false} is VALID [2018-11-14 18:51:00,556 INFO L273 TraceCheckUtils]: 185: Hoare triple {29948#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; {29948#false} is VALID [2018-11-14 18:51:00,556 INFO L273 TraceCheckUtils]: 186: Hoare triple {29948#false} assume true; {29948#false} is VALID [2018-11-14 18:51:00,556 INFO L273 TraceCheckUtils]: 187: Hoare triple {29948#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {29948#false} is VALID [2018-11-14 18:51:00,556 INFO L273 TraceCheckUtils]: 188: Hoare triple {29948#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {29948#false} is VALID [2018-11-14 18:51:00,556 INFO L273 TraceCheckUtils]: 189: Hoare triple {29948#false} assume true; {29948#false} is VALID [2018-11-14 18:51:00,556 INFO L273 TraceCheckUtils]: 190: Hoare triple {29948#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {29948#false} is VALID [2018-11-14 18:51:00,556 INFO L273 TraceCheckUtils]: 191: Hoare triple {29948#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {29948#false} is VALID [2018-11-14 18:51:00,556 INFO L273 TraceCheckUtils]: 192: Hoare triple {29948#false} assume true; {29948#false} is VALID [2018-11-14 18:51:00,556 INFO L273 TraceCheckUtils]: 193: Hoare triple {29948#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {29948#false} is VALID [2018-11-14 18:51:00,556 INFO L273 TraceCheckUtils]: 194: Hoare triple {29948#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {29948#false} is VALID [2018-11-14 18:51:00,557 INFO L273 TraceCheckUtils]: 195: Hoare triple {29948#false} assume true; {29948#false} is VALID [2018-11-14 18:51:00,557 INFO L273 TraceCheckUtils]: 196: Hoare triple {29948#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {29948#false} is VALID [2018-11-14 18:51:00,557 INFO L273 TraceCheckUtils]: 197: Hoare triple {29948#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {29948#false} is VALID [2018-11-14 18:51:00,557 INFO L273 TraceCheckUtils]: 198: Hoare triple {29948#false} assume true; {29948#false} is VALID [2018-11-14 18:51:00,557 INFO L273 TraceCheckUtils]: 199: Hoare triple {29948#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {29948#false} is VALID [2018-11-14 18:51:00,557 INFO L273 TraceCheckUtils]: 200: Hoare triple {29948#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {29948#false} is VALID [2018-11-14 18:51:00,557 INFO L273 TraceCheckUtils]: 201: Hoare triple {29948#false} assume true; {29948#false} is VALID [2018-11-14 18:51:00,557 INFO L273 TraceCheckUtils]: 202: Hoare triple {29948#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {29948#false} is VALID [2018-11-14 18:51:00,557 INFO L273 TraceCheckUtils]: 203: Hoare triple {29948#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {29948#false} is VALID [2018-11-14 18:51:00,557 INFO L273 TraceCheckUtils]: 204: Hoare triple {29948#false} assume true; {29948#false} is VALID [2018-11-14 18:51:00,558 INFO L273 TraceCheckUtils]: 205: Hoare triple {29948#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {29948#false} is VALID [2018-11-14 18:51:00,558 INFO L273 TraceCheckUtils]: 206: Hoare triple {29948#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {29948#false} is VALID [2018-11-14 18:51:00,558 INFO L273 TraceCheckUtils]: 207: Hoare triple {29948#false} assume true; {29948#false} is VALID [2018-11-14 18:51:00,558 INFO L273 TraceCheckUtils]: 208: Hoare triple {29948#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {29948#false} is VALID [2018-11-14 18:51:00,558 INFO L273 TraceCheckUtils]: 209: Hoare triple {29948#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {29948#false} is VALID [2018-11-14 18:51:00,558 INFO L273 TraceCheckUtils]: 210: Hoare triple {29948#false} assume true; {29948#false} is VALID [2018-11-14 18:51:00,558 INFO L273 TraceCheckUtils]: 211: Hoare triple {29948#false} assume !(~i~2 < 19); {29948#false} is VALID [2018-11-14 18:51:00,558 INFO L273 TraceCheckUtils]: 212: Hoare triple {29948#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {29948#false} is VALID [2018-11-14 18:51:00,558 INFO L256 TraceCheckUtils]: 213: Hoare triple {29948#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {29947#true} is VALID [2018-11-14 18:51:00,558 INFO L273 TraceCheckUtils]: 214: Hoare triple {29947#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {29947#true} is VALID [2018-11-14 18:51:00,559 INFO L273 TraceCheckUtils]: 215: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,559 INFO L273 TraceCheckUtils]: 216: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:00,559 INFO L273 TraceCheckUtils]: 217: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:00,559 INFO L273 TraceCheckUtils]: 218: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,559 INFO L273 TraceCheckUtils]: 219: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:00,559 INFO L273 TraceCheckUtils]: 220: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:00,559 INFO L273 TraceCheckUtils]: 221: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,559 INFO L273 TraceCheckUtils]: 222: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:00,559 INFO L273 TraceCheckUtils]: 223: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:00,559 INFO L273 TraceCheckUtils]: 224: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,560 INFO L273 TraceCheckUtils]: 225: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:00,560 INFO L273 TraceCheckUtils]: 226: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:00,560 INFO L273 TraceCheckUtils]: 227: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,560 INFO L273 TraceCheckUtils]: 228: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:00,560 INFO L273 TraceCheckUtils]: 229: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:00,560 INFO L273 TraceCheckUtils]: 230: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,560 INFO L273 TraceCheckUtils]: 231: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:00,560 INFO L273 TraceCheckUtils]: 232: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:00,560 INFO L273 TraceCheckUtils]: 233: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,560 INFO L273 TraceCheckUtils]: 234: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:00,561 INFO L273 TraceCheckUtils]: 235: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:00,561 INFO L273 TraceCheckUtils]: 236: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,561 INFO L273 TraceCheckUtils]: 237: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:00,561 INFO L273 TraceCheckUtils]: 238: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:00,561 INFO L273 TraceCheckUtils]: 239: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,561 INFO L273 TraceCheckUtils]: 240: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:00,561 INFO L273 TraceCheckUtils]: 241: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:00,561 INFO L273 TraceCheckUtils]: 242: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,561 INFO L273 TraceCheckUtils]: 243: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:00,562 INFO L273 TraceCheckUtils]: 244: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:00,562 INFO L273 TraceCheckUtils]: 245: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,562 INFO L273 TraceCheckUtils]: 246: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:00,562 INFO L273 TraceCheckUtils]: 247: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:00,562 INFO L273 TraceCheckUtils]: 248: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,562 INFO L273 TraceCheckUtils]: 249: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:00,562 INFO L273 TraceCheckUtils]: 250: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:00,562 INFO L273 TraceCheckUtils]: 251: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,562 INFO L273 TraceCheckUtils]: 252: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:00,562 INFO L273 TraceCheckUtils]: 253: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:00,563 INFO L273 TraceCheckUtils]: 254: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,563 INFO L273 TraceCheckUtils]: 255: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:00,563 INFO L273 TraceCheckUtils]: 256: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:00,563 INFO L273 TraceCheckUtils]: 257: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,563 INFO L273 TraceCheckUtils]: 258: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:00,563 INFO L273 TraceCheckUtils]: 259: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:00,563 INFO L273 TraceCheckUtils]: 260: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,563 INFO L273 TraceCheckUtils]: 261: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:00,563 INFO L273 TraceCheckUtils]: 262: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:00,563 INFO L273 TraceCheckUtils]: 263: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,564 INFO L273 TraceCheckUtils]: 264: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:00,564 INFO L273 TraceCheckUtils]: 265: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:00,564 INFO L273 TraceCheckUtils]: 266: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,564 INFO L273 TraceCheckUtils]: 267: Hoare triple {29947#true} assume !(~i~0 < 20); {29947#true} is VALID [2018-11-14 18:51:00,564 INFO L273 TraceCheckUtils]: 268: Hoare triple {29947#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {29947#true} is VALID [2018-11-14 18:51:00,564 INFO L273 TraceCheckUtils]: 269: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:00,564 INFO L268 TraceCheckUtils]: 270: Hoare quadruple {29947#true} {29948#false} #77#return; {29948#false} is VALID [2018-11-14 18:51:00,564 INFO L273 TraceCheckUtils]: 271: Hoare triple {29948#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {29948#false} is VALID [2018-11-14 18:51:00,564 INFO L273 TraceCheckUtils]: 272: Hoare triple {29948#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {29948#false} is VALID [2018-11-14 18:51:00,565 INFO L273 TraceCheckUtils]: 273: Hoare triple {29948#false} assume !false; {29948#false} is VALID [2018-11-14 18:51:00,592 INFO L134 CoverageAnalysis]: Checked inductivity of 4859 backedges. 0 proven. 2322 refuted. 0 times theorem prover too weak. 2537 trivial. 0 not checked. [2018-11-14 18:51:00,592 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:51:00,593 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 32 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 32 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:51:00,602 INFO L103 rtionOrderModulation]: Keeping assertion order MIX_INSIDE_OUTSIDE [2018-11-14 18:51:00,932 INFO L249 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 19 check-sat command(s) [2018-11-14 18:51:00,932 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 18:51:00,974 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:51:00,977 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:51:01,378 INFO L256 TraceCheckUtils]: 0: Hoare triple {29947#true} call ULTIMATE.init(); {29947#true} is VALID [2018-11-14 18:51:01,378 INFO L273 TraceCheckUtils]: 1: Hoare triple {29947#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {29947#true} is VALID [2018-11-14 18:51:01,378 INFO L273 TraceCheckUtils]: 2: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,379 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {29947#true} {29947#true} #69#return; {29947#true} is VALID [2018-11-14 18:51:01,379 INFO L256 TraceCheckUtils]: 4: Hoare triple {29947#true} call #t~ret12 := main(); {29947#true} is VALID [2018-11-14 18:51:01,379 INFO L273 TraceCheckUtils]: 5: Hoare triple {29947#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {29947#true} is VALID [2018-11-14 18:51:01,379 INFO L273 TraceCheckUtils]: 6: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,379 INFO L273 TraceCheckUtils]: 7: Hoare triple {29947#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {29947#true} is VALID [2018-11-14 18:51:01,379 INFO L273 TraceCheckUtils]: 8: Hoare triple {29947#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {29947#true} is VALID [2018-11-14 18:51:01,380 INFO L273 TraceCheckUtils]: 9: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,380 INFO L273 TraceCheckUtils]: 10: Hoare triple {29947#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {29947#true} is VALID [2018-11-14 18:51:01,380 INFO L273 TraceCheckUtils]: 11: Hoare triple {29947#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {29947#true} is VALID [2018-11-14 18:51:01,380 INFO L273 TraceCheckUtils]: 12: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,380 INFO L273 TraceCheckUtils]: 13: Hoare triple {29947#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {29947#true} is VALID [2018-11-14 18:51:01,380 INFO L273 TraceCheckUtils]: 14: Hoare triple {29947#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {29947#true} is VALID [2018-11-14 18:51:01,380 INFO L273 TraceCheckUtils]: 15: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,381 INFO L273 TraceCheckUtils]: 16: Hoare triple {29947#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {29947#true} is VALID [2018-11-14 18:51:01,381 INFO L273 TraceCheckUtils]: 17: Hoare triple {29947#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {29947#true} is VALID [2018-11-14 18:51:01,381 INFO L273 TraceCheckUtils]: 18: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,381 INFO L273 TraceCheckUtils]: 19: Hoare triple {29947#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {29947#true} is VALID [2018-11-14 18:51:01,381 INFO L273 TraceCheckUtils]: 20: Hoare triple {29947#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {29947#true} is VALID [2018-11-14 18:51:01,381 INFO L273 TraceCheckUtils]: 21: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,381 INFO L273 TraceCheckUtils]: 22: Hoare triple {29947#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {29947#true} is VALID [2018-11-14 18:51:01,381 INFO L273 TraceCheckUtils]: 23: Hoare triple {29947#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {29947#true} is VALID [2018-11-14 18:51:01,381 INFO L273 TraceCheckUtils]: 24: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,381 INFO L273 TraceCheckUtils]: 25: Hoare triple {29947#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {29947#true} is VALID [2018-11-14 18:51:01,382 INFO L273 TraceCheckUtils]: 26: Hoare triple {29947#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {29947#true} is VALID [2018-11-14 18:51:01,382 INFO L273 TraceCheckUtils]: 27: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,382 INFO L273 TraceCheckUtils]: 28: Hoare triple {29947#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {29947#true} is VALID [2018-11-14 18:51:01,382 INFO L273 TraceCheckUtils]: 29: Hoare triple {29947#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {29947#true} is VALID [2018-11-14 18:51:01,382 INFO L273 TraceCheckUtils]: 30: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,382 INFO L273 TraceCheckUtils]: 31: Hoare triple {29947#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {29947#true} is VALID [2018-11-14 18:51:01,382 INFO L273 TraceCheckUtils]: 32: Hoare triple {29947#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {29947#true} is VALID [2018-11-14 18:51:01,382 INFO L273 TraceCheckUtils]: 33: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,382 INFO L273 TraceCheckUtils]: 34: Hoare triple {29947#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {29947#true} is VALID [2018-11-14 18:51:01,383 INFO L273 TraceCheckUtils]: 35: Hoare triple {29947#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {29947#true} is VALID [2018-11-14 18:51:01,383 INFO L273 TraceCheckUtils]: 36: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,383 INFO L273 TraceCheckUtils]: 37: Hoare triple {29947#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {29947#true} is VALID [2018-11-14 18:51:01,383 INFO L273 TraceCheckUtils]: 38: Hoare triple {29947#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {29947#true} is VALID [2018-11-14 18:51:01,383 INFO L273 TraceCheckUtils]: 39: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,383 INFO L273 TraceCheckUtils]: 40: Hoare triple {29947#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {29947#true} is VALID [2018-11-14 18:51:01,383 INFO L273 TraceCheckUtils]: 41: Hoare triple {29947#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {29947#true} is VALID [2018-11-14 18:51:01,383 INFO L273 TraceCheckUtils]: 42: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,383 INFO L273 TraceCheckUtils]: 43: Hoare triple {29947#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {29947#true} is VALID [2018-11-14 18:51:01,383 INFO L273 TraceCheckUtils]: 44: Hoare triple {29947#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {29947#true} is VALID [2018-11-14 18:51:01,384 INFO L273 TraceCheckUtils]: 45: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,384 INFO L273 TraceCheckUtils]: 46: Hoare triple {29947#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {29947#true} is VALID [2018-11-14 18:51:01,384 INFO L273 TraceCheckUtils]: 47: Hoare triple {29947#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {29947#true} is VALID [2018-11-14 18:51:01,384 INFO L273 TraceCheckUtils]: 48: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,384 INFO L273 TraceCheckUtils]: 49: Hoare triple {29947#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {29947#true} is VALID [2018-11-14 18:51:01,384 INFO L273 TraceCheckUtils]: 50: Hoare triple {29947#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {29947#true} is VALID [2018-11-14 18:51:01,384 INFO L273 TraceCheckUtils]: 51: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,384 INFO L273 TraceCheckUtils]: 52: Hoare triple {29947#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {29947#true} is VALID [2018-11-14 18:51:01,384 INFO L273 TraceCheckUtils]: 53: Hoare triple {29947#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {29947#true} is VALID [2018-11-14 18:51:01,385 INFO L273 TraceCheckUtils]: 54: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,385 INFO L273 TraceCheckUtils]: 55: Hoare triple {29947#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {29947#true} is VALID [2018-11-14 18:51:01,385 INFO L273 TraceCheckUtils]: 56: Hoare triple {29947#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {29947#true} is VALID [2018-11-14 18:51:01,385 INFO L273 TraceCheckUtils]: 57: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,385 INFO L273 TraceCheckUtils]: 58: Hoare triple {29947#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {29947#true} is VALID [2018-11-14 18:51:01,385 INFO L273 TraceCheckUtils]: 59: Hoare triple {29947#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {29947#true} is VALID [2018-11-14 18:51:01,385 INFO L273 TraceCheckUtils]: 60: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,385 INFO L273 TraceCheckUtils]: 61: Hoare triple {29947#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {29947#true} is VALID [2018-11-14 18:51:01,385 INFO L273 TraceCheckUtils]: 62: Hoare triple {29947#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {29947#true} is VALID [2018-11-14 18:51:01,385 INFO L273 TraceCheckUtils]: 63: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,386 INFO L273 TraceCheckUtils]: 64: Hoare triple {29947#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {30162#(< main_~i~1 20)} is VALID [2018-11-14 18:51:01,386 INFO L273 TraceCheckUtils]: 65: Hoare triple {30162#(< main_~i~1 20)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {30166#(<= main_~i~1 20)} is VALID [2018-11-14 18:51:01,387 INFO L273 TraceCheckUtils]: 66: Hoare triple {30166#(<= main_~i~1 20)} assume true; {30166#(<= main_~i~1 20)} is VALID [2018-11-14 18:51:01,387 INFO L273 TraceCheckUtils]: 67: Hoare triple {30166#(<= main_~i~1 20)} assume !(~i~1 < 20); {29947#true} is VALID [2018-11-14 18:51:01,387 INFO L256 TraceCheckUtils]: 68: Hoare triple {29947#true} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {29947#true} is VALID [2018-11-14 18:51:01,387 INFO L273 TraceCheckUtils]: 69: Hoare triple {29947#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {29947#true} is VALID [2018-11-14 18:51:01,387 INFO L273 TraceCheckUtils]: 70: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,387 INFO L273 TraceCheckUtils]: 71: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:01,387 INFO L273 TraceCheckUtils]: 72: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:01,387 INFO L273 TraceCheckUtils]: 73: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,387 INFO L273 TraceCheckUtils]: 74: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:01,388 INFO L273 TraceCheckUtils]: 75: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:01,388 INFO L273 TraceCheckUtils]: 76: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,388 INFO L273 TraceCheckUtils]: 77: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:01,388 INFO L273 TraceCheckUtils]: 78: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:01,388 INFO L273 TraceCheckUtils]: 79: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,388 INFO L273 TraceCheckUtils]: 80: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:01,388 INFO L273 TraceCheckUtils]: 81: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:01,388 INFO L273 TraceCheckUtils]: 82: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,388 INFO L273 TraceCheckUtils]: 83: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:01,388 INFO L273 TraceCheckUtils]: 84: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:01,389 INFO L273 TraceCheckUtils]: 85: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,389 INFO L273 TraceCheckUtils]: 86: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:01,389 INFO L273 TraceCheckUtils]: 87: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:01,389 INFO L273 TraceCheckUtils]: 88: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,389 INFO L273 TraceCheckUtils]: 89: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:01,389 INFO L273 TraceCheckUtils]: 90: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:01,389 INFO L273 TraceCheckUtils]: 91: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,389 INFO L273 TraceCheckUtils]: 92: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:01,389 INFO L273 TraceCheckUtils]: 93: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:01,389 INFO L273 TraceCheckUtils]: 94: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,390 INFO L273 TraceCheckUtils]: 95: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:01,390 INFO L273 TraceCheckUtils]: 96: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:01,390 INFO L273 TraceCheckUtils]: 97: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,390 INFO L273 TraceCheckUtils]: 98: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:01,390 INFO L273 TraceCheckUtils]: 99: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:01,390 INFO L273 TraceCheckUtils]: 100: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,390 INFO L273 TraceCheckUtils]: 101: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:01,390 INFO L273 TraceCheckUtils]: 102: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:01,390 INFO L273 TraceCheckUtils]: 103: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,390 INFO L273 TraceCheckUtils]: 104: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:01,391 INFO L273 TraceCheckUtils]: 105: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:01,391 INFO L273 TraceCheckUtils]: 106: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,391 INFO L273 TraceCheckUtils]: 107: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:01,391 INFO L273 TraceCheckUtils]: 108: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:01,391 INFO L273 TraceCheckUtils]: 109: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,391 INFO L273 TraceCheckUtils]: 110: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:01,391 INFO L273 TraceCheckUtils]: 111: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:01,391 INFO L273 TraceCheckUtils]: 112: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,391 INFO L273 TraceCheckUtils]: 113: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:01,391 INFO L273 TraceCheckUtils]: 114: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:01,392 INFO L273 TraceCheckUtils]: 115: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,392 INFO L273 TraceCheckUtils]: 116: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:01,392 INFO L273 TraceCheckUtils]: 117: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:01,392 INFO L273 TraceCheckUtils]: 118: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,392 INFO L273 TraceCheckUtils]: 119: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:01,392 INFO L273 TraceCheckUtils]: 120: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:01,392 INFO L273 TraceCheckUtils]: 121: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,392 INFO L273 TraceCheckUtils]: 122: Hoare triple {29947#true} assume !(~i~0 < 20); {29947#true} is VALID [2018-11-14 18:51:01,392 INFO L273 TraceCheckUtils]: 123: Hoare triple {29947#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {29947#true} is VALID [2018-11-14 18:51:01,392 INFO L273 TraceCheckUtils]: 124: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,393 INFO L268 TraceCheckUtils]: 125: Hoare quadruple {29947#true} {29947#true} #73#return; {29947#true} is VALID [2018-11-14 18:51:01,393 INFO L273 TraceCheckUtils]: 126: Hoare triple {29947#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); {29947#true} is VALID [2018-11-14 18:51:01,393 INFO L256 TraceCheckUtils]: 127: Hoare triple {29947#true} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {29947#true} is VALID [2018-11-14 18:51:01,393 INFO L273 TraceCheckUtils]: 128: Hoare triple {29947#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {29947#true} is VALID [2018-11-14 18:51:01,393 INFO L273 TraceCheckUtils]: 129: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,393 INFO L273 TraceCheckUtils]: 130: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:01,393 INFO L273 TraceCheckUtils]: 131: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:01,393 INFO L273 TraceCheckUtils]: 132: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,393 INFO L273 TraceCheckUtils]: 133: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:01,393 INFO L273 TraceCheckUtils]: 134: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:01,394 INFO L273 TraceCheckUtils]: 135: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,394 INFO L273 TraceCheckUtils]: 136: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:01,394 INFO L273 TraceCheckUtils]: 137: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:01,394 INFO L273 TraceCheckUtils]: 138: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,394 INFO L273 TraceCheckUtils]: 139: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:01,394 INFO L273 TraceCheckUtils]: 140: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:01,394 INFO L273 TraceCheckUtils]: 141: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,394 INFO L273 TraceCheckUtils]: 142: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:01,394 INFO L273 TraceCheckUtils]: 143: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:01,395 INFO L273 TraceCheckUtils]: 144: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,395 INFO L273 TraceCheckUtils]: 145: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:01,395 INFO L273 TraceCheckUtils]: 146: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:01,395 INFO L273 TraceCheckUtils]: 147: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,395 INFO L273 TraceCheckUtils]: 148: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:01,395 INFO L273 TraceCheckUtils]: 149: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:01,395 INFO L273 TraceCheckUtils]: 150: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,395 INFO L273 TraceCheckUtils]: 151: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:01,395 INFO L273 TraceCheckUtils]: 152: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:01,395 INFO L273 TraceCheckUtils]: 153: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,396 INFO L273 TraceCheckUtils]: 154: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:01,396 INFO L273 TraceCheckUtils]: 155: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:01,396 INFO L273 TraceCheckUtils]: 156: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,396 INFO L273 TraceCheckUtils]: 157: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:01,396 INFO L273 TraceCheckUtils]: 158: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:01,396 INFO L273 TraceCheckUtils]: 159: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,396 INFO L273 TraceCheckUtils]: 160: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:01,396 INFO L273 TraceCheckUtils]: 161: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:01,396 INFO L273 TraceCheckUtils]: 162: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,396 INFO L273 TraceCheckUtils]: 163: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:01,397 INFO L273 TraceCheckUtils]: 164: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:01,397 INFO L273 TraceCheckUtils]: 165: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,397 INFO L273 TraceCheckUtils]: 166: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:01,397 INFO L273 TraceCheckUtils]: 167: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:01,397 INFO L273 TraceCheckUtils]: 168: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,397 INFO L273 TraceCheckUtils]: 169: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:01,397 INFO L273 TraceCheckUtils]: 170: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:01,397 INFO L273 TraceCheckUtils]: 171: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,397 INFO L273 TraceCheckUtils]: 172: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:01,397 INFO L273 TraceCheckUtils]: 173: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:01,398 INFO L273 TraceCheckUtils]: 174: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,398 INFO L273 TraceCheckUtils]: 175: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:01,398 INFO L273 TraceCheckUtils]: 176: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:01,398 INFO L273 TraceCheckUtils]: 177: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,398 INFO L273 TraceCheckUtils]: 178: Hoare triple {29947#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29947#true} is VALID [2018-11-14 18:51:01,398 INFO L273 TraceCheckUtils]: 179: Hoare triple {29947#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29947#true} is VALID [2018-11-14 18:51:01,398 INFO L273 TraceCheckUtils]: 180: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,398 INFO L273 TraceCheckUtils]: 181: Hoare triple {29947#true} assume !(~i~0 < 20); {29947#true} is VALID [2018-11-14 18:51:01,398 INFO L273 TraceCheckUtils]: 182: Hoare triple {29947#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {29947#true} is VALID [2018-11-14 18:51:01,398 INFO L273 TraceCheckUtils]: 183: Hoare triple {29947#true} assume true; {29947#true} is VALID [2018-11-14 18:51:01,399 INFO L268 TraceCheckUtils]: 184: Hoare quadruple {29947#true} {29947#true} #75#return; {29947#true} is VALID [2018-11-14 18:51:01,399 INFO L273 TraceCheckUtils]: 185: Hoare triple {29947#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; {30527#(<= main_~i~2 0)} is VALID [2018-11-14 18:51:01,399 INFO L273 TraceCheckUtils]: 186: Hoare triple {30527#(<= main_~i~2 0)} assume true; {30527#(<= main_~i~2 0)} is VALID [2018-11-14 18:51:01,400 INFO L273 TraceCheckUtils]: 187: Hoare triple {30527#(<= main_~i~2 0)} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {30527#(<= main_~i~2 0)} is VALID [2018-11-14 18:51:01,400 INFO L273 TraceCheckUtils]: 188: Hoare triple {30527#(<= main_~i~2 0)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {30537#(<= main_~i~2 1)} is VALID [2018-11-14 18:51:01,400 INFO L273 TraceCheckUtils]: 189: Hoare triple {30537#(<= main_~i~2 1)} assume true; {30537#(<= main_~i~2 1)} is VALID [2018-11-14 18:51:01,401 INFO L273 TraceCheckUtils]: 190: Hoare triple {30537#(<= main_~i~2 1)} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {30537#(<= main_~i~2 1)} is VALID [2018-11-14 18:51:01,401 INFO L273 TraceCheckUtils]: 191: Hoare triple {30537#(<= main_~i~2 1)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {30547#(<= main_~i~2 2)} is VALID [2018-11-14 18:51:01,401 INFO L273 TraceCheckUtils]: 192: Hoare triple {30547#(<= main_~i~2 2)} assume true; {30547#(<= main_~i~2 2)} is VALID [2018-11-14 18:51:01,402 INFO L273 TraceCheckUtils]: 193: Hoare triple {30547#(<= main_~i~2 2)} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {30547#(<= main_~i~2 2)} is VALID [2018-11-14 18:51:01,402 INFO L273 TraceCheckUtils]: 194: Hoare triple {30547#(<= main_~i~2 2)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {30557#(<= main_~i~2 3)} is VALID [2018-11-14 18:51:01,403 INFO L273 TraceCheckUtils]: 195: Hoare triple {30557#(<= main_~i~2 3)} assume true; {30557#(<= main_~i~2 3)} is VALID [2018-11-14 18:51:01,403 INFO L273 TraceCheckUtils]: 196: Hoare triple {30557#(<= main_~i~2 3)} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {30557#(<= main_~i~2 3)} is VALID [2018-11-14 18:51:01,404 INFO L273 TraceCheckUtils]: 197: Hoare triple {30557#(<= main_~i~2 3)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {30567#(<= main_~i~2 4)} is VALID [2018-11-14 18:51:01,404 INFO L273 TraceCheckUtils]: 198: Hoare triple {30567#(<= main_~i~2 4)} assume true; {30567#(<= main_~i~2 4)} is VALID [2018-11-14 18:51:01,405 INFO L273 TraceCheckUtils]: 199: Hoare triple {30567#(<= main_~i~2 4)} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {30567#(<= main_~i~2 4)} is VALID [2018-11-14 18:51:01,405 INFO L273 TraceCheckUtils]: 200: Hoare triple {30567#(<= main_~i~2 4)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {30577#(<= main_~i~2 5)} is VALID [2018-11-14 18:51:01,406 INFO L273 TraceCheckUtils]: 201: Hoare triple {30577#(<= main_~i~2 5)} assume true; {30577#(<= main_~i~2 5)} is VALID [2018-11-14 18:51:01,406 INFO L273 TraceCheckUtils]: 202: Hoare triple {30577#(<= main_~i~2 5)} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {30577#(<= main_~i~2 5)} is VALID [2018-11-14 18:51:01,407 INFO L273 TraceCheckUtils]: 203: Hoare triple {30577#(<= main_~i~2 5)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {30587#(<= main_~i~2 6)} is VALID [2018-11-14 18:51:01,407 INFO L273 TraceCheckUtils]: 204: Hoare triple {30587#(<= main_~i~2 6)} assume true; {30587#(<= main_~i~2 6)} is VALID [2018-11-14 18:51:01,408 INFO L273 TraceCheckUtils]: 205: Hoare triple {30587#(<= main_~i~2 6)} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {30587#(<= main_~i~2 6)} is VALID [2018-11-14 18:51:01,408 INFO L273 TraceCheckUtils]: 206: Hoare triple {30587#(<= main_~i~2 6)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {30597#(<= main_~i~2 7)} is VALID [2018-11-14 18:51:01,409 INFO L273 TraceCheckUtils]: 207: Hoare triple {30597#(<= main_~i~2 7)} assume true; {30597#(<= main_~i~2 7)} is VALID [2018-11-14 18:51:01,409 INFO L273 TraceCheckUtils]: 208: Hoare triple {30597#(<= main_~i~2 7)} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {30597#(<= main_~i~2 7)} is VALID [2018-11-14 18:51:01,410 INFO L273 TraceCheckUtils]: 209: Hoare triple {30597#(<= main_~i~2 7)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {30607#(<= main_~i~2 8)} is VALID [2018-11-14 18:51:01,411 INFO L273 TraceCheckUtils]: 210: Hoare triple {30607#(<= main_~i~2 8)} assume true; {30607#(<= main_~i~2 8)} is VALID [2018-11-14 18:51:01,411 INFO L273 TraceCheckUtils]: 211: Hoare triple {30607#(<= main_~i~2 8)} assume !(~i~2 < 19); {29948#false} is VALID [2018-11-14 18:51:01,411 INFO L273 TraceCheckUtils]: 212: Hoare triple {29948#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {29948#false} is VALID [2018-11-14 18:51:01,412 INFO L256 TraceCheckUtils]: 213: Hoare triple {29948#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {29948#false} is VALID [2018-11-14 18:51:01,412 INFO L273 TraceCheckUtils]: 214: Hoare triple {29948#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {29948#false} is VALID [2018-11-14 18:51:01,412 INFO L273 TraceCheckUtils]: 215: Hoare triple {29948#false} assume true; {29948#false} is VALID [2018-11-14 18:51:01,412 INFO L273 TraceCheckUtils]: 216: Hoare triple {29948#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29948#false} is VALID [2018-11-14 18:51:01,412 INFO L273 TraceCheckUtils]: 217: Hoare triple {29948#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29948#false} is VALID [2018-11-14 18:51:01,412 INFO L273 TraceCheckUtils]: 218: Hoare triple {29948#false} assume true; {29948#false} is VALID [2018-11-14 18:51:01,413 INFO L273 TraceCheckUtils]: 219: Hoare triple {29948#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29948#false} is VALID [2018-11-14 18:51:01,413 INFO L273 TraceCheckUtils]: 220: Hoare triple {29948#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29948#false} is VALID [2018-11-14 18:51:01,413 INFO L273 TraceCheckUtils]: 221: Hoare triple {29948#false} assume true; {29948#false} is VALID [2018-11-14 18:51:01,413 INFO L273 TraceCheckUtils]: 222: Hoare triple {29948#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29948#false} is VALID [2018-11-14 18:51:01,413 INFO L273 TraceCheckUtils]: 223: Hoare triple {29948#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29948#false} is VALID [2018-11-14 18:51:01,413 INFO L273 TraceCheckUtils]: 224: Hoare triple {29948#false} assume true; {29948#false} is VALID [2018-11-14 18:51:01,413 INFO L273 TraceCheckUtils]: 225: Hoare triple {29948#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29948#false} is VALID [2018-11-14 18:51:01,413 INFO L273 TraceCheckUtils]: 226: Hoare triple {29948#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29948#false} is VALID [2018-11-14 18:51:01,414 INFO L273 TraceCheckUtils]: 227: Hoare triple {29948#false} assume true; {29948#false} is VALID [2018-11-14 18:51:01,414 INFO L273 TraceCheckUtils]: 228: Hoare triple {29948#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29948#false} is VALID [2018-11-14 18:51:01,414 INFO L273 TraceCheckUtils]: 229: Hoare triple {29948#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29948#false} is VALID [2018-11-14 18:51:01,414 INFO L273 TraceCheckUtils]: 230: Hoare triple {29948#false} assume true; {29948#false} is VALID [2018-11-14 18:51:01,414 INFO L273 TraceCheckUtils]: 231: Hoare triple {29948#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29948#false} is VALID [2018-11-14 18:51:01,414 INFO L273 TraceCheckUtils]: 232: Hoare triple {29948#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29948#false} is VALID [2018-11-14 18:51:01,414 INFO L273 TraceCheckUtils]: 233: Hoare triple {29948#false} assume true; {29948#false} is VALID [2018-11-14 18:51:01,414 INFO L273 TraceCheckUtils]: 234: Hoare triple {29948#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29948#false} is VALID [2018-11-14 18:51:01,414 INFO L273 TraceCheckUtils]: 235: Hoare triple {29948#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29948#false} is VALID [2018-11-14 18:51:01,414 INFO L273 TraceCheckUtils]: 236: Hoare triple {29948#false} assume true; {29948#false} is VALID [2018-11-14 18:51:01,415 INFO L273 TraceCheckUtils]: 237: Hoare triple {29948#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29948#false} is VALID [2018-11-14 18:51:01,415 INFO L273 TraceCheckUtils]: 238: Hoare triple {29948#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29948#false} is VALID [2018-11-14 18:51:01,415 INFO L273 TraceCheckUtils]: 239: Hoare triple {29948#false} assume true; {29948#false} is VALID [2018-11-14 18:51:01,415 INFO L273 TraceCheckUtils]: 240: Hoare triple {29948#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29948#false} is VALID [2018-11-14 18:51:01,415 INFO L273 TraceCheckUtils]: 241: Hoare triple {29948#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29948#false} is VALID [2018-11-14 18:51:01,415 INFO L273 TraceCheckUtils]: 242: Hoare triple {29948#false} assume true; {29948#false} is VALID [2018-11-14 18:51:01,415 INFO L273 TraceCheckUtils]: 243: Hoare triple {29948#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29948#false} is VALID [2018-11-14 18:51:01,415 INFO L273 TraceCheckUtils]: 244: Hoare triple {29948#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29948#false} is VALID [2018-11-14 18:51:01,415 INFO L273 TraceCheckUtils]: 245: Hoare triple {29948#false} assume true; {29948#false} is VALID [2018-11-14 18:51:01,415 INFO L273 TraceCheckUtils]: 246: Hoare triple {29948#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29948#false} is VALID [2018-11-14 18:51:01,416 INFO L273 TraceCheckUtils]: 247: Hoare triple {29948#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29948#false} is VALID [2018-11-14 18:51:01,416 INFO L273 TraceCheckUtils]: 248: Hoare triple {29948#false} assume true; {29948#false} is VALID [2018-11-14 18:51:01,416 INFO L273 TraceCheckUtils]: 249: Hoare triple {29948#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29948#false} is VALID [2018-11-14 18:51:01,416 INFO L273 TraceCheckUtils]: 250: Hoare triple {29948#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29948#false} is VALID [2018-11-14 18:51:01,416 INFO L273 TraceCheckUtils]: 251: Hoare triple {29948#false} assume true; {29948#false} is VALID [2018-11-14 18:51:01,416 INFO L273 TraceCheckUtils]: 252: Hoare triple {29948#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29948#false} is VALID [2018-11-14 18:51:01,416 INFO L273 TraceCheckUtils]: 253: Hoare triple {29948#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29948#false} is VALID [2018-11-14 18:51:01,416 INFO L273 TraceCheckUtils]: 254: Hoare triple {29948#false} assume true; {29948#false} is VALID [2018-11-14 18:51:01,416 INFO L273 TraceCheckUtils]: 255: Hoare triple {29948#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29948#false} is VALID [2018-11-14 18:51:01,416 INFO L273 TraceCheckUtils]: 256: Hoare triple {29948#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29948#false} is VALID [2018-11-14 18:51:01,417 INFO L273 TraceCheckUtils]: 257: Hoare triple {29948#false} assume true; {29948#false} is VALID [2018-11-14 18:51:01,417 INFO L273 TraceCheckUtils]: 258: Hoare triple {29948#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29948#false} is VALID [2018-11-14 18:51:01,417 INFO L273 TraceCheckUtils]: 259: Hoare triple {29948#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29948#false} is VALID [2018-11-14 18:51:01,417 INFO L273 TraceCheckUtils]: 260: Hoare triple {29948#false} assume true; {29948#false} is VALID [2018-11-14 18:51:01,417 INFO L273 TraceCheckUtils]: 261: Hoare triple {29948#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29948#false} is VALID [2018-11-14 18:51:01,417 INFO L273 TraceCheckUtils]: 262: Hoare triple {29948#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29948#false} is VALID [2018-11-14 18:51:01,417 INFO L273 TraceCheckUtils]: 263: Hoare triple {29948#false} assume true; {29948#false} is VALID [2018-11-14 18:51:01,417 INFO L273 TraceCheckUtils]: 264: Hoare triple {29948#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {29948#false} is VALID [2018-11-14 18:51:01,417 INFO L273 TraceCheckUtils]: 265: Hoare triple {29948#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {29948#false} is VALID [2018-11-14 18:51:01,418 INFO L273 TraceCheckUtils]: 266: Hoare triple {29948#false} assume true; {29948#false} is VALID [2018-11-14 18:51:01,418 INFO L273 TraceCheckUtils]: 267: Hoare triple {29948#false} assume !(~i~0 < 20); {29948#false} is VALID [2018-11-14 18:51:01,418 INFO L273 TraceCheckUtils]: 268: Hoare triple {29948#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {29948#false} is VALID [2018-11-14 18:51:01,418 INFO L273 TraceCheckUtils]: 269: Hoare triple {29948#false} assume true; {29948#false} is VALID [2018-11-14 18:51:01,418 INFO L268 TraceCheckUtils]: 270: Hoare quadruple {29948#false} {29948#false} #77#return; {29948#false} is VALID [2018-11-14 18:51:01,418 INFO L273 TraceCheckUtils]: 271: Hoare triple {29948#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {29948#false} is VALID [2018-11-14 18:51:01,418 INFO L273 TraceCheckUtils]: 272: Hoare triple {29948#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {29948#false} is VALID [2018-11-14 18:51:01,418 INFO L273 TraceCheckUtils]: 273: Hoare triple {29948#false} assume !false; {29948#false} is VALID [2018-11-14 18:51:01,444 INFO L134 CoverageAnalysis]: Checked inductivity of 4859 backedges. 1941 proven. 100 refuted. 0 times theorem prover too weak. 2818 trivial. 0 not checked. [2018-11-14 18:51:01,465 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:51:01,465 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [20, 13] total 31 [2018-11-14 18:51:01,466 INFO L78 Accepts]: Start accepts. Automaton has 31 states. Word has length 274 [2018-11-14 18:51:01,467 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:51:01,467 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 31 states. [2018-11-14 18:51:01,592 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 131 edges. 131 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:51:01,593 INFO L459 AbstractCegarLoop]: Interpolant automaton has 31 states [2018-11-14 18:51:01,593 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 31 interpolants. [2018-11-14 18:51:01,593 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=249, Invalid=681, Unknown=0, NotChecked=0, Total=930 [2018-11-14 18:51:01,594 INFO L87 Difference]: Start difference. First operand 161 states and 165 transitions. Second operand 31 states. [2018-11-14 18:51:03,011 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:51:03,012 INFO L93 Difference]: Finished difference Result 261 states and 272 transitions. [2018-11-14 18:51:03,012 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 31 states. [2018-11-14 18:51:03,012 INFO L78 Accepts]: Start accepts. Automaton has 31 states. Word has length 274 [2018-11-14 18:51:03,012 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:51:03,012 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 31 states. [2018-11-14 18:51:03,013 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 142 transitions. [2018-11-14 18:51:03,013 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 31 states. [2018-11-14 18:51:03,014 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 142 transitions. [2018-11-14 18:51:03,014 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 31 states and 142 transitions. [2018-11-14 18:51:03,163 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 142 edges. 142 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:51:03,166 INFO L225 Difference]: With dead ends: 261 [2018-11-14 18:51:03,166 INFO L226 Difference]: Without dead ends: 169 [2018-11-14 18:51:03,167 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 302 GetRequests, 264 SyntacticMatches, 0 SemanticMatches, 38 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 232 ImplicationChecksByTransitivity, 1.5s TimeCoverageRelationStatistics Valid=357, Invalid=1203, Unknown=0, NotChecked=0, Total=1560 [2018-11-14 18:51:03,168 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 169 states. [2018-11-14 18:51:03,263 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 169 to 167. [2018-11-14 18:51:03,263 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:51:03,264 INFO L82 GeneralOperation]: Start isEquivalent. First operand 169 states. Second operand 167 states. [2018-11-14 18:51:03,264 INFO L74 IsIncluded]: Start isIncluded. First operand 169 states. Second operand 167 states. [2018-11-14 18:51:03,264 INFO L87 Difference]: Start difference. First operand 169 states. Second operand 167 states. [2018-11-14 18:51:03,268 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:51:03,268 INFO L93 Difference]: Finished difference Result 169 states and 173 transitions. [2018-11-14 18:51:03,268 INFO L276 IsEmpty]: Start isEmpty. Operand 169 states and 173 transitions. [2018-11-14 18:51:03,268 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:51:03,268 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:51:03,268 INFO L74 IsIncluded]: Start isIncluded. First operand 167 states. Second operand 169 states. [2018-11-14 18:51:03,269 INFO L87 Difference]: Start difference. First operand 167 states. Second operand 169 states. [2018-11-14 18:51:03,271 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:51:03,271 INFO L93 Difference]: Finished difference Result 169 states and 173 transitions. [2018-11-14 18:51:03,272 INFO L276 IsEmpty]: Start isEmpty. Operand 169 states and 173 transitions. [2018-11-14 18:51:03,272 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:51:03,272 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:51:03,272 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:51:03,272 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:51:03,273 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 167 states. [2018-11-14 18:51:03,275 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 167 states to 167 states and 171 transitions. [2018-11-14 18:51:03,275 INFO L78 Accepts]: Start accepts. Automaton has 167 states and 171 transitions. Word has length 274 [2018-11-14 18:51:03,276 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:51:03,276 INFO L480 AbstractCegarLoop]: Abstraction has 167 states and 171 transitions. [2018-11-14 18:51:03,276 INFO L481 AbstractCegarLoop]: Interpolant automaton has 31 states. [2018-11-14 18:51:03,276 INFO L276 IsEmpty]: Start isEmpty. Operand 167 states and 171 transitions. [2018-11-14 18:51:03,278 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 287 [2018-11-14 18:51:03,278 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:51:03,278 INFO L375 BasicCegarLoop]: trace histogram [57, 54, 54, 21, 20, 20, 10, 9, 9, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:51:03,278 INFO L423 AbstractCegarLoop]: === Iteration 35 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:51:03,278 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:51:03,279 INFO L82 PathProgramCache]: Analyzing trace with hash 400603093, now seen corresponding path program 31 times [2018-11-14 18:51:03,279 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:51:03,279 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:51:03,279 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:51:03,279 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 18:51:03,280 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:51:03,314 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:51:03,671 INFO L256 TraceCheckUtils]: 0: Hoare triple {31729#true} call ULTIMATE.init(); {31729#true} is VALID [2018-11-14 18:51:03,672 INFO L273 TraceCheckUtils]: 1: Hoare triple {31729#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {31729#true} is VALID [2018-11-14 18:51:03,672 INFO L273 TraceCheckUtils]: 2: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,672 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {31729#true} {31729#true} #69#return; {31729#true} is VALID [2018-11-14 18:51:03,672 INFO L256 TraceCheckUtils]: 4: Hoare triple {31729#true} call #t~ret12 := main(); {31729#true} is VALID [2018-11-14 18:51:03,672 INFO L273 TraceCheckUtils]: 5: Hoare triple {31729#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {31729#true} is VALID [2018-11-14 18:51:03,673 INFO L273 TraceCheckUtils]: 6: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,673 INFO L273 TraceCheckUtils]: 7: Hoare triple {31729#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {31729#true} is VALID [2018-11-14 18:51:03,673 INFO L273 TraceCheckUtils]: 8: Hoare triple {31729#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {31729#true} is VALID [2018-11-14 18:51:03,673 INFO L273 TraceCheckUtils]: 9: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,673 INFO L273 TraceCheckUtils]: 10: Hoare triple {31729#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {31729#true} is VALID [2018-11-14 18:51:03,673 INFO L273 TraceCheckUtils]: 11: Hoare triple {31729#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {31729#true} is VALID [2018-11-14 18:51:03,674 INFO L273 TraceCheckUtils]: 12: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,674 INFO L273 TraceCheckUtils]: 13: Hoare triple {31729#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {31729#true} is VALID [2018-11-14 18:51:03,674 INFO L273 TraceCheckUtils]: 14: Hoare triple {31729#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {31729#true} is VALID [2018-11-14 18:51:03,674 INFO L273 TraceCheckUtils]: 15: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,674 INFO L273 TraceCheckUtils]: 16: Hoare triple {31729#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {31729#true} is VALID [2018-11-14 18:51:03,674 INFO L273 TraceCheckUtils]: 17: Hoare triple {31729#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {31729#true} is VALID [2018-11-14 18:51:03,674 INFO L273 TraceCheckUtils]: 18: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,674 INFO L273 TraceCheckUtils]: 19: Hoare triple {31729#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {31729#true} is VALID [2018-11-14 18:51:03,674 INFO L273 TraceCheckUtils]: 20: Hoare triple {31729#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {31729#true} is VALID [2018-11-14 18:51:03,674 INFO L273 TraceCheckUtils]: 21: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,675 INFO L273 TraceCheckUtils]: 22: Hoare triple {31729#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {31729#true} is VALID [2018-11-14 18:51:03,675 INFO L273 TraceCheckUtils]: 23: Hoare triple {31729#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {31729#true} is VALID [2018-11-14 18:51:03,675 INFO L273 TraceCheckUtils]: 24: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,675 INFO L273 TraceCheckUtils]: 25: Hoare triple {31729#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {31729#true} is VALID [2018-11-14 18:51:03,675 INFO L273 TraceCheckUtils]: 26: Hoare triple {31729#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {31729#true} is VALID [2018-11-14 18:51:03,675 INFO L273 TraceCheckUtils]: 27: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,675 INFO L273 TraceCheckUtils]: 28: Hoare triple {31729#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {31729#true} is VALID [2018-11-14 18:51:03,675 INFO L273 TraceCheckUtils]: 29: Hoare triple {31729#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {31729#true} is VALID [2018-11-14 18:51:03,675 INFO L273 TraceCheckUtils]: 30: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,675 INFO L273 TraceCheckUtils]: 31: Hoare triple {31729#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {31729#true} is VALID [2018-11-14 18:51:03,676 INFO L273 TraceCheckUtils]: 32: Hoare triple {31729#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {31729#true} is VALID [2018-11-14 18:51:03,676 INFO L273 TraceCheckUtils]: 33: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,676 INFO L273 TraceCheckUtils]: 34: Hoare triple {31729#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {31729#true} is VALID [2018-11-14 18:51:03,676 INFO L273 TraceCheckUtils]: 35: Hoare triple {31729#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {31729#true} is VALID [2018-11-14 18:51:03,676 INFO L273 TraceCheckUtils]: 36: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,676 INFO L273 TraceCheckUtils]: 37: Hoare triple {31729#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {31729#true} is VALID [2018-11-14 18:51:03,676 INFO L273 TraceCheckUtils]: 38: Hoare triple {31729#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {31729#true} is VALID [2018-11-14 18:51:03,676 INFO L273 TraceCheckUtils]: 39: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,676 INFO L273 TraceCheckUtils]: 40: Hoare triple {31729#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {31729#true} is VALID [2018-11-14 18:51:03,677 INFO L273 TraceCheckUtils]: 41: Hoare triple {31729#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {31729#true} is VALID [2018-11-14 18:51:03,677 INFO L273 TraceCheckUtils]: 42: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,677 INFO L273 TraceCheckUtils]: 43: Hoare triple {31729#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {31729#true} is VALID [2018-11-14 18:51:03,677 INFO L273 TraceCheckUtils]: 44: Hoare triple {31729#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {31729#true} is VALID [2018-11-14 18:51:03,677 INFO L273 TraceCheckUtils]: 45: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,677 INFO L273 TraceCheckUtils]: 46: Hoare triple {31729#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {31729#true} is VALID [2018-11-14 18:51:03,677 INFO L273 TraceCheckUtils]: 47: Hoare triple {31729#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {31729#true} is VALID [2018-11-14 18:51:03,677 INFO L273 TraceCheckUtils]: 48: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,677 INFO L273 TraceCheckUtils]: 49: Hoare triple {31729#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {31729#true} is VALID [2018-11-14 18:51:03,677 INFO L273 TraceCheckUtils]: 50: Hoare triple {31729#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {31729#true} is VALID [2018-11-14 18:51:03,678 INFO L273 TraceCheckUtils]: 51: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,678 INFO L273 TraceCheckUtils]: 52: Hoare triple {31729#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {31729#true} is VALID [2018-11-14 18:51:03,678 INFO L273 TraceCheckUtils]: 53: Hoare triple {31729#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {31729#true} is VALID [2018-11-14 18:51:03,678 INFO L273 TraceCheckUtils]: 54: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,678 INFO L273 TraceCheckUtils]: 55: Hoare triple {31729#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {31729#true} is VALID [2018-11-14 18:51:03,678 INFO L273 TraceCheckUtils]: 56: Hoare triple {31729#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {31729#true} is VALID [2018-11-14 18:51:03,678 INFO L273 TraceCheckUtils]: 57: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,678 INFO L273 TraceCheckUtils]: 58: Hoare triple {31729#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {31729#true} is VALID [2018-11-14 18:51:03,678 INFO L273 TraceCheckUtils]: 59: Hoare triple {31729#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {31729#true} is VALID [2018-11-14 18:51:03,678 INFO L273 TraceCheckUtils]: 60: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,679 INFO L273 TraceCheckUtils]: 61: Hoare triple {31729#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {31729#true} is VALID [2018-11-14 18:51:03,679 INFO L273 TraceCheckUtils]: 62: Hoare triple {31729#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {31729#true} is VALID [2018-11-14 18:51:03,679 INFO L273 TraceCheckUtils]: 63: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,679 INFO L273 TraceCheckUtils]: 64: Hoare triple {31729#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {31729#true} is VALID [2018-11-14 18:51:03,679 INFO L273 TraceCheckUtils]: 65: Hoare triple {31729#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {31729#true} is VALID [2018-11-14 18:51:03,679 INFO L273 TraceCheckUtils]: 66: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,679 INFO L273 TraceCheckUtils]: 67: Hoare triple {31729#true} assume !(~i~1 < 20); {31729#true} is VALID [2018-11-14 18:51:03,679 INFO L256 TraceCheckUtils]: 68: Hoare triple {31729#true} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {31729#true} is VALID [2018-11-14 18:51:03,680 INFO L273 TraceCheckUtils]: 69: Hoare triple {31729#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {31731#(= avg_~i~0 0)} is VALID [2018-11-14 18:51:03,680 INFO L273 TraceCheckUtils]: 70: Hoare triple {31731#(= avg_~i~0 0)} assume true; {31731#(= avg_~i~0 0)} is VALID [2018-11-14 18:51:03,680 INFO L273 TraceCheckUtils]: 71: Hoare triple {31731#(= avg_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31731#(= avg_~i~0 0)} is VALID [2018-11-14 18:51:03,681 INFO L273 TraceCheckUtils]: 72: Hoare triple {31731#(= avg_~i~0 0)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31732#(<= avg_~i~0 1)} is VALID [2018-11-14 18:51:03,681 INFO L273 TraceCheckUtils]: 73: Hoare triple {31732#(<= avg_~i~0 1)} assume true; {31732#(<= avg_~i~0 1)} is VALID [2018-11-14 18:51:03,681 INFO L273 TraceCheckUtils]: 74: Hoare triple {31732#(<= avg_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31732#(<= avg_~i~0 1)} is VALID [2018-11-14 18:51:03,682 INFO L273 TraceCheckUtils]: 75: Hoare triple {31732#(<= avg_~i~0 1)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31733#(<= avg_~i~0 2)} is VALID [2018-11-14 18:51:03,682 INFO L273 TraceCheckUtils]: 76: Hoare triple {31733#(<= avg_~i~0 2)} assume true; {31733#(<= avg_~i~0 2)} is VALID [2018-11-14 18:51:03,682 INFO L273 TraceCheckUtils]: 77: Hoare triple {31733#(<= avg_~i~0 2)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31733#(<= avg_~i~0 2)} is VALID [2018-11-14 18:51:03,683 INFO L273 TraceCheckUtils]: 78: Hoare triple {31733#(<= avg_~i~0 2)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31734#(<= avg_~i~0 3)} is VALID [2018-11-14 18:51:03,684 INFO L273 TraceCheckUtils]: 79: Hoare triple {31734#(<= avg_~i~0 3)} assume true; {31734#(<= avg_~i~0 3)} is VALID [2018-11-14 18:51:03,684 INFO L273 TraceCheckUtils]: 80: Hoare triple {31734#(<= avg_~i~0 3)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31734#(<= avg_~i~0 3)} is VALID [2018-11-14 18:51:03,685 INFO L273 TraceCheckUtils]: 81: Hoare triple {31734#(<= avg_~i~0 3)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31735#(<= avg_~i~0 4)} is VALID [2018-11-14 18:51:03,685 INFO L273 TraceCheckUtils]: 82: Hoare triple {31735#(<= avg_~i~0 4)} assume true; {31735#(<= avg_~i~0 4)} is VALID [2018-11-14 18:51:03,686 INFO L273 TraceCheckUtils]: 83: Hoare triple {31735#(<= avg_~i~0 4)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31735#(<= avg_~i~0 4)} is VALID [2018-11-14 18:51:03,686 INFO L273 TraceCheckUtils]: 84: Hoare triple {31735#(<= avg_~i~0 4)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31736#(<= avg_~i~0 5)} is VALID [2018-11-14 18:51:03,687 INFO L273 TraceCheckUtils]: 85: Hoare triple {31736#(<= avg_~i~0 5)} assume true; {31736#(<= avg_~i~0 5)} is VALID [2018-11-14 18:51:03,687 INFO L273 TraceCheckUtils]: 86: Hoare triple {31736#(<= avg_~i~0 5)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31736#(<= avg_~i~0 5)} is VALID [2018-11-14 18:51:03,688 INFO L273 TraceCheckUtils]: 87: Hoare triple {31736#(<= avg_~i~0 5)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31737#(<= avg_~i~0 6)} is VALID [2018-11-14 18:51:03,689 INFO L273 TraceCheckUtils]: 88: Hoare triple {31737#(<= avg_~i~0 6)} assume true; {31737#(<= avg_~i~0 6)} is VALID [2018-11-14 18:51:03,689 INFO L273 TraceCheckUtils]: 89: Hoare triple {31737#(<= avg_~i~0 6)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31737#(<= avg_~i~0 6)} is VALID [2018-11-14 18:51:03,690 INFO L273 TraceCheckUtils]: 90: Hoare triple {31737#(<= avg_~i~0 6)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31738#(<= avg_~i~0 7)} is VALID [2018-11-14 18:51:03,690 INFO L273 TraceCheckUtils]: 91: Hoare triple {31738#(<= avg_~i~0 7)} assume true; {31738#(<= avg_~i~0 7)} is VALID [2018-11-14 18:51:03,691 INFO L273 TraceCheckUtils]: 92: Hoare triple {31738#(<= avg_~i~0 7)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31738#(<= avg_~i~0 7)} is VALID [2018-11-14 18:51:03,692 INFO L273 TraceCheckUtils]: 93: Hoare triple {31738#(<= avg_~i~0 7)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31739#(<= avg_~i~0 8)} is VALID [2018-11-14 18:51:03,692 INFO L273 TraceCheckUtils]: 94: Hoare triple {31739#(<= avg_~i~0 8)} assume true; {31739#(<= avg_~i~0 8)} is VALID [2018-11-14 18:51:03,693 INFO L273 TraceCheckUtils]: 95: Hoare triple {31739#(<= avg_~i~0 8)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31739#(<= avg_~i~0 8)} is VALID [2018-11-14 18:51:03,693 INFO L273 TraceCheckUtils]: 96: Hoare triple {31739#(<= avg_~i~0 8)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31740#(<= avg_~i~0 9)} is VALID [2018-11-14 18:51:03,694 INFO L273 TraceCheckUtils]: 97: Hoare triple {31740#(<= avg_~i~0 9)} assume true; {31740#(<= avg_~i~0 9)} is VALID [2018-11-14 18:51:03,694 INFO L273 TraceCheckUtils]: 98: Hoare triple {31740#(<= avg_~i~0 9)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31740#(<= avg_~i~0 9)} is VALID [2018-11-14 18:51:03,695 INFO L273 TraceCheckUtils]: 99: Hoare triple {31740#(<= avg_~i~0 9)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31741#(<= avg_~i~0 10)} is VALID [2018-11-14 18:51:03,696 INFO L273 TraceCheckUtils]: 100: Hoare triple {31741#(<= avg_~i~0 10)} assume true; {31741#(<= avg_~i~0 10)} is VALID [2018-11-14 18:51:03,696 INFO L273 TraceCheckUtils]: 101: Hoare triple {31741#(<= avg_~i~0 10)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31741#(<= avg_~i~0 10)} is VALID [2018-11-14 18:51:03,697 INFO L273 TraceCheckUtils]: 102: Hoare triple {31741#(<= avg_~i~0 10)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31742#(<= avg_~i~0 11)} is VALID [2018-11-14 18:51:03,697 INFO L273 TraceCheckUtils]: 103: Hoare triple {31742#(<= avg_~i~0 11)} assume true; {31742#(<= avg_~i~0 11)} is VALID [2018-11-14 18:51:03,698 INFO L273 TraceCheckUtils]: 104: Hoare triple {31742#(<= avg_~i~0 11)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31742#(<= avg_~i~0 11)} is VALID [2018-11-14 18:51:03,698 INFO L273 TraceCheckUtils]: 105: Hoare triple {31742#(<= avg_~i~0 11)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31743#(<= avg_~i~0 12)} is VALID [2018-11-14 18:51:03,699 INFO L273 TraceCheckUtils]: 106: Hoare triple {31743#(<= avg_~i~0 12)} assume true; {31743#(<= avg_~i~0 12)} is VALID [2018-11-14 18:51:03,699 INFO L273 TraceCheckUtils]: 107: Hoare triple {31743#(<= avg_~i~0 12)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31743#(<= avg_~i~0 12)} is VALID [2018-11-14 18:51:03,700 INFO L273 TraceCheckUtils]: 108: Hoare triple {31743#(<= avg_~i~0 12)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31744#(<= avg_~i~0 13)} is VALID [2018-11-14 18:51:03,701 INFO L273 TraceCheckUtils]: 109: Hoare triple {31744#(<= avg_~i~0 13)} assume true; {31744#(<= avg_~i~0 13)} is VALID [2018-11-14 18:51:03,701 INFO L273 TraceCheckUtils]: 110: Hoare triple {31744#(<= avg_~i~0 13)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31744#(<= avg_~i~0 13)} is VALID [2018-11-14 18:51:03,702 INFO L273 TraceCheckUtils]: 111: Hoare triple {31744#(<= avg_~i~0 13)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31745#(<= avg_~i~0 14)} is VALID [2018-11-14 18:51:03,702 INFO L273 TraceCheckUtils]: 112: Hoare triple {31745#(<= avg_~i~0 14)} assume true; {31745#(<= avg_~i~0 14)} is VALID [2018-11-14 18:51:03,703 INFO L273 TraceCheckUtils]: 113: Hoare triple {31745#(<= avg_~i~0 14)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31745#(<= avg_~i~0 14)} is VALID [2018-11-14 18:51:03,704 INFO L273 TraceCheckUtils]: 114: Hoare triple {31745#(<= avg_~i~0 14)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31746#(<= avg_~i~0 15)} is VALID [2018-11-14 18:51:03,704 INFO L273 TraceCheckUtils]: 115: Hoare triple {31746#(<= avg_~i~0 15)} assume true; {31746#(<= avg_~i~0 15)} is VALID [2018-11-14 18:51:03,705 INFO L273 TraceCheckUtils]: 116: Hoare triple {31746#(<= avg_~i~0 15)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31746#(<= avg_~i~0 15)} is VALID [2018-11-14 18:51:03,705 INFO L273 TraceCheckUtils]: 117: Hoare triple {31746#(<= avg_~i~0 15)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31747#(<= avg_~i~0 16)} is VALID [2018-11-14 18:51:03,706 INFO L273 TraceCheckUtils]: 118: Hoare triple {31747#(<= avg_~i~0 16)} assume true; {31747#(<= avg_~i~0 16)} is VALID [2018-11-14 18:51:03,706 INFO L273 TraceCheckUtils]: 119: Hoare triple {31747#(<= avg_~i~0 16)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31747#(<= avg_~i~0 16)} is VALID [2018-11-14 18:51:03,707 INFO L273 TraceCheckUtils]: 120: Hoare triple {31747#(<= avg_~i~0 16)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31748#(<= avg_~i~0 17)} is VALID [2018-11-14 18:51:03,708 INFO L273 TraceCheckUtils]: 121: Hoare triple {31748#(<= avg_~i~0 17)} assume true; {31748#(<= avg_~i~0 17)} is VALID [2018-11-14 18:51:03,708 INFO L273 TraceCheckUtils]: 122: Hoare triple {31748#(<= avg_~i~0 17)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31748#(<= avg_~i~0 17)} is VALID [2018-11-14 18:51:03,709 INFO L273 TraceCheckUtils]: 123: Hoare triple {31748#(<= avg_~i~0 17)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31749#(<= avg_~i~0 18)} is VALID [2018-11-14 18:51:03,709 INFO L273 TraceCheckUtils]: 124: Hoare triple {31749#(<= avg_~i~0 18)} assume true; {31749#(<= avg_~i~0 18)} is VALID [2018-11-14 18:51:03,710 INFO L273 TraceCheckUtils]: 125: Hoare triple {31749#(<= avg_~i~0 18)} assume !(~i~0 < 20); {31730#false} is VALID [2018-11-14 18:51:03,710 INFO L273 TraceCheckUtils]: 126: Hoare triple {31730#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {31730#false} is VALID [2018-11-14 18:51:03,710 INFO L273 TraceCheckUtils]: 127: Hoare triple {31730#false} assume true; {31730#false} is VALID [2018-11-14 18:51:03,711 INFO L268 TraceCheckUtils]: 128: Hoare quadruple {31730#false} {31729#true} #73#return; {31730#false} is VALID [2018-11-14 18:51:03,711 INFO L273 TraceCheckUtils]: 129: Hoare triple {31730#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); {31730#false} is VALID [2018-11-14 18:51:03,711 INFO L256 TraceCheckUtils]: 130: Hoare triple {31730#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {31729#true} is VALID [2018-11-14 18:51:03,711 INFO L273 TraceCheckUtils]: 131: Hoare triple {31729#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {31729#true} is VALID [2018-11-14 18:51:03,711 INFO L273 TraceCheckUtils]: 132: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,712 INFO L273 TraceCheckUtils]: 133: Hoare triple {31729#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31729#true} is VALID [2018-11-14 18:51:03,712 INFO L273 TraceCheckUtils]: 134: Hoare triple {31729#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31729#true} is VALID [2018-11-14 18:51:03,712 INFO L273 TraceCheckUtils]: 135: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,712 INFO L273 TraceCheckUtils]: 136: Hoare triple {31729#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31729#true} is VALID [2018-11-14 18:51:03,712 INFO L273 TraceCheckUtils]: 137: Hoare triple {31729#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31729#true} is VALID [2018-11-14 18:51:03,712 INFO L273 TraceCheckUtils]: 138: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,713 INFO L273 TraceCheckUtils]: 139: Hoare triple {31729#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31729#true} is VALID [2018-11-14 18:51:03,713 INFO L273 TraceCheckUtils]: 140: Hoare triple {31729#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31729#true} is VALID [2018-11-14 18:51:03,713 INFO L273 TraceCheckUtils]: 141: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,713 INFO L273 TraceCheckUtils]: 142: Hoare triple {31729#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31729#true} is VALID [2018-11-14 18:51:03,713 INFO L273 TraceCheckUtils]: 143: Hoare triple {31729#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31729#true} is VALID [2018-11-14 18:51:03,713 INFO L273 TraceCheckUtils]: 144: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,713 INFO L273 TraceCheckUtils]: 145: Hoare triple {31729#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31729#true} is VALID [2018-11-14 18:51:03,713 INFO L273 TraceCheckUtils]: 146: Hoare triple {31729#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31729#true} is VALID [2018-11-14 18:51:03,713 INFO L273 TraceCheckUtils]: 147: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,713 INFO L273 TraceCheckUtils]: 148: Hoare triple {31729#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31729#true} is VALID [2018-11-14 18:51:03,714 INFO L273 TraceCheckUtils]: 149: Hoare triple {31729#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31729#true} is VALID [2018-11-14 18:51:03,714 INFO L273 TraceCheckUtils]: 150: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,714 INFO L273 TraceCheckUtils]: 151: Hoare triple {31729#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31729#true} is VALID [2018-11-14 18:51:03,714 INFO L273 TraceCheckUtils]: 152: Hoare triple {31729#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31729#true} is VALID [2018-11-14 18:51:03,714 INFO L273 TraceCheckUtils]: 153: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,714 INFO L273 TraceCheckUtils]: 154: Hoare triple {31729#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31729#true} is VALID [2018-11-14 18:51:03,714 INFO L273 TraceCheckUtils]: 155: Hoare triple {31729#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31729#true} is VALID [2018-11-14 18:51:03,714 INFO L273 TraceCheckUtils]: 156: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,714 INFO L273 TraceCheckUtils]: 157: Hoare triple {31729#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31729#true} is VALID [2018-11-14 18:51:03,714 INFO L273 TraceCheckUtils]: 158: Hoare triple {31729#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31729#true} is VALID [2018-11-14 18:51:03,715 INFO L273 TraceCheckUtils]: 159: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,715 INFO L273 TraceCheckUtils]: 160: Hoare triple {31729#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31729#true} is VALID [2018-11-14 18:51:03,715 INFO L273 TraceCheckUtils]: 161: Hoare triple {31729#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31729#true} is VALID [2018-11-14 18:51:03,715 INFO L273 TraceCheckUtils]: 162: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,715 INFO L273 TraceCheckUtils]: 163: Hoare triple {31729#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31729#true} is VALID [2018-11-14 18:51:03,715 INFO L273 TraceCheckUtils]: 164: Hoare triple {31729#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31729#true} is VALID [2018-11-14 18:51:03,715 INFO L273 TraceCheckUtils]: 165: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,715 INFO L273 TraceCheckUtils]: 166: Hoare triple {31729#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31729#true} is VALID [2018-11-14 18:51:03,715 INFO L273 TraceCheckUtils]: 167: Hoare triple {31729#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31729#true} is VALID [2018-11-14 18:51:03,715 INFO L273 TraceCheckUtils]: 168: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,716 INFO L273 TraceCheckUtils]: 169: Hoare triple {31729#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31729#true} is VALID [2018-11-14 18:51:03,716 INFO L273 TraceCheckUtils]: 170: Hoare triple {31729#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31729#true} is VALID [2018-11-14 18:51:03,716 INFO L273 TraceCheckUtils]: 171: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,716 INFO L273 TraceCheckUtils]: 172: Hoare triple {31729#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31729#true} is VALID [2018-11-14 18:51:03,716 INFO L273 TraceCheckUtils]: 173: Hoare triple {31729#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31729#true} is VALID [2018-11-14 18:51:03,716 INFO L273 TraceCheckUtils]: 174: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,716 INFO L273 TraceCheckUtils]: 175: Hoare triple {31729#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31729#true} is VALID [2018-11-14 18:51:03,716 INFO L273 TraceCheckUtils]: 176: Hoare triple {31729#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31729#true} is VALID [2018-11-14 18:51:03,716 INFO L273 TraceCheckUtils]: 177: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,716 INFO L273 TraceCheckUtils]: 178: Hoare triple {31729#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31729#true} is VALID [2018-11-14 18:51:03,717 INFO L273 TraceCheckUtils]: 179: Hoare triple {31729#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31729#true} is VALID [2018-11-14 18:51:03,717 INFO L273 TraceCheckUtils]: 180: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,717 INFO L273 TraceCheckUtils]: 181: Hoare triple {31729#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31729#true} is VALID [2018-11-14 18:51:03,717 INFO L273 TraceCheckUtils]: 182: Hoare triple {31729#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31729#true} is VALID [2018-11-14 18:51:03,717 INFO L273 TraceCheckUtils]: 183: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,717 INFO L273 TraceCheckUtils]: 184: Hoare triple {31729#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31729#true} is VALID [2018-11-14 18:51:03,717 INFO L273 TraceCheckUtils]: 185: Hoare triple {31729#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31729#true} is VALID [2018-11-14 18:51:03,717 INFO L273 TraceCheckUtils]: 186: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,717 INFO L273 TraceCheckUtils]: 187: Hoare triple {31729#true} assume !(~i~0 < 20); {31729#true} is VALID [2018-11-14 18:51:03,718 INFO L273 TraceCheckUtils]: 188: Hoare triple {31729#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {31729#true} is VALID [2018-11-14 18:51:03,718 INFO L273 TraceCheckUtils]: 189: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,718 INFO L268 TraceCheckUtils]: 190: Hoare quadruple {31729#true} {31730#false} #75#return; {31730#false} is VALID [2018-11-14 18:51:03,718 INFO L273 TraceCheckUtils]: 191: Hoare triple {31730#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; {31730#false} is VALID [2018-11-14 18:51:03,718 INFO L273 TraceCheckUtils]: 192: Hoare triple {31730#false} assume true; {31730#false} is VALID [2018-11-14 18:51:03,718 INFO L273 TraceCheckUtils]: 193: Hoare triple {31730#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {31730#false} is VALID [2018-11-14 18:51:03,718 INFO L273 TraceCheckUtils]: 194: Hoare triple {31730#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {31730#false} is VALID [2018-11-14 18:51:03,718 INFO L273 TraceCheckUtils]: 195: Hoare triple {31730#false} assume true; {31730#false} is VALID [2018-11-14 18:51:03,718 INFO L273 TraceCheckUtils]: 196: Hoare triple {31730#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {31730#false} is VALID [2018-11-14 18:51:03,718 INFO L273 TraceCheckUtils]: 197: Hoare triple {31730#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {31730#false} is VALID [2018-11-14 18:51:03,719 INFO L273 TraceCheckUtils]: 198: Hoare triple {31730#false} assume true; {31730#false} is VALID [2018-11-14 18:51:03,719 INFO L273 TraceCheckUtils]: 199: Hoare triple {31730#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {31730#false} is VALID [2018-11-14 18:51:03,719 INFO L273 TraceCheckUtils]: 200: Hoare triple {31730#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {31730#false} is VALID [2018-11-14 18:51:03,719 INFO L273 TraceCheckUtils]: 201: Hoare triple {31730#false} assume true; {31730#false} is VALID [2018-11-14 18:51:03,719 INFO L273 TraceCheckUtils]: 202: Hoare triple {31730#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {31730#false} is VALID [2018-11-14 18:51:03,719 INFO L273 TraceCheckUtils]: 203: Hoare triple {31730#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {31730#false} is VALID [2018-11-14 18:51:03,719 INFO L273 TraceCheckUtils]: 204: Hoare triple {31730#false} assume true; {31730#false} is VALID [2018-11-14 18:51:03,719 INFO L273 TraceCheckUtils]: 205: Hoare triple {31730#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {31730#false} is VALID [2018-11-14 18:51:03,719 INFO L273 TraceCheckUtils]: 206: Hoare triple {31730#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {31730#false} is VALID [2018-11-14 18:51:03,719 INFO L273 TraceCheckUtils]: 207: Hoare triple {31730#false} assume true; {31730#false} is VALID [2018-11-14 18:51:03,720 INFO L273 TraceCheckUtils]: 208: Hoare triple {31730#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {31730#false} is VALID [2018-11-14 18:51:03,720 INFO L273 TraceCheckUtils]: 209: Hoare triple {31730#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {31730#false} is VALID [2018-11-14 18:51:03,720 INFO L273 TraceCheckUtils]: 210: Hoare triple {31730#false} assume true; {31730#false} is VALID [2018-11-14 18:51:03,720 INFO L273 TraceCheckUtils]: 211: Hoare triple {31730#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {31730#false} is VALID [2018-11-14 18:51:03,720 INFO L273 TraceCheckUtils]: 212: Hoare triple {31730#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {31730#false} is VALID [2018-11-14 18:51:03,720 INFO L273 TraceCheckUtils]: 213: Hoare triple {31730#false} assume true; {31730#false} is VALID [2018-11-14 18:51:03,720 INFO L273 TraceCheckUtils]: 214: Hoare triple {31730#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {31730#false} is VALID [2018-11-14 18:51:03,720 INFO L273 TraceCheckUtils]: 215: Hoare triple {31730#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {31730#false} is VALID [2018-11-14 18:51:03,720 INFO L273 TraceCheckUtils]: 216: Hoare triple {31730#false} assume true; {31730#false} is VALID [2018-11-14 18:51:03,721 INFO L273 TraceCheckUtils]: 217: Hoare triple {31730#false} assume !!(~i~2 < 19);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {31730#false} is VALID [2018-11-14 18:51:03,721 INFO L273 TraceCheckUtils]: 218: Hoare triple {31730#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {31730#false} is VALID [2018-11-14 18:51:03,721 INFO L273 TraceCheckUtils]: 219: Hoare triple {31730#false} assume true; {31730#false} is VALID [2018-11-14 18:51:03,721 INFO L273 TraceCheckUtils]: 220: Hoare triple {31730#false} assume !(~i~2 < 19); {31730#false} is VALID [2018-11-14 18:51:03,721 INFO L273 TraceCheckUtils]: 221: Hoare triple {31730#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 76, 4); {31730#false} is VALID [2018-11-14 18:51:03,721 INFO L256 TraceCheckUtils]: 222: Hoare triple {31730#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {31729#true} is VALID [2018-11-14 18:51:03,721 INFO L273 TraceCheckUtils]: 223: Hoare triple {31729#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {31729#true} is VALID [2018-11-14 18:51:03,721 INFO L273 TraceCheckUtils]: 224: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,721 INFO L273 TraceCheckUtils]: 225: Hoare triple {31729#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31729#true} is VALID [2018-11-14 18:51:03,721 INFO L273 TraceCheckUtils]: 226: Hoare triple {31729#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31729#true} is VALID [2018-11-14 18:51:03,722 INFO L273 TraceCheckUtils]: 227: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,722 INFO L273 TraceCheckUtils]: 228: Hoare triple {31729#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31729#true} is VALID [2018-11-14 18:51:03,722 INFO L273 TraceCheckUtils]: 229: Hoare triple {31729#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31729#true} is VALID [2018-11-14 18:51:03,722 INFO L273 TraceCheckUtils]: 230: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,722 INFO L273 TraceCheckUtils]: 231: Hoare triple {31729#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31729#true} is VALID [2018-11-14 18:51:03,722 INFO L273 TraceCheckUtils]: 232: Hoare triple {31729#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31729#true} is VALID [2018-11-14 18:51:03,722 INFO L273 TraceCheckUtils]: 233: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,722 INFO L273 TraceCheckUtils]: 234: Hoare triple {31729#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31729#true} is VALID [2018-11-14 18:51:03,722 INFO L273 TraceCheckUtils]: 235: Hoare triple {31729#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31729#true} is VALID [2018-11-14 18:51:03,722 INFO L273 TraceCheckUtils]: 236: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,723 INFO L273 TraceCheckUtils]: 237: Hoare triple {31729#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31729#true} is VALID [2018-11-14 18:51:03,723 INFO L273 TraceCheckUtils]: 238: Hoare triple {31729#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31729#true} is VALID [2018-11-14 18:51:03,723 INFO L273 TraceCheckUtils]: 239: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,723 INFO L273 TraceCheckUtils]: 240: Hoare triple {31729#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31729#true} is VALID [2018-11-14 18:51:03,723 INFO L273 TraceCheckUtils]: 241: Hoare triple {31729#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31729#true} is VALID [2018-11-14 18:51:03,723 INFO L273 TraceCheckUtils]: 242: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,723 INFO L273 TraceCheckUtils]: 243: Hoare triple {31729#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31729#true} is VALID [2018-11-14 18:51:03,723 INFO L273 TraceCheckUtils]: 244: Hoare triple {31729#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31729#true} is VALID [2018-11-14 18:51:03,723 INFO L273 TraceCheckUtils]: 245: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,723 INFO L273 TraceCheckUtils]: 246: Hoare triple {31729#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31729#true} is VALID [2018-11-14 18:51:03,724 INFO L273 TraceCheckUtils]: 247: Hoare triple {31729#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31729#true} is VALID [2018-11-14 18:51:03,724 INFO L273 TraceCheckUtils]: 248: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,724 INFO L273 TraceCheckUtils]: 249: Hoare triple {31729#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31729#true} is VALID [2018-11-14 18:51:03,724 INFO L273 TraceCheckUtils]: 250: Hoare triple {31729#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31729#true} is VALID [2018-11-14 18:51:03,724 INFO L273 TraceCheckUtils]: 251: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,724 INFO L273 TraceCheckUtils]: 252: Hoare triple {31729#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31729#true} is VALID [2018-11-14 18:51:03,724 INFO L273 TraceCheckUtils]: 253: Hoare triple {31729#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31729#true} is VALID [2018-11-14 18:51:03,724 INFO L273 TraceCheckUtils]: 254: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,724 INFO L273 TraceCheckUtils]: 255: Hoare triple {31729#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31729#true} is VALID [2018-11-14 18:51:03,724 INFO L273 TraceCheckUtils]: 256: Hoare triple {31729#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31729#true} is VALID [2018-11-14 18:51:03,725 INFO L273 TraceCheckUtils]: 257: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,725 INFO L273 TraceCheckUtils]: 258: Hoare triple {31729#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31729#true} is VALID [2018-11-14 18:51:03,725 INFO L273 TraceCheckUtils]: 259: Hoare triple {31729#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31729#true} is VALID [2018-11-14 18:51:03,725 INFO L273 TraceCheckUtils]: 260: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,725 INFO L273 TraceCheckUtils]: 261: Hoare triple {31729#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31729#true} is VALID [2018-11-14 18:51:03,725 INFO L273 TraceCheckUtils]: 262: Hoare triple {31729#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31729#true} is VALID [2018-11-14 18:51:03,725 INFO L273 TraceCheckUtils]: 263: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,725 INFO L273 TraceCheckUtils]: 264: Hoare triple {31729#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31729#true} is VALID [2018-11-14 18:51:03,725 INFO L273 TraceCheckUtils]: 265: Hoare triple {31729#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31729#true} is VALID [2018-11-14 18:51:03,725 INFO L273 TraceCheckUtils]: 266: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,726 INFO L273 TraceCheckUtils]: 267: Hoare triple {31729#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31729#true} is VALID [2018-11-14 18:51:03,726 INFO L273 TraceCheckUtils]: 268: Hoare triple {31729#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31729#true} is VALID [2018-11-14 18:51:03,726 INFO L273 TraceCheckUtils]: 269: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,726 INFO L273 TraceCheckUtils]: 270: Hoare triple {31729#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31729#true} is VALID [2018-11-14 18:51:03,726 INFO L273 TraceCheckUtils]: 271: Hoare triple {31729#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31729#true} is VALID [2018-11-14 18:51:03,726 INFO L273 TraceCheckUtils]: 272: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,726 INFO L273 TraceCheckUtils]: 273: Hoare triple {31729#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31729#true} is VALID [2018-11-14 18:51:03,726 INFO L273 TraceCheckUtils]: 274: Hoare triple {31729#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31729#true} is VALID [2018-11-14 18:51:03,726 INFO L273 TraceCheckUtils]: 275: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,726 INFO L273 TraceCheckUtils]: 276: Hoare triple {31729#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + #t~mem1;havoc #t~mem1; {31729#true} is VALID [2018-11-14 18:51:03,727 INFO L273 TraceCheckUtils]: 277: Hoare triple {31729#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {31729#true} is VALID [2018-11-14 18:51:03,727 INFO L273 TraceCheckUtils]: 278: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,727 INFO L273 TraceCheckUtils]: 279: Hoare triple {31729#true} assume !(~i~0 < 20); {31729#true} is VALID [2018-11-14 18:51:03,727 INFO L273 TraceCheckUtils]: 280: Hoare triple {31729#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 20 != 0 then ~ret~0 / 20 + 1 else ~ret~0 / 20) % 4294967296 - 4294967296); {31729#true} is VALID [2018-11-14 18:51:03,727 INFO L273 TraceCheckUtils]: 281: Hoare triple {31729#true} assume true; {31729#true} is VALID [2018-11-14 18:51:03,727 INFO L268 TraceCheckUtils]: 282: Hoare quadruple {31729#true} {31730#false} #77#return; {31730#false} is VALID [2018-11-14 18:51:03,727 INFO L273 TraceCheckUtils]: 283: Hoare triple {31730#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {31730#false} is VALID [2018-11-14 18:51:03,727 INFO L273 TraceCheckUtils]: 284: Hoare triple {31730#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {31730#false} is VALID [2018-11-14 18:51:03,727 INFO L273 TraceCheckUtils]: 285: Hoare triple {31730#false} assume !false; {31730#false} is VALID [2018-11-14 18:51:03,757 INFO L134 CoverageAnalysis]: Checked inductivity of 5371 backedges. 0 proven. 2593 refuted. 0 times theorem prover too weak. 2778 trivial. 0 not checked. [2018-11-14 18:51:03,757 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:51:03,757 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 33 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 33 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:51:03,766 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 18:51:03,864 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:51:03,910 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:51:03,912 INFO L273 TraceCheckSpWp]: Computing forward predicates...