java -ea -Xmx8000000000 -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc ../../../trunk/examples/toolchains/AutomizerCInline_WitnessPrinter.xml -s ../../../trunk/examples/settings/default/automizer/svcomp-Reach-32bit-Automizer_Default.epf -i ../../../trunk/examples/svcomp/reducercommutativity/rangesum40_false-unreach-call.i -------------------------------------------------------------------------------- This is Ultimate 0.1.23-61f4311 [2018-11-23 12:13:34,488 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-11-23 12:13:34,490 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-11-23 12:13:34,503 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-11-23 12:13:34,503 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-11-23 12:13:34,505 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-11-23 12:13:34,506 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-11-23 12:13:34,508 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-11-23 12:13:34,510 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-11-23 12:13:34,511 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-11-23 12:13:34,512 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-11-23 12:13:34,512 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-11-23 12:13:34,513 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-11-23 12:13:34,514 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-11-23 12:13:34,515 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2018-11-23 12:13:34,516 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-11-23 12:13:34,517 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-11-23 12:13:34,519 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-11-23 12:13:34,522 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-11-23 12:13:34,523 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-11-23 12:13:34,525 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-11-23 12:13:34,526 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-11-23 12:13:34,528 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-11-23 12:13:34,529 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-11-23 12:13:34,529 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2018-11-23 12:13:34,530 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-11-23 12:13:34,531 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-11-23 12:13:34,532 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2018-11-23 12:13:34,533 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-11-23 12:13:34,534 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-11-23 12:13:34,535 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-11-23 12:13:34,535 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-11-23 12:13:34,536 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2018-11-23 12:13:34,536 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2018-11-23 12:13:34,537 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-11-23 12:13:34,538 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-11-23 12:13:34,538 INFO L98 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/default/automizer/svcomp-Reach-32bit-Automizer_Default.epf [2018-11-23 12:13:34,565 INFO L110 SettingsManager]: Loading preferences was successful [2018-11-23 12:13:34,565 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-11-23 12:13:34,566 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2018-11-23 12:13:34,566 INFO L133 SettingsManager]: * ... calls to implemented procedures=ONLY_FOR_CONCURRENT_PROGRAMS [2018-11-23 12:13:34,568 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2018-11-23 12:13:34,568 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2018-11-23 12:13:34,569 INFO L133 SettingsManager]: * Use SBE=true [2018-11-23 12:13:34,570 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-11-23 12:13:34,570 INFO L133 SettingsManager]: * sizeof long=4 [2018-11-23 12:13:34,570 INFO L133 SettingsManager]: * Overapproximate operations on floating types=true [2018-11-23 12:13:34,570 INFO L133 SettingsManager]: * sizeof POINTER=4 [2018-11-23 12:13:34,571 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-11-23 12:13:34,571 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2018-11-23 12:13:34,571 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2018-11-23 12:13:34,571 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2018-11-23 12:13:34,572 INFO L133 SettingsManager]: * sizeof long double=12 [2018-11-23 12:13:34,573 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2018-11-23 12:13:34,573 INFO L133 SettingsManager]: * Use constant arrays=true [2018-11-23 12:13:34,573 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2018-11-23 12:13:34,573 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-11-23 12:13:34,574 INFO L133 SettingsManager]: * Size of a code block=SequenceOfStatements [2018-11-23 12:13:34,574 INFO L133 SettingsManager]: * To the following directory=./dump/ [2018-11-23 12:13:34,574 INFO L133 SettingsManager]: * SMT solver=External_DefaultMode [2018-11-23 12:13:34,574 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2018-11-23 12:13:34,574 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-11-23 12:13:34,575 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2018-11-23 12:13:34,575 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2018-11-23 12:13:34,575 INFO L133 SettingsManager]: * Trace refinement strategy=CAMEL [2018-11-23 12:13:34,575 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2018-11-23 12:13:34,576 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2018-11-23 12:13:34,576 INFO L133 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2018-11-23 12:13:34,633 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-11-23 12:13:34,654 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2018-11-23 12:13:34,658 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2018-11-23 12:13:34,659 INFO L271 PluginConnector]: Initializing CDTParser... [2018-11-23 12:13:34,660 INFO L276 PluginConnector]: CDTParser initialized [2018-11-23 12:13:34,660 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/reducercommutativity/rangesum40_false-unreach-call.i [2018-11-23 12:13:34,728 INFO L221 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/4c6875db0/fa082661fea0443b88485cb0370d0b52/FLAG06cefc27c [2018-11-23 12:13:35,266 INFO L307 CDTParser]: Found 1 translation units. [2018-11-23 12:13:35,266 INFO L161 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/reducercommutativity/rangesum40_false-unreach-call.i [2018-11-23 12:13:35,274 INFO L355 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/4c6875db0/fa082661fea0443b88485cb0370d0b52/FLAG06cefc27c [2018-11-23 12:13:35,566 INFO L363 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/4c6875db0/fa082661fea0443b88485cb0370d0b52 [2018-11-23 12:13:35,576 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-11-23 12:13:35,578 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2018-11-23 12:13:35,579 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-11-23 12:13:35,579 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-11-23 12:13:35,583 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-11-23 12:13:35,585 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 12:13:35" (1/1) ... [2018-11-23 12:13:35,588 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@5cc456a8 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:13:35, skipping insertion in model container [2018-11-23 12:13:35,588 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 12:13:35" (1/1) ... [2018-11-23 12:13:35,599 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2018-11-23 12:13:35,625 INFO L176 MainTranslator]: Built tables and reachable declarations [2018-11-23 12:13:35,867 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 12:13:35,883 INFO L191 MainTranslator]: Completed pre-run [2018-11-23 12:13:35,935 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 12:13:35,957 INFO L195 MainTranslator]: Completed translation [2018-11-23 12:13:35,958 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:13:35 WrapperNode [2018-11-23 12:13:35,958 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-11-23 12:13:35,959 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2018-11-23 12:13:35,959 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2018-11-23 12:13:35,959 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2018-11-23 12:13:35,971 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:13:35" (1/1) ... [2018-11-23 12:13:35,984 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:13:35" (1/1) ... [2018-11-23 12:13:35,994 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2018-11-23 12:13:35,995 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-11-23 12:13:35,995 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-11-23 12:13:35,995 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-11-23 12:13:36,008 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:13:35" (1/1) ... [2018-11-23 12:13:36,008 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:13:35" (1/1) ... [2018-11-23 12:13:36,011 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:13:35" (1/1) ... [2018-11-23 12:13:36,012 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:13:35" (1/1) ... [2018-11-23 12:13:36,042 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:13:35" (1/1) ... [2018-11-23 12:13:36,054 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:13:35" (1/1) ... [2018-11-23 12:13:36,059 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:13:35" (1/1) ... [2018-11-23 12:13:36,062 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-11-23 12:13:36,063 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-11-23 12:13:36,069 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-11-23 12:13:36,069 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-11-23 12:13:36,070 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:13:35" (1/1) ... No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2018-11-23 12:13:36,279 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2018-11-23 12:13:36,280 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2018-11-23 12:13:36,280 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2018-11-23 12:13:36,280 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.alloc [2018-11-23 12:13:36,280 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-11-23 12:13:36,280 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-11-23 12:13:36,280 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2018-11-23 12:13:36,281 INFO L130 BoogieDeclarations]: Found specification of procedure main [2018-11-23 12:13:36,281 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2018-11-23 12:13:36,281 INFO L130 BoogieDeclarations]: Found specification of procedure rangesum [2018-11-23 12:13:36,281 INFO L138 BoogieDeclarations]: Found implementation of procedure rangesum [2018-11-23 12:13:36,281 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2018-11-23 12:13:36,281 INFO L130 BoogieDeclarations]: Found specification of procedure init_nondet [2018-11-23 12:13:36,281 INFO L138 BoogieDeclarations]: Found implementation of procedure init_nondet [2018-11-23 12:13:37,350 INFO L275 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-11-23 12:13:37,351 INFO L280 CfgBuilder]: Removed 3 assue(true) statements. [2018-11-23 12:13:37,351 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 12:13:37 BoogieIcfgContainer [2018-11-23 12:13:37,351 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-11-23 12:13:37,352 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2018-11-23 12:13:37,353 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2018-11-23 12:13:37,356 INFO L276 PluginConnector]: TraceAbstraction initialized [2018-11-23 12:13:37,356 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 23.11 12:13:35" (1/3) ... [2018-11-23 12:13:37,357 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@12aea8de and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 12:13:37, skipping insertion in model container [2018-11-23 12:13:37,358 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:13:35" (2/3) ... [2018-11-23 12:13:37,358 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@12aea8de and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 12:13:37, skipping insertion in model container [2018-11-23 12:13:37,358 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 12:13:37" (3/3) ... [2018-11-23 12:13:37,360 INFO L112 eAbstractionObserver]: Analyzing ICFG rangesum40_false-unreach-call.i [2018-11-23 12:13:37,369 INFO L156 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2018-11-23 12:13:37,377 INFO L168 ceAbstractionStarter]: Appying trace abstraction to program that has 1 error locations. [2018-11-23 12:13:37,395 INFO L257 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2018-11-23 12:13:37,430 INFO L133 ementStrategyFactory]: Using default assertion order modulation [2018-11-23 12:13:37,431 INFO L382 AbstractCegarLoop]: Interprodecural is true [2018-11-23 12:13:37,431 INFO L383 AbstractCegarLoop]: Hoare is true [2018-11-23 12:13:37,432 INFO L384 AbstractCegarLoop]: Compute interpolants for FPandBP [2018-11-23 12:13:37,433 INFO L385 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2018-11-23 12:13:37,433 INFO L386 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2018-11-23 12:13:37,433 INFO L387 AbstractCegarLoop]: Difference is false [2018-11-23 12:13:37,434 INFO L388 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2018-11-23 12:13:37,434 INFO L393 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2018-11-23 12:13:37,456 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states. [2018-11-23 12:13:37,464 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2018-11-23 12:13:37,465 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:13:37,466 INFO L402 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, 1, 1, 1, 1, 1] [2018-11-23 12:13:37,469 INFO L423 AbstractCegarLoop]: === Iteration 1 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:13:37,475 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:13:37,475 INFO L82 PathProgramCache]: Analyzing trace with hash -332770493, now seen corresponding path program 1 times [2018-11-23 12:13:37,477 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:13:37,478 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:13:37,537 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:13:37,538 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:13:37,538 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:13:37,603 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:13:37,648 INFO L422 seRefinementStrategy]: Interpolation failed due to KNOWN_IGNORE: Unsupported non-linear arithmetic [2018-11-23 12:13:37,649 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:13:37,649 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 2 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 2 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:13:37,665 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:13:37,723 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:13:37,758 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:13:37,763 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:13:37,961 INFO L256 TraceCheckUtils]: 0: Hoare triple {40#true} call ULTIMATE.init(); {40#true} is VALID [2018-11-23 12:13:37,964 INFO L273 TraceCheckUtils]: 1: Hoare triple {40#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {40#true} is VALID [2018-11-23 12:13:37,965 INFO L273 TraceCheckUtils]: 2: Hoare triple {40#true} assume true; {40#true} is VALID [2018-11-23 12:13:37,965 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {40#true} {40#true} #78#return; {40#true} is VALID [2018-11-23 12:13:37,965 INFO L256 TraceCheckUtils]: 4: Hoare triple {40#true} call #t~ret12 := main(); {40#true} is VALID [2018-11-23 12:13:37,966 INFO L273 TraceCheckUtils]: 5: Hoare triple {40#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {40#true} is VALID [2018-11-23 12:13:37,966 INFO L256 TraceCheckUtils]: 6: Hoare triple {40#true} call init_nondet(~#x~0.base, ~#x~0.offset); {40#true} is VALID [2018-11-23 12:13:37,966 INFO L273 TraceCheckUtils]: 7: Hoare triple {40#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {40#true} is VALID [2018-11-23 12:13:37,967 INFO L273 TraceCheckUtils]: 8: Hoare triple {40#true} assume !(~i~0 < 40); {40#true} is VALID [2018-11-23 12:13:37,967 INFO L273 TraceCheckUtils]: 9: Hoare triple {40#true} assume true; {40#true} is VALID [2018-11-23 12:13:37,968 INFO L268 TraceCheckUtils]: 10: Hoare quadruple {40#true} {40#true} #82#return; {40#true} is VALID [2018-11-23 12:13:37,968 INFO L273 TraceCheckUtils]: 11: Hoare triple {40#true} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {40#true} is VALID [2018-11-23 12:13:37,968 INFO L256 TraceCheckUtils]: 12: Hoare triple {40#true} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {40#true} is VALID [2018-11-23 12:13:37,969 INFO L273 TraceCheckUtils]: 13: Hoare triple {40#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {40#true} is VALID [2018-11-23 12:13:37,972 INFO L273 TraceCheckUtils]: 14: Hoare triple {40#true} assume !true; {41#false} is VALID [2018-11-23 12:13:37,973 INFO L273 TraceCheckUtils]: 15: Hoare triple {41#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {41#false} is VALID [2018-11-23 12:13:37,973 INFO L273 TraceCheckUtils]: 16: Hoare triple {41#false} assume true; {41#false} is VALID [2018-11-23 12:13:37,974 INFO L268 TraceCheckUtils]: 17: Hoare quadruple {41#false} {40#true} #84#return; {41#false} is VALID [2018-11-23 12:13:37,974 INFO L273 TraceCheckUtils]: 18: Hoare triple {41#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {41#false} is VALID [2018-11-23 12:13:37,975 INFO L256 TraceCheckUtils]: 19: Hoare triple {41#false} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {41#false} is VALID [2018-11-23 12:13:37,975 INFO L273 TraceCheckUtils]: 20: Hoare triple {41#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {41#false} is VALID [2018-11-23 12:13:37,976 INFO L273 TraceCheckUtils]: 21: Hoare triple {41#false} assume !true; {41#false} is VALID [2018-11-23 12:13:37,976 INFO L273 TraceCheckUtils]: 22: Hoare triple {41#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {41#false} is VALID [2018-11-23 12:13:37,976 INFO L273 TraceCheckUtils]: 23: Hoare triple {41#false} assume true; {41#false} is VALID [2018-11-23 12:13:37,977 INFO L268 TraceCheckUtils]: 24: Hoare quadruple {41#false} {41#false} #86#return; {41#false} is VALID [2018-11-23 12:13:37,977 INFO L273 TraceCheckUtils]: 25: Hoare triple {41#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {41#false} is VALID [2018-11-23 12:13:37,977 INFO L273 TraceCheckUtils]: 26: Hoare triple {41#false} assume !(~i~2 < 39); {41#false} is VALID [2018-11-23 12:13:37,978 INFO L273 TraceCheckUtils]: 27: Hoare triple {41#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {41#false} is VALID [2018-11-23 12:13:37,978 INFO L256 TraceCheckUtils]: 28: Hoare triple {41#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {41#false} is VALID [2018-11-23 12:13:37,979 INFO L273 TraceCheckUtils]: 29: Hoare triple {41#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {41#false} is VALID [2018-11-23 12:13:37,979 INFO L273 TraceCheckUtils]: 30: Hoare triple {41#false} assume !true; {41#false} is VALID [2018-11-23 12:13:37,979 INFO L273 TraceCheckUtils]: 31: Hoare triple {41#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {41#false} is VALID [2018-11-23 12:13:37,980 INFO L273 TraceCheckUtils]: 32: Hoare triple {41#false} assume true; {41#false} is VALID [2018-11-23 12:13:37,980 INFO L268 TraceCheckUtils]: 33: Hoare quadruple {41#false} {41#false} #88#return; {41#false} is VALID [2018-11-23 12:13:37,980 INFO L273 TraceCheckUtils]: 34: Hoare triple {41#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {41#false} is VALID [2018-11-23 12:13:37,981 INFO L273 TraceCheckUtils]: 35: Hoare triple {41#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {41#false} is VALID [2018-11-23 12:13:37,981 INFO L273 TraceCheckUtils]: 36: Hoare triple {41#false} assume !false; {41#false} is VALID [2018-11-23 12:13:37,988 INFO L134 CoverageAnalysis]: Checked inductivity of 15 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 11 trivial. 0 not checked. [2018-11-23 12:13:38,019 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 12:13:38,019 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2018-11-23 12:13:38,025 INFO L78 Accepts]: Start accepts. Automaton has 2 states. Word has length 37 [2018-11-23 12:13:38,028 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:13:38,031 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states. [2018-11-23 12:13:38,199 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-23 12:13:38,199 INFO L459 AbstractCegarLoop]: Interpolant automaton has 2 states [2018-11-23 12:13:38,208 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2018-11-23 12:13:38,208 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2018-11-23 12:13:38,211 INFO L87 Difference]: Start difference. First operand 37 states. Second operand 2 states. [2018-11-23 12:13:38,390 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:38,390 INFO L93 Difference]: Finished difference Result 64 states and 85 transitions. [2018-11-23 12:13:38,390 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2018-11-23 12:13:38,390 INFO L78 Accepts]: Start accepts. Automaton has 2 states. Word has length 37 [2018-11-23 12:13:38,391 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:13:38,392 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 2 states. [2018-11-23 12:13:38,405 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 85 transitions. [2018-11-23 12:13:38,405 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 2 states. [2018-11-23 12:13:38,412 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 85 transitions. [2018-11-23 12:13:38,412 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states and 85 transitions. [2018-11-23 12:13:38,998 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-23 12:13:39,011 INFO L225 Difference]: With dead ends: 64 [2018-11-23 12:13:39,012 INFO L226 Difference]: Without dead ends: 32 [2018-11-23 12:13:39,016 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 36 GetRequests, 36 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2018-11-23 12:13:39,034 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32 states. [2018-11-23 12:13:39,067 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32 to 32. [2018-11-23 12:13:39,067 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:13:39,068 INFO L82 GeneralOperation]: Start isEquivalent. First operand 32 states. Second operand 32 states. [2018-11-23 12:13:39,068 INFO L74 IsIncluded]: Start isIncluded. First operand 32 states. Second operand 32 states. [2018-11-23 12:13:39,068 INFO L87 Difference]: Start difference. First operand 32 states. Second operand 32 states. [2018-11-23 12:13:39,074 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:39,075 INFO L93 Difference]: Finished difference Result 32 states and 38 transitions. [2018-11-23 12:13:39,075 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 38 transitions. [2018-11-23 12:13:39,076 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:13:39,076 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:13:39,077 INFO L74 IsIncluded]: Start isIncluded. First operand 32 states. Second operand 32 states. [2018-11-23 12:13:39,077 INFO L87 Difference]: Start difference. First operand 32 states. Second operand 32 states. [2018-11-23 12:13:39,082 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:39,083 INFO L93 Difference]: Finished difference Result 32 states and 38 transitions. [2018-11-23 12:13:39,083 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 38 transitions. [2018-11-23 12:13:39,084 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:13:39,084 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:13:39,084 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:13:39,085 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:13:39,085 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 32 states. [2018-11-23 12:13:39,089 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 38 transitions. [2018-11-23 12:13:39,091 INFO L78 Accepts]: Start accepts. Automaton has 32 states and 38 transitions. Word has length 37 [2018-11-23 12:13:39,091 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:13:39,092 INFO L480 AbstractCegarLoop]: Abstraction has 32 states and 38 transitions. [2018-11-23 12:13:39,092 INFO L481 AbstractCegarLoop]: Interpolant automaton has 2 states. [2018-11-23 12:13:39,092 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 38 transitions. [2018-11-23 12:13:39,094 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2018-11-23 12:13:39,094 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:13:39,094 INFO L402 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, 1, 1, 1, 1, 1] [2018-11-23 12:13:39,095 INFO L423 AbstractCegarLoop]: === Iteration 2 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:13:39,095 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:13:39,095 INFO L82 PathProgramCache]: Analyzing trace with hash -991975144, now seen corresponding path program 1 times [2018-11-23 12:13:39,096 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:13:39,096 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:13:39,097 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:13:39,097 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:13:39,097 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:13:39,113 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:13:39,113 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:13:39,114 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 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 3 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:13:39,127 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:13:39,166 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:13:39,183 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:13:39,185 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:13:39,574 INFO L256 TraceCheckUtils]: 0: Hoare triple {344#true} call ULTIMATE.init(); {344#true} is VALID [2018-11-23 12:13:39,574 INFO L273 TraceCheckUtils]: 1: Hoare triple {344#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {344#true} is VALID [2018-11-23 12:13:39,574 INFO L273 TraceCheckUtils]: 2: Hoare triple {344#true} assume true; {344#true} is VALID [2018-11-23 12:13:39,575 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {344#true} {344#true} #78#return; {344#true} is VALID [2018-11-23 12:13:39,576 INFO L256 TraceCheckUtils]: 4: Hoare triple {344#true} call #t~ret12 := main(); {344#true} is VALID [2018-11-23 12:13:39,576 INFO L273 TraceCheckUtils]: 5: Hoare triple {344#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {344#true} is VALID [2018-11-23 12:13:39,577 INFO L256 TraceCheckUtils]: 6: Hoare triple {344#true} call init_nondet(~#x~0.base, ~#x~0.offset); {344#true} is VALID [2018-11-23 12:13:39,586 INFO L273 TraceCheckUtils]: 7: Hoare triple {344#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {370#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:13:39,587 INFO L273 TraceCheckUtils]: 8: Hoare triple {370#(<= init_nondet_~i~0 0)} assume !(~i~0 < 40); {345#false} is VALID [2018-11-23 12:13:39,587 INFO L273 TraceCheckUtils]: 9: Hoare triple {345#false} assume true; {345#false} is VALID [2018-11-23 12:13:39,588 INFO L268 TraceCheckUtils]: 10: Hoare quadruple {345#false} {344#true} #82#return; {345#false} is VALID [2018-11-23 12:13:39,588 INFO L273 TraceCheckUtils]: 11: Hoare triple {345#false} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {345#false} is VALID [2018-11-23 12:13:39,588 INFO L256 TraceCheckUtils]: 12: Hoare triple {345#false} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {345#false} is VALID [2018-11-23 12:13:39,589 INFO L273 TraceCheckUtils]: 13: Hoare triple {345#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {345#false} is VALID [2018-11-23 12:13:39,589 INFO L273 TraceCheckUtils]: 14: Hoare triple {345#false} assume !(~i~1 < 40); {345#false} is VALID [2018-11-23 12:13:39,589 INFO L273 TraceCheckUtils]: 15: Hoare triple {345#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {345#false} is VALID [2018-11-23 12:13:39,590 INFO L273 TraceCheckUtils]: 16: Hoare triple {345#false} assume true; {345#false} is VALID [2018-11-23 12:13:39,590 INFO L268 TraceCheckUtils]: 17: Hoare quadruple {345#false} {345#false} #84#return; {345#false} is VALID [2018-11-23 12:13:39,591 INFO L273 TraceCheckUtils]: 18: Hoare triple {345#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {345#false} is VALID [2018-11-23 12:13:39,591 INFO L256 TraceCheckUtils]: 19: Hoare triple {345#false} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {345#false} is VALID [2018-11-23 12:13:39,591 INFO L273 TraceCheckUtils]: 20: Hoare triple {345#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {345#false} is VALID [2018-11-23 12:13:39,592 INFO L273 TraceCheckUtils]: 21: Hoare triple {345#false} assume !(~i~1 < 40); {345#false} is VALID [2018-11-23 12:13:39,592 INFO L273 TraceCheckUtils]: 22: Hoare triple {345#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {345#false} is VALID [2018-11-23 12:13:39,592 INFO L273 TraceCheckUtils]: 23: Hoare triple {345#false} assume true; {345#false} is VALID [2018-11-23 12:13:39,593 INFO L268 TraceCheckUtils]: 24: Hoare quadruple {345#false} {345#false} #86#return; {345#false} is VALID [2018-11-23 12:13:39,593 INFO L273 TraceCheckUtils]: 25: Hoare triple {345#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {345#false} is VALID [2018-11-23 12:13:39,593 INFO L273 TraceCheckUtils]: 26: Hoare triple {345#false} assume !(~i~2 < 39); {345#false} is VALID [2018-11-23 12:13:39,594 INFO L273 TraceCheckUtils]: 27: Hoare triple {345#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {345#false} is VALID [2018-11-23 12:13:39,594 INFO L256 TraceCheckUtils]: 28: Hoare triple {345#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {345#false} is VALID [2018-11-23 12:13:39,595 INFO L273 TraceCheckUtils]: 29: Hoare triple {345#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {345#false} is VALID [2018-11-23 12:13:39,595 INFO L273 TraceCheckUtils]: 30: Hoare triple {345#false} assume !(~i~1 < 40); {345#false} is VALID [2018-11-23 12:13:39,595 INFO L273 TraceCheckUtils]: 31: Hoare triple {345#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {345#false} is VALID [2018-11-23 12:13:39,596 INFO L273 TraceCheckUtils]: 32: Hoare triple {345#false} assume true; {345#false} is VALID [2018-11-23 12:13:39,596 INFO L268 TraceCheckUtils]: 33: Hoare quadruple {345#false} {345#false} #88#return; {345#false} is VALID [2018-11-23 12:13:39,596 INFO L273 TraceCheckUtils]: 34: Hoare triple {345#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {345#false} is VALID [2018-11-23 12:13:39,597 INFO L273 TraceCheckUtils]: 35: Hoare triple {345#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {345#false} is VALID [2018-11-23 12:13:39,597 INFO L273 TraceCheckUtils]: 36: Hoare triple {345#false} assume !false; {345#false} is VALID [2018-11-23 12:13:39,600 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-23 12:13:39,622 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 12:13:39,623 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2018-11-23 12:13:39,624 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 37 [2018-11-23 12:13:39,624 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:13:39,624 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2018-11-23 12:13:39,674 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 29 edges. 29 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:13:39,675 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2018-11-23 12:13:39,675 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2018-11-23 12:13:39,676 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2018-11-23 12:13:39,676 INFO L87 Difference]: Start difference. First operand 32 states and 38 transitions. Second operand 3 states. [2018-11-23 12:13:39,868 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:39,868 INFO L93 Difference]: Finished difference Result 56 states and 68 transitions. [2018-11-23 12:13:39,868 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2018-11-23 12:13:39,869 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 37 [2018-11-23 12:13:39,869 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:13:39,869 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2018-11-23 12:13:39,873 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 68 transitions. [2018-11-23 12:13:39,874 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2018-11-23 12:13:39,878 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 68 transitions. [2018-11-23 12:13:39,878 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 68 transitions. [2018-11-23 12:13:40,060 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 68 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:13:40,062 INFO L225 Difference]: With dead ends: 56 [2018-11-23 12:13:40,062 INFO L226 Difference]: Without dead ends: 34 [2018-11-23 12:13:40,064 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 36 GetRequests, 35 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2018-11-23 12:13:40,064 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2018-11-23 12:13:40,078 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 33. [2018-11-23 12:13:40,078 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:13:40,078 INFO L82 GeneralOperation]: Start isEquivalent. First operand 34 states. Second operand 33 states. [2018-11-23 12:13:40,079 INFO L74 IsIncluded]: Start isIncluded. First operand 34 states. Second operand 33 states. [2018-11-23 12:13:40,079 INFO L87 Difference]: Start difference. First operand 34 states. Second operand 33 states. [2018-11-23 12:13:40,084 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:40,084 INFO L93 Difference]: Finished difference Result 34 states and 40 transitions. [2018-11-23 12:13:40,084 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 40 transitions. [2018-11-23 12:13:40,085 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:13:40,085 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:13:40,085 INFO L74 IsIncluded]: Start isIncluded. First operand 33 states. Second operand 34 states. [2018-11-23 12:13:40,086 INFO L87 Difference]: Start difference. First operand 33 states. Second operand 34 states. [2018-11-23 12:13:40,089 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:40,089 INFO L93 Difference]: Finished difference Result 34 states and 40 transitions. [2018-11-23 12:13:40,090 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 40 transitions. [2018-11-23 12:13:40,091 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:13:40,091 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:13:40,091 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:13:40,091 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:13:40,091 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 33 states. [2018-11-23 12:13:40,094 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 39 transitions. [2018-11-23 12:13:40,095 INFO L78 Accepts]: Start accepts. Automaton has 33 states and 39 transitions. Word has length 37 [2018-11-23 12:13:40,095 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:13:40,095 INFO L480 AbstractCegarLoop]: Abstraction has 33 states and 39 transitions. [2018-11-23 12:13:40,095 INFO L481 AbstractCegarLoop]: Interpolant automaton has 3 states. [2018-11-23 12:13:40,095 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 39 transitions. [2018-11-23 12:13:40,097 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2018-11-23 12:13:40,097 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:13:40,097 INFO L402 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, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:13:40,098 INFO L423 AbstractCegarLoop]: === Iteration 3 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:13:40,098 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:13:40,098 INFO L82 PathProgramCache]: Analyzing trace with hash 479004822, now seen corresponding path program 1 times [2018-11-23 12:13:40,098 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:13:40,099 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:13:40,100 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:13:40,100 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:13:40,100 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:13:40,121 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:13:40,122 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:13:40,122 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 4 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 4 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:13:40,141 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:13:40,173 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:13:40,199 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:13:40,200 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:13:40,290 INFO L256 TraceCheckUtils]: 0: Hoare triple {648#true} call ULTIMATE.init(); {648#true} is VALID [2018-11-23 12:13:40,291 INFO L273 TraceCheckUtils]: 1: Hoare triple {648#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {648#true} is VALID [2018-11-23 12:13:40,291 INFO L273 TraceCheckUtils]: 2: Hoare triple {648#true} assume true; {648#true} is VALID [2018-11-23 12:13:40,291 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {648#true} {648#true} #78#return; {648#true} is VALID [2018-11-23 12:13:40,292 INFO L256 TraceCheckUtils]: 4: Hoare triple {648#true} call #t~ret12 := main(); {648#true} is VALID [2018-11-23 12:13:40,292 INFO L273 TraceCheckUtils]: 5: Hoare triple {648#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {648#true} is VALID [2018-11-23 12:13:40,292 INFO L256 TraceCheckUtils]: 6: Hoare triple {648#true} call init_nondet(~#x~0.base, ~#x~0.offset); {648#true} is VALID [2018-11-23 12:13:40,293 INFO L273 TraceCheckUtils]: 7: Hoare triple {648#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {648#true} is VALID [2018-11-23 12:13:40,293 INFO L273 TraceCheckUtils]: 8: Hoare triple {648#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {648#true} is VALID [2018-11-23 12:13:40,293 INFO L273 TraceCheckUtils]: 9: Hoare triple {648#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {648#true} is VALID [2018-11-23 12:13:40,294 INFO L273 TraceCheckUtils]: 10: Hoare triple {648#true} assume !(~i~0 < 40); {648#true} is VALID [2018-11-23 12:13:40,294 INFO L273 TraceCheckUtils]: 11: Hoare triple {648#true} assume true; {648#true} is VALID [2018-11-23 12:13:40,294 INFO L268 TraceCheckUtils]: 12: Hoare quadruple {648#true} {648#true} #82#return; {648#true} is VALID [2018-11-23 12:13:40,295 INFO L273 TraceCheckUtils]: 13: Hoare triple {648#true} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {648#true} is VALID [2018-11-23 12:13:40,295 INFO L256 TraceCheckUtils]: 14: Hoare triple {648#true} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {648#true} is VALID [2018-11-23 12:13:40,299 INFO L273 TraceCheckUtils]: 15: Hoare triple {648#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {698#(= 0 rangesum_~cnt~0)} is VALID [2018-11-23 12:13:40,301 INFO L273 TraceCheckUtils]: 16: Hoare triple {698#(= 0 rangesum_~cnt~0)} assume !(~i~1 < 40); {698#(= 0 rangesum_~cnt~0)} is VALID [2018-11-23 12:13:40,302 INFO L273 TraceCheckUtils]: 17: Hoare triple {698#(= 0 rangesum_~cnt~0)} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {649#false} is VALID [2018-11-23 12:13:40,302 INFO L273 TraceCheckUtils]: 18: Hoare triple {649#false} assume true; {649#false} is VALID [2018-11-23 12:13:40,302 INFO L268 TraceCheckUtils]: 19: Hoare quadruple {649#false} {648#true} #84#return; {649#false} is VALID [2018-11-23 12:13:40,302 INFO L273 TraceCheckUtils]: 20: Hoare triple {649#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {649#false} is VALID [2018-11-23 12:13:40,303 INFO L256 TraceCheckUtils]: 21: Hoare triple {649#false} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {649#false} is VALID [2018-11-23 12:13:40,303 INFO L273 TraceCheckUtils]: 22: Hoare triple {649#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {649#false} is VALID [2018-11-23 12:13:40,303 INFO L273 TraceCheckUtils]: 23: Hoare triple {649#false} assume !(~i~1 < 40); {649#false} is VALID [2018-11-23 12:13:40,304 INFO L273 TraceCheckUtils]: 24: Hoare triple {649#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {649#false} is VALID [2018-11-23 12:13:40,304 INFO L273 TraceCheckUtils]: 25: Hoare triple {649#false} assume true; {649#false} is VALID [2018-11-23 12:13:40,304 INFO L268 TraceCheckUtils]: 26: Hoare quadruple {649#false} {649#false} #86#return; {649#false} is VALID [2018-11-23 12:13:40,304 INFO L273 TraceCheckUtils]: 27: Hoare triple {649#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {649#false} is VALID [2018-11-23 12:13:40,305 INFO L273 TraceCheckUtils]: 28: Hoare triple {649#false} assume !(~i~2 < 39); {649#false} is VALID [2018-11-23 12:13:40,305 INFO L273 TraceCheckUtils]: 29: Hoare triple {649#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {649#false} is VALID [2018-11-23 12:13:40,305 INFO L256 TraceCheckUtils]: 30: Hoare triple {649#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {649#false} is VALID [2018-11-23 12:13:40,306 INFO L273 TraceCheckUtils]: 31: Hoare triple {649#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {649#false} is VALID [2018-11-23 12:13:40,306 INFO L273 TraceCheckUtils]: 32: Hoare triple {649#false} assume !(~i~1 < 40); {649#false} is VALID [2018-11-23 12:13:40,306 INFO L273 TraceCheckUtils]: 33: Hoare triple {649#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {649#false} is VALID [2018-11-23 12:13:40,307 INFO L273 TraceCheckUtils]: 34: Hoare triple {649#false} assume true; {649#false} is VALID [2018-11-23 12:13:40,307 INFO L268 TraceCheckUtils]: 35: Hoare quadruple {649#false} {649#false} #88#return; {649#false} is VALID [2018-11-23 12:13:40,307 INFO L273 TraceCheckUtils]: 36: Hoare triple {649#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {649#false} is VALID [2018-11-23 12:13:40,308 INFO L273 TraceCheckUtils]: 37: Hoare triple {649#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {649#false} is VALID [2018-11-23 12:13:40,308 INFO L273 TraceCheckUtils]: 38: Hoare triple {649#false} assume !false; {649#false} is VALID [2018-11-23 12:13:40,311 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 10 trivial. 0 not checked. [2018-11-23 12:13:40,330 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 12:13:40,331 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2018-11-23 12:13:40,331 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 39 [2018-11-23 12:13:40,332 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:13:40,332 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2018-11-23 12:13:40,426 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 34 edges. 34 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:13:40,426 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2018-11-23 12:13:40,427 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2018-11-23 12:13:40,427 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2018-11-23 12:13:40,427 INFO L87 Difference]: Start difference. First operand 33 states and 39 transitions. Second operand 3 states. [2018-11-23 12:13:40,595 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:40,596 INFO L93 Difference]: Finished difference Result 57 states and 75 transitions. [2018-11-23 12:13:40,596 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2018-11-23 12:13:40,596 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 39 [2018-11-23 12:13:40,596 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:13:40,597 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2018-11-23 12:13:40,600 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 74 transitions. [2018-11-23 12:13:40,601 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2018-11-23 12:13:40,604 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 74 transitions. [2018-11-23 12:13:40,604 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 74 transitions. [2018-11-23 12:13:40,709 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 74 edges. 74 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:13:40,712 INFO L225 Difference]: With dead ends: 57 [2018-11-23 12:13:40,712 INFO L226 Difference]: Without dead ends: 39 [2018-11-23 12:13:40,713 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 38 GetRequests, 37 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2018-11-23 12:13:40,713 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 39 states. [2018-11-23 12:13:40,737 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 39 to 37. [2018-11-23 12:13:40,738 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:13:40,738 INFO L82 GeneralOperation]: Start isEquivalent. First operand 39 states. Second operand 37 states. [2018-11-23 12:13:40,738 INFO L74 IsIncluded]: Start isIncluded. First operand 39 states. Second operand 37 states. [2018-11-23 12:13:40,738 INFO L87 Difference]: Start difference. First operand 39 states. Second operand 37 states. [2018-11-23 12:13:40,743 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:40,743 INFO L93 Difference]: Finished difference Result 39 states and 49 transitions. [2018-11-23 12:13:40,743 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 49 transitions. [2018-11-23 12:13:40,744 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:13:40,744 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:13:40,745 INFO L74 IsIncluded]: Start isIncluded. First operand 37 states. Second operand 39 states. [2018-11-23 12:13:40,745 INFO L87 Difference]: Start difference. First operand 37 states. Second operand 39 states. [2018-11-23 12:13:40,748 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:40,749 INFO L93 Difference]: Finished difference Result 39 states and 49 transitions. [2018-11-23 12:13:40,749 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 49 transitions. [2018-11-23 12:13:40,750 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:13:40,750 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:13:40,750 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:13:40,751 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:13:40,751 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 37 states. [2018-11-23 12:13:40,753 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 45 transitions. [2018-11-23 12:13:40,754 INFO L78 Accepts]: Start accepts. Automaton has 37 states and 45 transitions. Word has length 39 [2018-11-23 12:13:40,754 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:13:40,754 INFO L480 AbstractCegarLoop]: Abstraction has 37 states and 45 transitions. [2018-11-23 12:13:40,754 INFO L481 AbstractCegarLoop]: Interpolant automaton has 3 states. [2018-11-23 12:13:40,754 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 45 transitions. [2018-11-23 12:13:40,756 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2018-11-23 12:13:40,756 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:13:40,756 INFO L402 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, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:13:40,756 INFO L423 AbstractCegarLoop]: === Iteration 4 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:13:40,757 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:13:40,757 INFO L82 PathProgramCache]: Analyzing trace with hash -22870507, now seen corresponding path program 1 times [2018-11-23 12:13:40,757 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:13:40,757 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:13:40,758 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:13:40,759 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:13:40,759 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:13:40,780 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:13:40,869 INFO L256 TraceCheckUtils]: 0: Hoare triple {974#true} call ULTIMATE.init(); {974#true} is VALID [2018-11-23 12:13:40,870 INFO L273 TraceCheckUtils]: 1: Hoare triple {974#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {974#true} is VALID [2018-11-23 12:13:40,870 INFO L273 TraceCheckUtils]: 2: Hoare triple {974#true} assume true; {974#true} is VALID [2018-11-23 12:13:40,870 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {974#true} {974#true} #78#return; {974#true} is VALID [2018-11-23 12:13:40,871 INFO L256 TraceCheckUtils]: 4: Hoare triple {974#true} call #t~ret12 := main(); {974#true} is VALID [2018-11-23 12:13:40,871 INFO L273 TraceCheckUtils]: 5: Hoare triple {974#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {974#true} is VALID [2018-11-23 12:13:40,871 INFO L256 TraceCheckUtils]: 6: Hoare triple {974#true} call init_nondet(~#x~0.base, ~#x~0.offset); {974#true} is VALID [2018-11-23 12:13:40,871 INFO L273 TraceCheckUtils]: 7: Hoare triple {974#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {974#true} is VALID [2018-11-23 12:13:40,872 INFO L273 TraceCheckUtils]: 8: Hoare triple {974#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {974#true} is VALID [2018-11-23 12:13:40,872 INFO L273 TraceCheckUtils]: 9: Hoare triple {974#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {974#true} is VALID [2018-11-23 12:13:40,872 INFO L273 TraceCheckUtils]: 10: Hoare triple {974#true} assume !(~i~0 < 40); {974#true} is VALID [2018-11-23 12:13:40,873 INFO L273 TraceCheckUtils]: 11: Hoare triple {974#true} assume true; {974#true} is VALID [2018-11-23 12:13:40,873 INFO L268 TraceCheckUtils]: 12: Hoare quadruple {974#true} {974#true} #82#return; {974#true} is VALID [2018-11-23 12:13:40,874 INFO L273 TraceCheckUtils]: 13: Hoare triple {974#true} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {974#true} is VALID [2018-11-23 12:13:40,874 INFO L256 TraceCheckUtils]: 14: Hoare triple {974#true} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {974#true} is VALID [2018-11-23 12:13:40,878 INFO L273 TraceCheckUtils]: 15: Hoare triple {974#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {976#(= rangesum_~i~1 0)} is VALID [2018-11-23 12:13:40,882 INFO L273 TraceCheckUtils]: 16: Hoare triple {976#(= rangesum_~i~1 0)} assume !(~i~1 < 40); {975#false} is VALID [2018-11-23 12:13:40,882 INFO L273 TraceCheckUtils]: 17: Hoare triple {975#false} assume !(0 != ~cnt~0);#res := 0; {975#false} is VALID [2018-11-23 12:13:40,882 INFO L273 TraceCheckUtils]: 18: Hoare triple {975#false} assume true; {975#false} is VALID [2018-11-23 12:13:40,883 INFO L268 TraceCheckUtils]: 19: Hoare quadruple {975#false} {974#true} #84#return; {975#false} is VALID [2018-11-23 12:13:40,883 INFO L273 TraceCheckUtils]: 20: Hoare triple {975#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {975#false} is VALID [2018-11-23 12:13:40,883 INFO L256 TraceCheckUtils]: 21: Hoare triple {975#false} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {974#true} is VALID [2018-11-23 12:13:40,883 INFO L273 TraceCheckUtils]: 22: Hoare triple {974#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {974#true} is VALID [2018-11-23 12:13:40,884 INFO L273 TraceCheckUtils]: 23: Hoare triple {974#true} assume !(~i~1 < 40); {974#true} is VALID [2018-11-23 12:13:40,884 INFO L273 TraceCheckUtils]: 24: Hoare triple {974#true} assume !(0 != ~cnt~0);#res := 0; {974#true} is VALID [2018-11-23 12:13:40,884 INFO L273 TraceCheckUtils]: 25: Hoare triple {974#true} assume true; {974#true} is VALID [2018-11-23 12:13:40,884 INFO L268 TraceCheckUtils]: 26: Hoare quadruple {974#true} {975#false} #86#return; {975#false} is VALID [2018-11-23 12:13:40,885 INFO L273 TraceCheckUtils]: 27: Hoare triple {975#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {975#false} is VALID [2018-11-23 12:13:40,885 INFO L273 TraceCheckUtils]: 28: Hoare triple {975#false} assume !(~i~2 < 39); {975#false} is VALID [2018-11-23 12:13:40,885 INFO L273 TraceCheckUtils]: 29: Hoare triple {975#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {975#false} is VALID [2018-11-23 12:13:40,885 INFO L256 TraceCheckUtils]: 30: Hoare triple {975#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {974#true} is VALID [2018-11-23 12:13:40,885 INFO L273 TraceCheckUtils]: 31: Hoare triple {974#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {974#true} is VALID [2018-11-23 12:13:40,887 INFO L273 TraceCheckUtils]: 32: Hoare triple {974#true} assume !(~i~1 < 40); {974#true} is VALID [2018-11-23 12:13:40,887 INFO L273 TraceCheckUtils]: 33: Hoare triple {974#true} assume !(0 != ~cnt~0);#res := 0; {974#true} is VALID [2018-11-23 12:13:40,887 INFO L273 TraceCheckUtils]: 34: Hoare triple {974#true} assume true; {974#true} is VALID [2018-11-23 12:13:40,888 INFO L268 TraceCheckUtils]: 35: Hoare quadruple {974#true} {975#false} #88#return; {975#false} is VALID [2018-11-23 12:13:40,888 INFO L273 TraceCheckUtils]: 36: Hoare triple {975#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {975#false} is VALID [2018-11-23 12:13:40,888 INFO L273 TraceCheckUtils]: 37: Hoare triple {975#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {975#false} is VALID [2018-11-23 12:13:40,889 INFO L273 TraceCheckUtils]: 38: Hoare triple {975#false} assume !false; {975#false} is VALID [2018-11-23 12:13:40,893 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 0 proven. 8 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2018-11-23 12:13:40,894 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:13:40,894 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 5 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 5 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:13:40,915 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:13:40,943 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:13:40,962 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:13:40,964 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:13:41,104 INFO L256 TraceCheckUtils]: 0: Hoare triple {974#true} call ULTIMATE.init(); {974#true} is VALID [2018-11-23 12:13:41,105 INFO L273 TraceCheckUtils]: 1: Hoare triple {974#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {974#true} is VALID [2018-11-23 12:13:41,105 INFO L273 TraceCheckUtils]: 2: Hoare triple {974#true} assume true; {974#true} is VALID [2018-11-23 12:13:41,106 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {974#true} {974#true} #78#return; {974#true} is VALID [2018-11-23 12:13:41,106 INFO L256 TraceCheckUtils]: 4: Hoare triple {974#true} call #t~ret12 := main(); {974#true} is VALID [2018-11-23 12:13:41,107 INFO L273 TraceCheckUtils]: 5: Hoare triple {974#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {974#true} is VALID [2018-11-23 12:13:41,107 INFO L256 TraceCheckUtils]: 6: Hoare triple {974#true} call init_nondet(~#x~0.base, ~#x~0.offset); {974#true} is VALID [2018-11-23 12:13:41,107 INFO L273 TraceCheckUtils]: 7: Hoare triple {974#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {974#true} is VALID [2018-11-23 12:13:41,108 INFO L273 TraceCheckUtils]: 8: Hoare triple {974#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {974#true} is VALID [2018-11-23 12:13:41,108 INFO L273 TraceCheckUtils]: 9: Hoare triple {974#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {974#true} is VALID [2018-11-23 12:13:41,108 INFO L273 TraceCheckUtils]: 10: Hoare triple {974#true} assume !(~i~0 < 40); {974#true} is VALID [2018-11-23 12:13:41,108 INFO L273 TraceCheckUtils]: 11: Hoare triple {974#true} assume true; {974#true} is VALID [2018-11-23 12:13:41,109 INFO L268 TraceCheckUtils]: 12: Hoare quadruple {974#true} {974#true} #82#return; {974#true} is VALID [2018-11-23 12:13:41,109 INFO L273 TraceCheckUtils]: 13: Hoare triple {974#true} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {974#true} is VALID [2018-11-23 12:13:41,109 INFO L256 TraceCheckUtils]: 14: Hoare triple {974#true} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {974#true} is VALID [2018-11-23 12:13:41,123 INFO L273 TraceCheckUtils]: 15: Hoare triple {974#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {1025#(<= rangesum_~i~1 0)} is VALID [2018-11-23 12:13:41,125 INFO L273 TraceCheckUtils]: 16: Hoare triple {1025#(<= rangesum_~i~1 0)} assume !(~i~1 < 40); {975#false} is VALID [2018-11-23 12:13:41,125 INFO L273 TraceCheckUtils]: 17: Hoare triple {975#false} assume !(0 != ~cnt~0);#res := 0; {975#false} is VALID [2018-11-23 12:13:41,125 INFO L273 TraceCheckUtils]: 18: Hoare triple {975#false} assume true; {975#false} is VALID [2018-11-23 12:13:41,126 INFO L268 TraceCheckUtils]: 19: Hoare quadruple {975#false} {974#true} #84#return; {975#false} is VALID [2018-11-23 12:13:41,126 INFO L273 TraceCheckUtils]: 20: Hoare triple {975#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {975#false} is VALID [2018-11-23 12:13:41,126 INFO L256 TraceCheckUtils]: 21: Hoare triple {975#false} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {975#false} is VALID [2018-11-23 12:13:41,127 INFO L273 TraceCheckUtils]: 22: Hoare triple {975#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {975#false} is VALID [2018-11-23 12:13:41,127 INFO L273 TraceCheckUtils]: 23: Hoare triple {975#false} assume !(~i~1 < 40); {975#false} is VALID [2018-11-23 12:13:41,127 INFO L273 TraceCheckUtils]: 24: Hoare triple {975#false} assume !(0 != ~cnt~0);#res := 0; {975#false} is VALID [2018-11-23 12:13:41,128 INFO L273 TraceCheckUtils]: 25: Hoare triple {975#false} assume true; {975#false} is VALID [2018-11-23 12:13:41,128 INFO L268 TraceCheckUtils]: 26: Hoare quadruple {975#false} {975#false} #86#return; {975#false} is VALID [2018-11-23 12:13:41,128 INFO L273 TraceCheckUtils]: 27: Hoare triple {975#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {975#false} is VALID [2018-11-23 12:13:41,128 INFO L273 TraceCheckUtils]: 28: Hoare triple {975#false} assume !(~i~2 < 39); {975#false} is VALID [2018-11-23 12:13:41,129 INFO L273 TraceCheckUtils]: 29: Hoare triple {975#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {975#false} is VALID [2018-11-23 12:13:41,129 INFO L256 TraceCheckUtils]: 30: Hoare triple {975#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {975#false} is VALID [2018-11-23 12:13:41,129 INFO L273 TraceCheckUtils]: 31: Hoare triple {975#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {975#false} is VALID [2018-11-23 12:13:41,129 INFO L273 TraceCheckUtils]: 32: Hoare triple {975#false} assume !(~i~1 < 40); {975#false} is VALID [2018-11-23 12:13:41,130 INFO L273 TraceCheckUtils]: 33: Hoare triple {975#false} assume !(0 != ~cnt~0);#res := 0; {975#false} is VALID [2018-11-23 12:13:41,130 INFO L273 TraceCheckUtils]: 34: Hoare triple {975#false} assume true; {975#false} is VALID [2018-11-23 12:13:41,130 INFO L268 TraceCheckUtils]: 35: Hoare quadruple {975#false} {975#false} #88#return; {975#false} is VALID [2018-11-23 12:13:41,131 INFO L273 TraceCheckUtils]: 36: Hoare triple {975#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {975#false} is VALID [2018-11-23 12:13:41,131 INFO L273 TraceCheckUtils]: 37: Hoare triple {975#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {975#false} is VALID [2018-11-23 12:13:41,131 INFO L273 TraceCheckUtils]: 38: Hoare triple {975#false} assume !false; {975#false} is VALID [2018-11-23 12:13:41,134 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2018-11-23 12:13:41,162 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:13:41,162 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [3] imperfect sequences [3] total 4 [2018-11-23 12:13:41,162 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 39 [2018-11-23 12:13:41,164 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:13:41,164 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2018-11-23 12:13:41,234 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:13:41,235 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2018-11-23 12:13:41,235 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2018-11-23 12:13:41,235 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2018-11-23 12:13:41,236 INFO L87 Difference]: Start difference. First operand 37 states and 45 transitions. Second operand 4 states. [2018-11-23 12:13:41,461 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:41,461 INFO L93 Difference]: Finished difference Result 62 states and 81 transitions. [2018-11-23 12:13:41,461 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2018-11-23 12:13:41,462 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 39 [2018-11-23 12:13:41,462 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:13:41,462 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2018-11-23 12:13:41,465 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 68 transitions. [2018-11-23 12:13:41,465 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2018-11-23 12:13:41,467 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 68 transitions. [2018-11-23 12:13:41,468 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 68 transitions. [2018-11-23 12:13:41,582 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 68 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:13:41,585 INFO L225 Difference]: With dead ends: 62 [2018-11-23 12:13:41,585 INFO L226 Difference]: Without dead ends: 40 [2018-11-23 12:13:41,586 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 41 GetRequests, 39 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-23 12:13:41,587 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 40 states. [2018-11-23 12:13:41,620 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 40 to 39. [2018-11-23 12:13:41,621 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:13:41,621 INFO L82 GeneralOperation]: Start isEquivalent. First operand 40 states. Second operand 39 states. [2018-11-23 12:13:41,621 INFO L74 IsIncluded]: Start isIncluded. First operand 40 states. Second operand 39 states. [2018-11-23 12:13:41,621 INFO L87 Difference]: Start difference. First operand 40 states. Second operand 39 states. [2018-11-23 12:13:41,624 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:41,625 INFO L93 Difference]: Finished difference Result 40 states and 48 transitions. [2018-11-23 12:13:41,625 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 48 transitions. [2018-11-23 12:13:41,626 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:13:41,626 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:13:41,626 INFO L74 IsIncluded]: Start isIncluded. First operand 39 states. Second operand 40 states. [2018-11-23 12:13:41,626 INFO L87 Difference]: Start difference. First operand 39 states. Second operand 40 states. [2018-11-23 12:13:41,629 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:41,630 INFO L93 Difference]: Finished difference Result 40 states and 48 transitions. [2018-11-23 12:13:41,630 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 48 transitions. [2018-11-23 12:13:41,630 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:13:41,630 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:13:41,631 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:13:41,631 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:13:41,631 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 39 states. [2018-11-23 12:13:41,633 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 39 states to 39 states and 47 transitions. [2018-11-23 12:13:41,634 INFO L78 Accepts]: Start accepts. Automaton has 39 states and 47 transitions. Word has length 39 [2018-11-23 12:13:41,634 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:13:41,634 INFO L480 AbstractCegarLoop]: Abstraction has 39 states and 47 transitions. [2018-11-23 12:13:41,634 INFO L481 AbstractCegarLoop]: Interpolant automaton has 4 states. [2018-11-23 12:13:41,635 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 47 transitions. [2018-11-23 12:13:41,636 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 49 [2018-11-23 12:13:41,636 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:13:41,636 INFO L402 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:13:41,636 INFO L423 AbstractCegarLoop]: === Iteration 5 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:13:41,637 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:13:41,637 INFO L82 PathProgramCache]: Analyzing trace with hash 496221539, now seen corresponding path program 1 times [2018-11-23 12:13:41,637 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:13:41,637 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:13:41,638 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:13:41,639 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:13:41,639 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:13:41,664 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:13:41,743 INFO L256 TraceCheckUtils]: 0: Hoare triple {1313#true} call ULTIMATE.init(); {1313#true} is VALID [2018-11-23 12:13:41,744 INFO L273 TraceCheckUtils]: 1: Hoare triple {1313#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {1313#true} is VALID [2018-11-23 12:13:41,744 INFO L273 TraceCheckUtils]: 2: Hoare triple {1313#true} assume true; {1313#true} is VALID [2018-11-23 12:13:41,745 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1313#true} {1313#true} #78#return; {1313#true} is VALID [2018-11-23 12:13:41,745 INFO L256 TraceCheckUtils]: 4: Hoare triple {1313#true} call #t~ret12 := main(); {1313#true} is VALID [2018-11-23 12:13:41,745 INFO L273 TraceCheckUtils]: 5: Hoare triple {1313#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {1313#true} is VALID [2018-11-23 12:13:41,745 INFO L256 TraceCheckUtils]: 6: Hoare triple {1313#true} call init_nondet(~#x~0.base, ~#x~0.offset); {1313#true} is VALID [2018-11-23 12:13:41,746 INFO L273 TraceCheckUtils]: 7: Hoare triple {1313#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {1313#true} is VALID [2018-11-23 12:13:41,746 INFO L273 TraceCheckUtils]: 8: Hoare triple {1313#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {1313#true} is VALID [2018-11-23 12:13:41,746 INFO L273 TraceCheckUtils]: 9: Hoare triple {1313#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {1313#true} is VALID [2018-11-23 12:13:41,747 INFO L273 TraceCheckUtils]: 10: Hoare triple {1313#true} assume !(~i~0 < 40); {1313#true} is VALID [2018-11-23 12:13:41,747 INFO L273 TraceCheckUtils]: 11: Hoare triple {1313#true} assume true; {1313#true} is VALID [2018-11-23 12:13:41,747 INFO L268 TraceCheckUtils]: 12: Hoare quadruple {1313#true} {1313#true} #82#return; {1313#true} is VALID [2018-11-23 12:13:41,747 INFO L273 TraceCheckUtils]: 13: Hoare triple {1313#true} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {1313#true} is VALID [2018-11-23 12:13:41,748 INFO L256 TraceCheckUtils]: 14: Hoare triple {1313#true} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {1313#true} is VALID [2018-11-23 12:13:41,748 INFO L273 TraceCheckUtils]: 15: Hoare triple {1313#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {1313#true} is VALID [2018-11-23 12:13:41,748 INFO L273 TraceCheckUtils]: 16: Hoare triple {1313#true} assume !!(~i~1 < 40); {1313#true} is VALID [2018-11-23 12:13:41,764 INFO L273 TraceCheckUtils]: 17: Hoare triple {1313#true} assume !(~i~1 > 20); {1315#(<= rangesum_~i~1 20)} is VALID [2018-11-23 12:13:41,765 INFO L273 TraceCheckUtils]: 18: Hoare triple {1315#(<= rangesum_~i~1 20)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {1316#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:13:41,766 INFO L273 TraceCheckUtils]: 19: Hoare triple {1316#(<= rangesum_~i~1 21)} assume !(~i~1 < 40); {1314#false} is VALID [2018-11-23 12:13:41,766 INFO L273 TraceCheckUtils]: 20: Hoare triple {1314#false} assume !(0 != ~cnt~0);#res := 0; {1314#false} is VALID [2018-11-23 12:13:41,766 INFO L273 TraceCheckUtils]: 21: Hoare triple {1314#false} assume true; {1314#false} is VALID [2018-11-23 12:13:41,767 INFO L268 TraceCheckUtils]: 22: Hoare quadruple {1314#false} {1313#true} #84#return; {1314#false} is VALID [2018-11-23 12:13:41,767 INFO L273 TraceCheckUtils]: 23: Hoare triple {1314#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {1314#false} is VALID [2018-11-23 12:13:41,767 INFO L256 TraceCheckUtils]: 24: Hoare triple {1314#false} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {1313#true} is VALID [2018-11-23 12:13:41,767 INFO L273 TraceCheckUtils]: 25: Hoare triple {1313#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {1313#true} is VALID [2018-11-23 12:13:41,768 INFO L273 TraceCheckUtils]: 26: Hoare triple {1313#true} assume !!(~i~1 < 40); {1313#true} is VALID [2018-11-23 12:13:41,768 INFO L273 TraceCheckUtils]: 27: Hoare triple {1313#true} assume !(~i~1 > 20); {1313#true} is VALID [2018-11-23 12:13:41,768 INFO L273 TraceCheckUtils]: 28: Hoare triple {1313#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {1313#true} is VALID [2018-11-23 12:13:41,768 INFO L273 TraceCheckUtils]: 29: Hoare triple {1313#true} assume !(~i~1 < 40); {1313#true} is VALID [2018-11-23 12:13:41,768 INFO L273 TraceCheckUtils]: 30: Hoare triple {1313#true} assume !(0 != ~cnt~0);#res := 0; {1313#true} is VALID [2018-11-23 12:13:41,769 INFO L273 TraceCheckUtils]: 31: Hoare triple {1313#true} assume true; {1313#true} is VALID [2018-11-23 12:13:41,769 INFO L268 TraceCheckUtils]: 32: Hoare quadruple {1313#true} {1314#false} #86#return; {1314#false} is VALID [2018-11-23 12:13:41,769 INFO L273 TraceCheckUtils]: 33: Hoare triple {1314#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {1314#false} is VALID [2018-11-23 12:13:41,770 INFO L273 TraceCheckUtils]: 34: Hoare triple {1314#false} assume !(~i~2 < 39); {1314#false} is VALID [2018-11-23 12:13:41,770 INFO L273 TraceCheckUtils]: 35: Hoare triple {1314#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {1314#false} is VALID [2018-11-23 12:13:41,770 INFO L256 TraceCheckUtils]: 36: Hoare triple {1314#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {1313#true} is VALID [2018-11-23 12:13:41,770 INFO L273 TraceCheckUtils]: 37: Hoare triple {1313#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {1313#true} is VALID [2018-11-23 12:13:41,771 INFO L273 TraceCheckUtils]: 38: Hoare triple {1313#true} assume !!(~i~1 < 40); {1313#true} is VALID [2018-11-23 12:13:41,771 INFO L273 TraceCheckUtils]: 39: Hoare triple {1313#true} assume !(~i~1 > 20); {1313#true} is VALID [2018-11-23 12:13:41,771 INFO L273 TraceCheckUtils]: 40: Hoare triple {1313#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {1313#true} is VALID [2018-11-23 12:13:41,772 INFO L273 TraceCheckUtils]: 41: Hoare triple {1313#true} assume !(~i~1 < 40); {1313#true} is VALID [2018-11-23 12:13:41,772 INFO L273 TraceCheckUtils]: 42: Hoare triple {1313#true} assume !(0 != ~cnt~0);#res := 0; {1313#true} is VALID [2018-11-23 12:13:41,772 INFO L273 TraceCheckUtils]: 43: Hoare triple {1313#true} assume true; {1313#true} is VALID [2018-11-23 12:13:41,773 INFO L268 TraceCheckUtils]: 44: Hoare quadruple {1313#true} {1314#false} #88#return; {1314#false} is VALID [2018-11-23 12:13:41,773 INFO L273 TraceCheckUtils]: 45: Hoare triple {1314#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {1314#false} is VALID [2018-11-23 12:13:41,773 INFO L273 TraceCheckUtils]: 46: Hoare triple {1314#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {1314#false} is VALID [2018-11-23 12:13:41,773 INFO L273 TraceCheckUtils]: 47: Hoare triple {1314#false} assume !false; {1314#false} is VALID [2018-11-23 12:13:41,776 INFO L134 CoverageAnalysis]: Checked inductivity of 34 backedges. 1 proven. 12 refuted. 0 times theorem prover too weak. 21 trivial. 0 not checked. [2018-11-23 12:13:41,776 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:13:41,777 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 6 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 6 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:13:41,792 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:13:41,836 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:13:41,872 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:13:41,874 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:13:42,351 INFO L256 TraceCheckUtils]: 0: Hoare triple {1313#true} call ULTIMATE.init(); {1313#true} is VALID [2018-11-23 12:13:42,352 INFO L273 TraceCheckUtils]: 1: Hoare triple {1313#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {1313#true} is VALID [2018-11-23 12:13:42,352 INFO L273 TraceCheckUtils]: 2: Hoare triple {1313#true} assume true; {1313#true} is VALID [2018-11-23 12:13:42,353 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1313#true} {1313#true} #78#return; {1313#true} is VALID [2018-11-23 12:13:42,353 INFO L256 TraceCheckUtils]: 4: Hoare triple {1313#true} call #t~ret12 := main(); {1313#true} is VALID [2018-11-23 12:13:42,354 INFO L273 TraceCheckUtils]: 5: Hoare triple {1313#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {1313#true} is VALID [2018-11-23 12:13:42,354 INFO L256 TraceCheckUtils]: 6: Hoare triple {1313#true} call init_nondet(~#x~0.base, ~#x~0.offset); {1313#true} is VALID [2018-11-23 12:13:42,354 INFO L273 TraceCheckUtils]: 7: Hoare triple {1313#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {1313#true} is VALID [2018-11-23 12:13:42,355 INFO L273 TraceCheckUtils]: 8: Hoare triple {1313#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {1313#true} is VALID [2018-11-23 12:13:42,355 INFO L273 TraceCheckUtils]: 9: Hoare triple {1313#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {1313#true} is VALID [2018-11-23 12:13:42,355 INFO L273 TraceCheckUtils]: 10: Hoare triple {1313#true} assume !(~i~0 < 40); {1313#true} is VALID [2018-11-23 12:13:42,355 INFO L273 TraceCheckUtils]: 11: Hoare triple {1313#true} assume true; {1313#true} is VALID [2018-11-23 12:13:42,356 INFO L268 TraceCheckUtils]: 12: Hoare quadruple {1313#true} {1313#true} #82#return; {1313#true} is VALID [2018-11-23 12:13:42,356 INFO L273 TraceCheckUtils]: 13: Hoare triple {1313#true} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {1313#true} is VALID [2018-11-23 12:13:42,356 INFO L256 TraceCheckUtils]: 14: Hoare triple {1313#true} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {1313#true} is VALID [2018-11-23 12:13:42,357 INFO L273 TraceCheckUtils]: 15: Hoare triple {1313#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {1313#true} is VALID [2018-11-23 12:13:42,357 INFO L273 TraceCheckUtils]: 16: Hoare triple {1313#true} assume !!(~i~1 < 40); {1313#true} is VALID [2018-11-23 12:13:42,357 INFO L273 TraceCheckUtils]: 17: Hoare triple {1313#true} assume !(~i~1 > 20); {1313#true} is VALID [2018-11-23 12:13:42,358 INFO L273 TraceCheckUtils]: 18: Hoare triple {1313#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {1313#true} is VALID [2018-11-23 12:13:42,358 INFO L273 TraceCheckUtils]: 19: Hoare triple {1313#true} assume !(~i~1 < 40); {1313#true} is VALID [2018-11-23 12:13:42,358 INFO L273 TraceCheckUtils]: 20: Hoare triple {1313#true} assume !(0 != ~cnt~0);#res := 0; {1313#true} is VALID [2018-11-23 12:13:42,359 INFO L273 TraceCheckUtils]: 21: Hoare triple {1313#true} assume true; {1313#true} is VALID [2018-11-23 12:13:42,359 INFO L268 TraceCheckUtils]: 22: Hoare quadruple {1313#true} {1313#true} #84#return; {1313#true} is VALID [2018-11-23 12:13:42,359 INFO L273 TraceCheckUtils]: 23: Hoare triple {1313#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {1313#true} is VALID [2018-11-23 12:13:42,359 INFO L256 TraceCheckUtils]: 24: Hoare triple {1313#true} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {1313#true} is VALID [2018-11-23 12:13:42,360 INFO L273 TraceCheckUtils]: 25: Hoare triple {1313#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {1313#true} is VALID [2018-11-23 12:13:42,360 INFO L273 TraceCheckUtils]: 26: Hoare triple {1313#true} assume !!(~i~1 < 40); {1313#true} is VALID [2018-11-23 12:13:42,360 INFO L273 TraceCheckUtils]: 27: Hoare triple {1313#true} assume !(~i~1 > 20); {1313#true} is VALID [2018-11-23 12:13:42,360 INFO L273 TraceCheckUtils]: 28: Hoare triple {1313#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {1313#true} is VALID [2018-11-23 12:13:42,360 INFO L273 TraceCheckUtils]: 29: Hoare triple {1313#true} assume !(~i~1 < 40); {1313#true} is VALID [2018-11-23 12:13:42,361 INFO L273 TraceCheckUtils]: 30: Hoare triple {1313#true} assume !(0 != ~cnt~0);#res := 0; {1313#true} is VALID [2018-11-23 12:13:42,361 INFO L273 TraceCheckUtils]: 31: Hoare triple {1313#true} assume true; {1313#true} is VALID [2018-11-23 12:13:42,361 INFO L268 TraceCheckUtils]: 32: Hoare quadruple {1313#true} {1313#true} #86#return; {1313#true} is VALID [2018-11-23 12:13:42,362 INFO L273 TraceCheckUtils]: 33: Hoare triple {1313#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {1419#(<= main_~i~2 0)} is VALID [2018-11-23 12:13:42,365 INFO L273 TraceCheckUtils]: 34: Hoare triple {1419#(<= main_~i~2 0)} assume !(~i~2 < 39); {1314#false} is VALID [2018-11-23 12:13:42,365 INFO L273 TraceCheckUtils]: 35: Hoare triple {1314#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {1314#false} is VALID [2018-11-23 12:13:42,365 INFO L256 TraceCheckUtils]: 36: Hoare triple {1314#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {1314#false} is VALID [2018-11-23 12:13:42,366 INFO L273 TraceCheckUtils]: 37: Hoare triple {1314#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {1314#false} is VALID [2018-11-23 12:13:42,366 INFO L273 TraceCheckUtils]: 38: Hoare triple {1314#false} assume !!(~i~1 < 40); {1314#false} is VALID [2018-11-23 12:13:42,366 INFO L273 TraceCheckUtils]: 39: Hoare triple {1314#false} assume !(~i~1 > 20); {1314#false} is VALID [2018-11-23 12:13:42,367 INFO L273 TraceCheckUtils]: 40: Hoare triple {1314#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {1314#false} is VALID [2018-11-23 12:13:42,367 INFO L273 TraceCheckUtils]: 41: Hoare triple {1314#false} assume !(~i~1 < 40); {1314#false} is VALID [2018-11-23 12:13:42,367 INFO L273 TraceCheckUtils]: 42: Hoare triple {1314#false} assume !(0 != ~cnt~0);#res := 0; {1314#false} is VALID [2018-11-23 12:13:42,368 INFO L273 TraceCheckUtils]: 43: Hoare triple {1314#false} assume true; {1314#false} is VALID [2018-11-23 12:13:42,368 INFO L268 TraceCheckUtils]: 44: Hoare quadruple {1314#false} {1314#false} #88#return; {1314#false} is VALID [2018-11-23 12:13:42,368 INFO L273 TraceCheckUtils]: 45: Hoare triple {1314#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {1314#false} is VALID [2018-11-23 12:13:42,368 INFO L273 TraceCheckUtils]: 46: Hoare triple {1314#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {1314#false} is VALID [2018-11-23 12:13:42,369 INFO L273 TraceCheckUtils]: 47: Hoare triple {1314#false} assume !false; {1314#false} is VALID [2018-11-23 12:13:42,372 INFO L134 CoverageAnalysis]: Checked inductivity of 34 backedges. 20 proven. 0 refuted. 0 times theorem prover too weak. 14 trivial. 0 not checked. [2018-11-23 12:13:42,391 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:13:42,392 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [3] imperfect sequences [4] total 5 [2018-11-23 12:13:42,393 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 48 [2018-11-23 12:13:42,394 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:13:42,394 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states. [2018-11-23 12:13:42,495 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:13:42,495 INFO L459 AbstractCegarLoop]: Interpolant automaton has 5 states [2018-11-23 12:13:42,495 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2018-11-23 12:13:42,495 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2018-11-23 12:13:42,496 INFO L87 Difference]: Start difference. First operand 39 states and 47 transitions. Second operand 5 states. [2018-11-23 12:13:42,722 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:42,723 INFO L93 Difference]: Finished difference Result 68 states and 88 transitions. [2018-11-23 12:13:42,723 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2018-11-23 12:13:42,723 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 48 [2018-11-23 12:13:42,723 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:13:42,723 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2018-11-23 12:13:42,726 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 74 transitions. [2018-11-23 12:13:42,726 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2018-11-23 12:13:42,728 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 74 transitions. [2018-11-23 12:13:42,728 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 74 transitions. [2018-11-23 12:13:42,861 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 74 edges. 74 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:13:42,865 INFO L225 Difference]: With dead ends: 68 [2018-11-23 12:13:42,865 INFO L226 Difference]: Without dead ends: 44 [2018-11-23 12:13:42,866 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 51 GetRequests, 48 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2018-11-23 12:13:42,866 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 44 states. [2018-11-23 12:13:42,897 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 44 to 38. [2018-11-23 12:13:42,897 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:13:42,898 INFO L82 GeneralOperation]: Start isEquivalent. First operand 44 states. Second operand 38 states. [2018-11-23 12:13:42,898 INFO L74 IsIncluded]: Start isIncluded. First operand 44 states. Second operand 38 states. [2018-11-23 12:13:42,898 INFO L87 Difference]: Start difference. First operand 44 states. Second operand 38 states. [2018-11-23 12:13:42,901 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:42,901 INFO L93 Difference]: Finished difference Result 44 states and 52 transitions. [2018-11-23 12:13:42,901 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 52 transitions. [2018-11-23 12:13:42,902 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:13:42,902 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:13:42,902 INFO L74 IsIncluded]: Start isIncluded. First operand 38 states. Second operand 44 states. [2018-11-23 12:13:42,903 INFO L87 Difference]: Start difference. First operand 38 states. Second operand 44 states. [2018-11-23 12:13:42,905 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:42,906 INFO L93 Difference]: Finished difference Result 44 states and 52 transitions. [2018-11-23 12:13:42,906 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 52 transitions. [2018-11-23 12:13:42,906 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:13:42,906 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:13:42,907 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:13:42,907 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:13:42,907 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 38 states. [2018-11-23 12:13:42,909 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 38 states to 38 states and 44 transitions. [2018-11-23 12:13:42,909 INFO L78 Accepts]: Start accepts. Automaton has 38 states and 44 transitions. Word has length 48 [2018-11-23 12:13:42,910 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:13:42,910 INFO L480 AbstractCegarLoop]: Abstraction has 38 states and 44 transitions. [2018-11-23 12:13:42,910 INFO L481 AbstractCegarLoop]: Interpolant automaton has 5 states. [2018-11-23 12:13:42,910 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 44 transitions. [2018-11-23 12:13:42,911 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 60 [2018-11-23 12:13:42,912 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:13:42,912 INFO L402 BasicCegarLoop]: trace histogram [6, 6, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:13:42,912 INFO L423 AbstractCegarLoop]: === Iteration 6 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:13:42,912 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:13:42,913 INFO L82 PathProgramCache]: Analyzing trace with hash -1681907214, now seen corresponding path program 1 times [2018-11-23 12:13:42,913 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:13:42,913 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:13:42,914 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:13:42,914 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:13:42,914 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:13:42,928 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:13:42,928 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:13:42,928 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 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 7 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:13:42,947 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:13:42,983 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:13:43,024 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:13:43,027 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:13:43,179 INFO L256 TraceCheckUtils]: 0: Hoare triple {1697#true} call ULTIMATE.init(); {1697#true} is VALID [2018-11-23 12:13:43,179 INFO L273 TraceCheckUtils]: 1: Hoare triple {1697#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {1697#true} is VALID [2018-11-23 12:13:43,180 INFO L273 TraceCheckUtils]: 2: Hoare triple {1697#true} assume true; {1697#true} is VALID [2018-11-23 12:13:43,180 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1697#true} {1697#true} #78#return; {1697#true} is VALID [2018-11-23 12:13:43,180 INFO L256 TraceCheckUtils]: 4: Hoare triple {1697#true} call #t~ret12 := main(); {1697#true} is VALID [2018-11-23 12:13:43,180 INFO L273 TraceCheckUtils]: 5: Hoare triple {1697#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {1697#true} is VALID [2018-11-23 12:13:43,181 INFO L256 TraceCheckUtils]: 6: Hoare triple {1697#true} call init_nondet(~#x~0.base, ~#x~0.offset); {1697#true} is VALID [2018-11-23 12:13:43,181 INFO L273 TraceCheckUtils]: 7: Hoare triple {1697#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {1723#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:13:43,183 INFO L273 TraceCheckUtils]: 8: Hoare triple {1723#(<= init_nondet_~i~0 0)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {1723#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:13:43,184 INFO L273 TraceCheckUtils]: 9: Hoare triple {1723#(<= init_nondet_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {1730#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:13:43,184 INFO L273 TraceCheckUtils]: 10: Hoare triple {1730#(<= init_nondet_~i~0 1)} assume !(~i~0 < 40); {1698#false} is VALID [2018-11-23 12:13:43,184 INFO L273 TraceCheckUtils]: 11: Hoare triple {1698#false} assume true; {1698#false} is VALID [2018-11-23 12:13:43,185 INFO L268 TraceCheckUtils]: 12: Hoare quadruple {1698#false} {1697#true} #82#return; {1698#false} is VALID [2018-11-23 12:13:43,185 INFO L273 TraceCheckUtils]: 13: Hoare triple {1698#false} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {1698#false} is VALID [2018-11-23 12:13:43,185 INFO L256 TraceCheckUtils]: 14: Hoare triple {1698#false} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {1698#false} is VALID [2018-11-23 12:13:43,186 INFO L273 TraceCheckUtils]: 15: Hoare triple {1698#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {1698#false} is VALID [2018-11-23 12:13:43,186 INFO L273 TraceCheckUtils]: 16: Hoare triple {1698#false} assume !!(~i~1 < 40); {1698#false} is VALID [2018-11-23 12:13:43,187 INFO L273 TraceCheckUtils]: 17: Hoare triple {1698#false} assume !(~i~1 > 20); {1698#false} is VALID [2018-11-23 12:13:43,187 INFO L273 TraceCheckUtils]: 18: Hoare triple {1698#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {1698#false} is VALID [2018-11-23 12:13:43,188 INFO L273 TraceCheckUtils]: 19: Hoare triple {1698#false} assume !!(~i~1 < 40); {1698#false} is VALID [2018-11-23 12:13:43,188 INFO L273 TraceCheckUtils]: 20: Hoare triple {1698#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {1698#false} is VALID [2018-11-23 12:13:43,188 INFO L273 TraceCheckUtils]: 21: Hoare triple {1698#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {1698#false} is VALID [2018-11-23 12:13:43,188 INFO L273 TraceCheckUtils]: 22: Hoare triple {1698#false} assume !(~i~1 < 40); {1698#false} is VALID [2018-11-23 12:13:43,189 INFO L273 TraceCheckUtils]: 23: Hoare triple {1698#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {1698#false} is VALID [2018-11-23 12:13:43,189 INFO L273 TraceCheckUtils]: 24: Hoare triple {1698#false} assume true; {1698#false} is VALID [2018-11-23 12:13:43,189 INFO L268 TraceCheckUtils]: 25: Hoare quadruple {1698#false} {1698#false} #84#return; {1698#false} is VALID [2018-11-23 12:13:43,190 INFO L273 TraceCheckUtils]: 26: Hoare triple {1698#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {1698#false} is VALID [2018-11-23 12:13:43,190 INFO L256 TraceCheckUtils]: 27: Hoare triple {1698#false} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {1698#false} is VALID [2018-11-23 12:13:43,190 INFO L273 TraceCheckUtils]: 28: Hoare triple {1698#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {1698#false} is VALID [2018-11-23 12:13:43,190 INFO L273 TraceCheckUtils]: 29: Hoare triple {1698#false} assume !!(~i~1 < 40); {1698#false} is VALID [2018-11-23 12:13:43,191 INFO L273 TraceCheckUtils]: 30: Hoare triple {1698#false} assume !(~i~1 > 20); {1698#false} is VALID [2018-11-23 12:13:43,191 INFO L273 TraceCheckUtils]: 31: Hoare triple {1698#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {1698#false} is VALID [2018-11-23 12:13:43,191 INFO L273 TraceCheckUtils]: 32: Hoare triple {1698#false} assume !!(~i~1 < 40); {1698#false} is VALID [2018-11-23 12:13:43,192 INFO L273 TraceCheckUtils]: 33: Hoare triple {1698#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {1698#false} is VALID [2018-11-23 12:13:43,192 INFO L273 TraceCheckUtils]: 34: Hoare triple {1698#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {1698#false} is VALID [2018-11-23 12:13:43,192 INFO L273 TraceCheckUtils]: 35: Hoare triple {1698#false} assume !(~i~1 < 40); {1698#false} is VALID [2018-11-23 12:13:43,192 INFO L273 TraceCheckUtils]: 36: Hoare triple {1698#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {1698#false} is VALID [2018-11-23 12:13:43,193 INFO L273 TraceCheckUtils]: 37: Hoare triple {1698#false} assume true; {1698#false} is VALID [2018-11-23 12:13:43,193 INFO L268 TraceCheckUtils]: 38: Hoare quadruple {1698#false} {1698#false} #86#return; {1698#false} is VALID [2018-11-23 12:13:43,193 INFO L273 TraceCheckUtils]: 39: Hoare triple {1698#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {1698#false} is VALID [2018-11-23 12:13:43,193 INFO L273 TraceCheckUtils]: 40: Hoare triple {1698#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {1698#false} is VALID [2018-11-23 12:13:43,194 INFO L273 TraceCheckUtils]: 41: Hoare triple {1698#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {1698#false} is VALID [2018-11-23 12:13:43,194 INFO L273 TraceCheckUtils]: 42: Hoare triple {1698#false} assume !(~i~2 < 39); {1698#false} is VALID [2018-11-23 12:13:43,194 INFO L273 TraceCheckUtils]: 43: Hoare triple {1698#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {1698#false} is VALID [2018-11-23 12:13:43,195 INFO L256 TraceCheckUtils]: 44: Hoare triple {1698#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {1698#false} is VALID [2018-11-23 12:13:43,195 INFO L273 TraceCheckUtils]: 45: Hoare triple {1698#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {1698#false} is VALID [2018-11-23 12:13:43,195 INFO L273 TraceCheckUtils]: 46: Hoare triple {1698#false} assume !!(~i~1 < 40); {1698#false} is VALID [2018-11-23 12:13:43,195 INFO L273 TraceCheckUtils]: 47: Hoare triple {1698#false} assume !(~i~1 > 20); {1698#false} is VALID [2018-11-23 12:13:43,196 INFO L273 TraceCheckUtils]: 48: Hoare triple {1698#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {1698#false} is VALID [2018-11-23 12:13:43,196 INFO L273 TraceCheckUtils]: 49: Hoare triple {1698#false} assume !!(~i~1 < 40); {1698#false} is VALID [2018-11-23 12:13:43,196 INFO L273 TraceCheckUtils]: 50: Hoare triple {1698#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {1698#false} is VALID [2018-11-23 12:13:43,197 INFO L273 TraceCheckUtils]: 51: Hoare triple {1698#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {1698#false} is VALID [2018-11-23 12:13:43,197 INFO L273 TraceCheckUtils]: 52: Hoare triple {1698#false} assume !(~i~1 < 40); {1698#false} is VALID [2018-11-23 12:13:43,197 INFO L273 TraceCheckUtils]: 53: Hoare triple {1698#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {1698#false} is VALID [2018-11-23 12:13:43,197 INFO L273 TraceCheckUtils]: 54: Hoare triple {1698#false} assume true; {1698#false} is VALID [2018-11-23 12:13:43,198 INFO L268 TraceCheckUtils]: 55: Hoare quadruple {1698#false} {1698#false} #88#return; {1698#false} is VALID [2018-11-23 12:13:43,198 INFO L273 TraceCheckUtils]: 56: Hoare triple {1698#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {1698#false} is VALID [2018-11-23 12:13:43,198 INFO L273 TraceCheckUtils]: 57: Hoare triple {1698#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {1698#false} is VALID [2018-11-23 12:13:43,198 INFO L273 TraceCheckUtils]: 58: Hoare triple {1698#false} assume !false; {1698#false} is VALID [2018-11-23 12:13:43,202 INFO L134 CoverageAnalysis]: Checked inductivity of 80 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 79 trivial. 0 not checked. [2018-11-23 12:13:43,222 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:13:43,222 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [4] total 4 [2018-11-23 12:13:43,223 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 59 [2018-11-23 12:13:43,223 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:13:43,223 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2018-11-23 12:13:43,268 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 37 edges. 37 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:13:43,268 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2018-11-23 12:13:43,269 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2018-11-23 12:13:43,269 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2018-11-23 12:13:43,269 INFO L87 Difference]: Start difference. First operand 38 states and 44 transitions. Second operand 4 states. [2018-11-23 12:13:43,376 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:43,377 INFO L93 Difference]: Finished difference Result 68 states and 80 transitions. [2018-11-23 12:13:43,377 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2018-11-23 12:13:43,377 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 59 [2018-11-23 12:13:43,377 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:13:43,377 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2018-11-23 12:13:43,379 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 70 transitions. [2018-11-23 12:13:43,379 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2018-11-23 12:13:43,381 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 70 transitions. [2018-11-23 12:13:43,381 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 70 transitions. [2018-11-23 12:13:43,560 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 70 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:13:43,561 INFO L225 Difference]: With dead ends: 68 [2018-11-23 12:13:43,562 INFO L226 Difference]: Without dead ends: 41 [2018-11-23 12:13:43,563 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 58 GetRequests, 56 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-23 12:13:43,564 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 41 states. [2018-11-23 12:13:43,626 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 41 to 40. [2018-11-23 12:13:43,626 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:13:43,626 INFO L82 GeneralOperation]: Start isEquivalent. First operand 41 states. Second operand 40 states. [2018-11-23 12:13:43,627 INFO L74 IsIncluded]: Start isIncluded. First operand 41 states. Second operand 40 states. [2018-11-23 12:13:43,627 INFO L87 Difference]: Start difference. First operand 41 states. Second operand 40 states. [2018-11-23 12:13:43,629 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:43,629 INFO L93 Difference]: Finished difference Result 41 states and 47 transitions. [2018-11-23 12:13:43,630 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 47 transitions. [2018-11-23 12:13:43,630 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:13:43,630 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:13:43,631 INFO L74 IsIncluded]: Start isIncluded. First operand 40 states. Second operand 41 states. [2018-11-23 12:13:43,631 INFO L87 Difference]: Start difference. First operand 40 states. Second operand 41 states. [2018-11-23 12:13:43,633 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:43,633 INFO L93 Difference]: Finished difference Result 41 states and 47 transitions. [2018-11-23 12:13:43,633 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 47 transitions. [2018-11-23 12:13:43,634 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:13:43,634 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:13:43,634 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:13:43,634 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:13:43,634 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 40 states. [2018-11-23 12:13:43,636 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 40 states to 40 states and 46 transitions. [2018-11-23 12:13:43,636 INFO L78 Accepts]: Start accepts. Automaton has 40 states and 46 transitions. Word has length 59 [2018-11-23 12:13:43,637 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:13:43,637 INFO L480 AbstractCegarLoop]: Abstraction has 40 states and 46 transitions. [2018-11-23 12:13:43,637 INFO L481 AbstractCegarLoop]: Interpolant automaton has 4 states. [2018-11-23 12:13:43,637 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 46 transitions. [2018-11-23 12:13:43,638 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 62 [2018-11-23 12:13:43,638 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:13:43,638 INFO L402 BasicCegarLoop]: trace histogram [6, 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, 1, 1, 1] [2018-11-23 12:13:43,639 INFO L423 AbstractCegarLoop]: === Iteration 7 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:13:43,639 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:13:43,639 INFO L82 PathProgramCache]: Analyzing trace with hash 804630256, now seen corresponding path program 2 times [2018-11-23 12:13:43,639 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:13:43,639 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:13:43,640 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:13:43,640 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:13:43,640 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:13:43,654 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:13:43,654 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:13:43,654 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 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 8 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:13:43,670 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-23 12:13:43,707 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-23 12:13:43,707 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:13:43,722 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:13:43,725 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:13:43,850 INFO L256 TraceCheckUtils]: 0: Hoare triple {2112#true} call ULTIMATE.init(); {2112#true} is VALID [2018-11-23 12:13:43,851 INFO L273 TraceCheckUtils]: 1: Hoare triple {2112#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {2112#true} is VALID [2018-11-23 12:13:43,851 INFO L273 TraceCheckUtils]: 2: Hoare triple {2112#true} assume true; {2112#true} is VALID [2018-11-23 12:13:43,852 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2112#true} {2112#true} #78#return; {2112#true} is VALID [2018-11-23 12:13:43,852 INFO L256 TraceCheckUtils]: 4: Hoare triple {2112#true} call #t~ret12 := main(); {2112#true} is VALID [2018-11-23 12:13:43,853 INFO L273 TraceCheckUtils]: 5: Hoare triple {2112#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {2112#true} is VALID [2018-11-23 12:13:43,853 INFO L256 TraceCheckUtils]: 6: Hoare triple {2112#true} call init_nondet(~#x~0.base, ~#x~0.offset); {2112#true} is VALID [2018-11-23 12:13:43,860 INFO L273 TraceCheckUtils]: 7: Hoare triple {2112#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {2138#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:13:43,861 INFO L273 TraceCheckUtils]: 8: Hoare triple {2138#(<= init_nondet_~i~0 0)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {2138#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:13:43,861 INFO L273 TraceCheckUtils]: 9: Hoare triple {2138#(<= init_nondet_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {2145#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:13:43,864 INFO L273 TraceCheckUtils]: 10: Hoare triple {2145#(<= init_nondet_~i~0 1)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {2145#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:13:43,864 INFO L273 TraceCheckUtils]: 11: Hoare triple {2145#(<= init_nondet_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {2152#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:13:43,865 INFO L273 TraceCheckUtils]: 12: Hoare triple {2152#(<= init_nondet_~i~0 2)} assume !(~i~0 < 40); {2113#false} is VALID [2018-11-23 12:13:43,865 INFO L273 TraceCheckUtils]: 13: Hoare triple {2113#false} assume true; {2113#false} is VALID [2018-11-23 12:13:43,865 INFO L268 TraceCheckUtils]: 14: Hoare quadruple {2113#false} {2112#true} #82#return; {2113#false} is VALID [2018-11-23 12:13:43,865 INFO L273 TraceCheckUtils]: 15: Hoare triple {2113#false} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {2113#false} is VALID [2018-11-23 12:13:43,866 INFO L256 TraceCheckUtils]: 16: Hoare triple {2113#false} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {2113#false} is VALID [2018-11-23 12:13:43,866 INFO L273 TraceCheckUtils]: 17: Hoare triple {2113#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {2113#false} is VALID [2018-11-23 12:13:43,866 INFO L273 TraceCheckUtils]: 18: Hoare triple {2113#false} assume !!(~i~1 < 40); {2113#false} is VALID [2018-11-23 12:13:43,866 INFO L273 TraceCheckUtils]: 19: Hoare triple {2113#false} assume !(~i~1 > 20); {2113#false} is VALID [2018-11-23 12:13:43,866 INFO L273 TraceCheckUtils]: 20: Hoare triple {2113#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {2113#false} is VALID [2018-11-23 12:13:43,867 INFO L273 TraceCheckUtils]: 21: Hoare triple {2113#false} assume !!(~i~1 < 40); {2113#false} is VALID [2018-11-23 12:13:43,867 INFO L273 TraceCheckUtils]: 22: Hoare triple {2113#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {2113#false} is VALID [2018-11-23 12:13:43,867 INFO L273 TraceCheckUtils]: 23: Hoare triple {2113#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {2113#false} is VALID [2018-11-23 12:13:43,868 INFO L273 TraceCheckUtils]: 24: Hoare triple {2113#false} assume !(~i~1 < 40); {2113#false} is VALID [2018-11-23 12:13:43,868 INFO L273 TraceCheckUtils]: 25: Hoare triple {2113#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {2113#false} is VALID [2018-11-23 12:13:43,868 INFO L273 TraceCheckUtils]: 26: Hoare triple {2113#false} assume true; {2113#false} is VALID [2018-11-23 12:13:43,869 INFO L268 TraceCheckUtils]: 27: Hoare quadruple {2113#false} {2113#false} #84#return; {2113#false} is VALID [2018-11-23 12:13:43,869 INFO L273 TraceCheckUtils]: 28: Hoare triple {2113#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {2113#false} is VALID [2018-11-23 12:13:43,869 INFO L256 TraceCheckUtils]: 29: Hoare triple {2113#false} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {2113#false} is VALID [2018-11-23 12:13:43,869 INFO L273 TraceCheckUtils]: 30: Hoare triple {2113#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {2113#false} is VALID [2018-11-23 12:13:43,869 INFO L273 TraceCheckUtils]: 31: Hoare triple {2113#false} assume !!(~i~1 < 40); {2113#false} is VALID [2018-11-23 12:13:43,869 INFO L273 TraceCheckUtils]: 32: Hoare triple {2113#false} assume !(~i~1 > 20); {2113#false} is VALID [2018-11-23 12:13:43,870 INFO L273 TraceCheckUtils]: 33: Hoare triple {2113#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {2113#false} is VALID [2018-11-23 12:13:43,870 INFO L273 TraceCheckUtils]: 34: Hoare triple {2113#false} assume !!(~i~1 < 40); {2113#false} is VALID [2018-11-23 12:13:43,870 INFO L273 TraceCheckUtils]: 35: Hoare triple {2113#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {2113#false} is VALID [2018-11-23 12:13:43,870 INFO L273 TraceCheckUtils]: 36: Hoare triple {2113#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {2113#false} is VALID [2018-11-23 12:13:43,871 INFO L273 TraceCheckUtils]: 37: Hoare triple {2113#false} assume !(~i~1 < 40); {2113#false} is VALID [2018-11-23 12:13:43,871 INFO L273 TraceCheckUtils]: 38: Hoare triple {2113#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {2113#false} is VALID [2018-11-23 12:13:43,872 INFO L273 TraceCheckUtils]: 39: Hoare triple {2113#false} assume true; {2113#false} is VALID [2018-11-23 12:13:43,872 INFO L268 TraceCheckUtils]: 40: Hoare quadruple {2113#false} {2113#false} #86#return; {2113#false} is VALID [2018-11-23 12:13:43,872 INFO L273 TraceCheckUtils]: 41: Hoare triple {2113#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {2113#false} is VALID [2018-11-23 12:13:43,872 INFO L273 TraceCheckUtils]: 42: Hoare triple {2113#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {2113#false} is VALID [2018-11-23 12:13:43,873 INFO L273 TraceCheckUtils]: 43: Hoare triple {2113#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {2113#false} is VALID [2018-11-23 12:13:43,873 INFO L273 TraceCheckUtils]: 44: Hoare triple {2113#false} assume !(~i~2 < 39); {2113#false} is VALID [2018-11-23 12:13:43,873 INFO L273 TraceCheckUtils]: 45: Hoare triple {2113#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {2113#false} is VALID [2018-11-23 12:13:43,873 INFO L256 TraceCheckUtils]: 46: Hoare triple {2113#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {2113#false} is VALID [2018-11-23 12:13:43,874 INFO L273 TraceCheckUtils]: 47: Hoare triple {2113#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {2113#false} is VALID [2018-11-23 12:13:43,874 INFO L273 TraceCheckUtils]: 48: Hoare triple {2113#false} assume !!(~i~1 < 40); {2113#false} is VALID [2018-11-23 12:13:43,874 INFO L273 TraceCheckUtils]: 49: Hoare triple {2113#false} assume !(~i~1 > 20); {2113#false} is VALID [2018-11-23 12:13:43,874 INFO L273 TraceCheckUtils]: 50: Hoare triple {2113#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {2113#false} is VALID [2018-11-23 12:13:43,875 INFO L273 TraceCheckUtils]: 51: Hoare triple {2113#false} assume !!(~i~1 < 40); {2113#false} is VALID [2018-11-23 12:13:43,875 INFO L273 TraceCheckUtils]: 52: Hoare triple {2113#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {2113#false} is VALID [2018-11-23 12:13:43,875 INFO L273 TraceCheckUtils]: 53: Hoare triple {2113#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {2113#false} is VALID [2018-11-23 12:13:43,876 INFO L273 TraceCheckUtils]: 54: Hoare triple {2113#false} assume !(~i~1 < 40); {2113#false} is VALID [2018-11-23 12:13:43,876 INFO L273 TraceCheckUtils]: 55: Hoare triple {2113#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {2113#false} is VALID [2018-11-23 12:13:43,876 INFO L273 TraceCheckUtils]: 56: Hoare triple {2113#false} assume true; {2113#false} is VALID [2018-11-23 12:13:43,876 INFO L268 TraceCheckUtils]: 57: Hoare quadruple {2113#false} {2113#false} #88#return; {2113#false} is VALID [2018-11-23 12:13:43,877 INFO L273 TraceCheckUtils]: 58: Hoare triple {2113#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {2113#false} is VALID [2018-11-23 12:13:43,877 INFO L273 TraceCheckUtils]: 59: Hoare triple {2113#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {2113#false} is VALID [2018-11-23 12:13:43,877 INFO L273 TraceCheckUtils]: 60: Hoare triple {2113#false} assume !false; {2113#false} is VALID [2018-11-23 12:13:43,881 INFO L134 CoverageAnalysis]: Checked inductivity of 83 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 79 trivial. 0 not checked. [2018-11-23 12:13:43,901 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:13:43,901 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [5] total 5 [2018-11-23 12:13:43,902 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 61 [2018-11-23 12:13:43,902 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:13:43,902 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states. [2018-11-23 12:13:43,995 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 39 edges. 39 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:13:43,995 INFO L459 AbstractCegarLoop]: Interpolant automaton has 5 states [2018-11-23 12:13:43,995 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2018-11-23 12:13:43,995 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=10, Unknown=0, NotChecked=0, Total=20 [2018-11-23 12:13:43,996 INFO L87 Difference]: Start difference. First operand 40 states and 46 transitions. Second operand 5 states. [2018-11-23 12:13:44,151 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:44,151 INFO L93 Difference]: Finished difference Result 70 states and 82 transitions. [2018-11-23 12:13:44,151 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2018-11-23 12:13:44,151 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 61 [2018-11-23 12:13:44,152 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:13:44,152 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2018-11-23 12:13:44,154 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 72 transitions. [2018-11-23 12:13:44,154 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2018-11-23 12:13:44,156 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 72 transitions. [2018-11-23 12:13:44,156 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 72 transitions. [2018-11-23 12:13:44,240 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-23 12:13:44,242 INFO L225 Difference]: With dead ends: 70 [2018-11-23 12:13:44,243 INFO L226 Difference]: Without dead ends: 43 [2018-11-23 12:13:44,243 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 60 GetRequests, 57 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-23 12:13:44,244 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 43 states. [2018-11-23 12:13:44,272 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 43 to 42. [2018-11-23 12:13:44,272 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:13:44,272 INFO L82 GeneralOperation]: Start isEquivalent. First operand 43 states. Second operand 42 states. [2018-11-23 12:13:44,273 INFO L74 IsIncluded]: Start isIncluded. First operand 43 states. Second operand 42 states. [2018-11-23 12:13:44,273 INFO L87 Difference]: Start difference. First operand 43 states. Second operand 42 states. [2018-11-23 12:13:44,275 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:44,275 INFO L93 Difference]: Finished difference Result 43 states and 49 transitions. [2018-11-23 12:13:44,275 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 49 transitions. [2018-11-23 12:13:44,276 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:13:44,276 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:13:44,276 INFO L74 IsIncluded]: Start isIncluded. First operand 42 states. Second operand 43 states. [2018-11-23 12:13:44,276 INFO L87 Difference]: Start difference. First operand 42 states. Second operand 43 states. [2018-11-23 12:13:44,278 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:44,279 INFO L93 Difference]: Finished difference Result 43 states and 49 transitions. [2018-11-23 12:13:44,279 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 49 transitions. [2018-11-23 12:13:44,279 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:13:44,279 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:13:44,279 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:13:44,280 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:13:44,280 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 42 states. [2018-11-23 12:13:44,281 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 42 states to 42 states and 48 transitions. [2018-11-23 12:13:44,282 INFO L78 Accepts]: Start accepts. Automaton has 42 states and 48 transitions. Word has length 61 [2018-11-23 12:13:44,282 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:13:44,282 INFO L480 AbstractCegarLoop]: Abstraction has 42 states and 48 transitions. [2018-11-23 12:13:44,282 INFO L481 AbstractCegarLoop]: Interpolant automaton has 5 states. [2018-11-23 12:13:44,282 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 48 transitions. [2018-11-23 12:13:44,283 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 64 [2018-11-23 12:13:44,283 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:13:44,284 INFO L402 BasicCegarLoop]: trace histogram [6, 6, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:13:44,284 INFO L423 AbstractCegarLoop]: === Iteration 8 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:13:44,284 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:13:44,284 INFO L82 PathProgramCache]: Analyzing trace with hash -1929644946, now seen corresponding path program 3 times [2018-11-23 12:13:44,284 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:13:44,285 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:13:44,285 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:13:44,286 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:13:44,286 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:13:44,300 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:13:44,300 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:13:44,300 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 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 9 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:13:44,327 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-23 12:13:44,385 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 3 check-sat command(s) [2018-11-23 12:13:44,385 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:13:44,414 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:13:44,415 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:13:44,747 INFO L256 TraceCheckUtils]: 0: Hoare triple {2544#true} call ULTIMATE.init(); {2544#true} is VALID [2018-11-23 12:13:44,748 INFO L273 TraceCheckUtils]: 1: Hoare triple {2544#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {2544#true} is VALID [2018-11-23 12:13:44,748 INFO L273 TraceCheckUtils]: 2: Hoare triple {2544#true} assume true; {2544#true} is VALID [2018-11-23 12:13:44,748 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2544#true} {2544#true} #78#return; {2544#true} is VALID [2018-11-23 12:13:44,749 INFO L256 TraceCheckUtils]: 4: Hoare triple {2544#true} call #t~ret12 := main(); {2544#true} is VALID [2018-11-23 12:13:44,749 INFO L273 TraceCheckUtils]: 5: Hoare triple {2544#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {2544#true} is VALID [2018-11-23 12:13:44,749 INFO L256 TraceCheckUtils]: 6: Hoare triple {2544#true} call init_nondet(~#x~0.base, ~#x~0.offset); {2544#true} is VALID [2018-11-23 12:13:44,749 INFO L273 TraceCheckUtils]: 7: Hoare triple {2544#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {2544#true} is VALID [2018-11-23 12:13:44,749 INFO L273 TraceCheckUtils]: 8: Hoare triple {2544#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {2544#true} is VALID [2018-11-23 12:13:44,750 INFO L273 TraceCheckUtils]: 9: Hoare triple {2544#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {2544#true} is VALID [2018-11-23 12:13:44,750 INFO L273 TraceCheckUtils]: 10: Hoare triple {2544#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {2544#true} is VALID [2018-11-23 12:13:44,750 INFO L273 TraceCheckUtils]: 11: Hoare triple {2544#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {2544#true} is VALID [2018-11-23 12:13:44,750 INFO L273 TraceCheckUtils]: 12: Hoare triple {2544#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {2544#true} is VALID [2018-11-23 12:13:44,750 INFO L273 TraceCheckUtils]: 13: Hoare triple {2544#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {2544#true} is VALID [2018-11-23 12:13:44,750 INFO L273 TraceCheckUtils]: 14: Hoare triple {2544#true} assume !(~i~0 < 40); {2544#true} is VALID [2018-11-23 12:13:44,751 INFO L273 TraceCheckUtils]: 15: Hoare triple {2544#true} assume true; {2544#true} is VALID [2018-11-23 12:13:44,751 INFO L268 TraceCheckUtils]: 16: Hoare quadruple {2544#true} {2544#true} #82#return; {2544#true} is VALID [2018-11-23 12:13:44,751 INFO L273 TraceCheckUtils]: 17: Hoare triple {2544#true} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {2544#true} is VALID [2018-11-23 12:13:44,751 INFO L256 TraceCheckUtils]: 18: Hoare triple {2544#true} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {2544#true} is VALID [2018-11-23 12:13:44,751 INFO L273 TraceCheckUtils]: 19: Hoare triple {2544#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {2544#true} is VALID [2018-11-23 12:13:44,751 INFO L273 TraceCheckUtils]: 20: Hoare triple {2544#true} assume !!(~i~1 < 40); {2544#true} is VALID [2018-11-23 12:13:44,752 INFO L273 TraceCheckUtils]: 21: Hoare triple {2544#true} assume !(~i~1 > 20); {2544#true} is VALID [2018-11-23 12:13:44,752 INFO L273 TraceCheckUtils]: 22: Hoare triple {2544#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {2544#true} is VALID [2018-11-23 12:13:44,752 INFO L273 TraceCheckUtils]: 23: Hoare triple {2544#true} assume !!(~i~1 < 40); {2544#true} is VALID [2018-11-23 12:13:44,752 INFO L273 TraceCheckUtils]: 24: Hoare triple {2544#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {2544#true} is VALID [2018-11-23 12:13:44,752 INFO L273 TraceCheckUtils]: 25: Hoare triple {2544#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {2544#true} is VALID [2018-11-23 12:13:44,753 INFO L273 TraceCheckUtils]: 26: Hoare triple {2544#true} assume !(~i~1 < 40); {2544#true} is VALID [2018-11-23 12:13:44,753 INFO L273 TraceCheckUtils]: 27: Hoare triple {2544#true} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {2544#true} is VALID [2018-11-23 12:13:44,753 INFO L273 TraceCheckUtils]: 28: Hoare triple {2544#true} assume true; {2544#true} is VALID [2018-11-23 12:13:44,753 INFO L268 TraceCheckUtils]: 29: Hoare quadruple {2544#true} {2544#true} #84#return; {2544#true} is VALID [2018-11-23 12:13:44,753 INFO L273 TraceCheckUtils]: 30: Hoare triple {2544#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {2544#true} is VALID [2018-11-23 12:13:44,753 INFO L256 TraceCheckUtils]: 31: Hoare triple {2544#true} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {2544#true} is VALID [2018-11-23 12:13:44,754 INFO L273 TraceCheckUtils]: 32: Hoare triple {2544#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {2544#true} is VALID [2018-11-23 12:13:44,754 INFO L273 TraceCheckUtils]: 33: Hoare triple {2544#true} assume !!(~i~1 < 40); {2544#true} is VALID [2018-11-23 12:13:44,754 INFO L273 TraceCheckUtils]: 34: Hoare triple {2544#true} assume !(~i~1 > 20); {2544#true} is VALID [2018-11-23 12:13:44,754 INFO L273 TraceCheckUtils]: 35: Hoare triple {2544#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {2544#true} is VALID [2018-11-23 12:13:44,755 INFO L273 TraceCheckUtils]: 36: Hoare triple {2544#true} assume !!(~i~1 < 40); {2544#true} is VALID [2018-11-23 12:13:44,755 INFO L273 TraceCheckUtils]: 37: Hoare triple {2544#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {2544#true} is VALID [2018-11-23 12:13:44,755 INFO L273 TraceCheckUtils]: 38: Hoare triple {2544#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {2544#true} is VALID [2018-11-23 12:13:44,755 INFO L273 TraceCheckUtils]: 39: Hoare triple {2544#true} assume !(~i~1 < 40); {2544#true} is VALID [2018-11-23 12:13:44,755 INFO L273 TraceCheckUtils]: 40: Hoare triple {2544#true} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {2544#true} is VALID [2018-11-23 12:13:44,756 INFO L273 TraceCheckUtils]: 41: Hoare triple {2544#true} assume true; {2544#true} is VALID [2018-11-23 12:13:44,756 INFO L268 TraceCheckUtils]: 42: Hoare quadruple {2544#true} {2544#true} #86#return; {2544#true} is VALID [2018-11-23 12:13:44,756 INFO L273 TraceCheckUtils]: 43: Hoare triple {2544#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {2544#true} is VALID [2018-11-23 12:13:44,756 INFO L273 TraceCheckUtils]: 44: Hoare triple {2544#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {2544#true} is VALID [2018-11-23 12:13:44,756 INFO L273 TraceCheckUtils]: 45: Hoare triple {2544#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {2544#true} is VALID [2018-11-23 12:13:44,757 INFO L273 TraceCheckUtils]: 46: Hoare triple {2544#true} assume !(~i~2 < 39); {2544#true} is VALID [2018-11-23 12:13:44,757 INFO L273 TraceCheckUtils]: 47: Hoare triple {2544#true} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {2544#true} is VALID [2018-11-23 12:13:44,757 INFO L256 TraceCheckUtils]: 48: Hoare triple {2544#true} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {2544#true} is VALID [2018-11-23 12:13:44,757 INFO L273 TraceCheckUtils]: 49: Hoare triple {2544#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {2544#true} is VALID [2018-11-23 12:13:44,757 INFO L273 TraceCheckUtils]: 50: Hoare triple {2544#true} assume !!(~i~1 < 40); {2544#true} is VALID [2018-11-23 12:13:44,760 INFO L273 TraceCheckUtils]: 51: Hoare triple {2544#true} assume !(~i~1 > 20); {2702#(<= rangesum_~i~1 20)} is VALID [2018-11-23 12:13:44,761 INFO L273 TraceCheckUtils]: 52: Hoare triple {2702#(<= rangesum_~i~1 20)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {2706#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:13:44,764 INFO L273 TraceCheckUtils]: 53: Hoare triple {2706#(<= rangesum_~i~1 21)} assume !!(~i~1 < 40); {2706#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:13:44,769 INFO L273 TraceCheckUtils]: 54: Hoare triple {2706#(<= rangesum_~i~1 21)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {2706#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:13:44,770 INFO L273 TraceCheckUtils]: 55: Hoare triple {2706#(<= rangesum_~i~1 21)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {2716#(<= rangesum_~i~1 22)} is VALID [2018-11-23 12:13:44,770 INFO L273 TraceCheckUtils]: 56: Hoare triple {2716#(<= rangesum_~i~1 22)} assume !(~i~1 < 40); {2545#false} is VALID [2018-11-23 12:13:44,770 INFO L273 TraceCheckUtils]: 57: Hoare triple {2545#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {2545#false} is VALID [2018-11-23 12:13:44,770 INFO L273 TraceCheckUtils]: 58: Hoare triple {2545#false} assume true; {2545#false} is VALID [2018-11-23 12:13:44,771 INFO L268 TraceCheckUtils]: 59: Hoare quadruple {2545#false} {2544#true} #88#return; {2545#false} is VALID [2018-11-23 12:13:44,771 INFO L273 TraceCheckUtils]: 60: Hoare triple {2545#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {2545#false} is VALID [2018-11-23 12:13:44,771 INFO L273 TraceCheckUtils]: 61: Hoare triple {2545#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {2545#false} is VALID [2018-11-23 12:13:44,771 INFO L273 TraceCheckUtils]: 62: Hoare triple {2545#false} assume !false; {2545#false} is VALID [2018-11-23 12:13:44,774 INFO L134 CoverageAnalysis]: Checked inductivity of 88 backedges. 33 proven. 2 refuted. 0 times theorem prover too weak. 53 trivial. 0 not checked. [2018-11-23 12:13:44,793 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:13:44,794 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [5] total 5 [2018-11-23 12:13:44,794 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 63 [2018-11-23 12:13:44,795 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:13:44,795 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states. [2018-11-23 12:13:44,839 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 45 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:13:44,840 INFO L459 AbstractCegarLoop]: Interpolant automaton has 5 states [2018-11-23 12:13:44,840 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2018-11-23 12:13:44,840 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=10, Unknown=0, NotChecked=0, Total=20 [2018-11-23 12:13:44,841 INFO L87 Difference]: Start difference. First operand 42 states and 48 transitions. Second operand 5 states. [2018-11-23 12:13:45,014 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:45,015 INFO L93 Difference]: Finished difference Result 70 states and 86 transitions. [2018-11-23 12:13:45,015 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2018-11-23 12:13:45,015 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 63 [2018-11-23 12:13:45,015 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:13:45,015 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2018-11-23 12:13:45,016 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 75 transitions. [2018-11-23 12:13:45,017 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2018-11-23 12:13:45,018 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 75 transitions. [2018-11-23 12:13:45,018 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 75 transitions. [2018-11-23 12:13:45,238 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 75 edges. 75 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:13:45,240 INFO L225 Difference]: With dead ends: 70 [2018-11-23 12:13:45,240 INFO L226 Difference]: Without dead ends: 47 [2018-11-23 12:13:45,241 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 62 GetRequests, 59 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-23 12:13:45,241 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 47 states. [2018-11-23 12:13:45,279 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 47 to 45. [2018-11-23 12:13:45,279 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:13:45,279 INFO L82 GeneralOperation]: Start isEquivalent. First operand 47 states. Second operand 45 states. [2018-11-23 12:13:45,279 INFO L74 IsIncluded]: Start isIncluded. First operand 47 states. Second operand 45 states. [2018-11-23 12:13:45,279 INFO L87 Difference]: Start difference. First operand 47 states. Second operand 45 states. [2018-11-23 12:13:45,282 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:45,282 INFO L93 Difference]: Finished difference Result 47 states and 55 transitions. [2018-11-23 12:13:45,282 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 55 transitions. [2018-11-23 12:13:45,283 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:13:45,283 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:13:45,283 INFO L74 IsIncluded]: Start isIncluded. First operand 45 states. Second operand 47 states. [2018-11-23 12:13:45,283 INFO L87 Difference]: Start difference. First operand 45 states. Second operand 47 states. [2018-11-23 12:13:45,285 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:45,285 INFO L93 Difference]: Finished difference Result 47 states and 55 transitions. [2018-11-23 12:13:45,286 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 55 transitions. [2018-11-23 12:13:45,286 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:13:45,286 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:13:45,286 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:13:45,286 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:13:45,286 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 45 states. [2018-11-23 12:13:45,288 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 45 states to 45 states and 52 transitions. [2018-11-23 12:13:45,288 INFO L78 Accepts]: Start accepts. Automaton has 45 states and 52 transitions. Word has length 63 [2018-11-23 12:13:45,289 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:13:45,289 INFO L480 AbstractCegarLoop]: Abstraction has 45 states and 52 transitions. [2018-11-23 12:13:45,289 INFO L481 AbstractCegarLoop]: Interpolant automaton has 5 states. [2018-11-23 12:13:45,289 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 52 transitions. [2018-11-23 12:13:45,290 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 73 [2018-11-23 12:13:45,290 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:13:45,290 INFO L402 BasicCegarLoop]: trace histogram [9, 9, 6, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:13:45,290 INFO L423 AbstractCegarLoop]: === Iteration 9 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:13:45,291 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:13:45,291 INFO L82 PathProgramCache]: Analyzing trace with hash -575638740, now seen corresponding path program 4 times [2018-11-23 12:13:45,291 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:13:45,291 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:13:45,292 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:13:45,292 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:13:45,292 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:13:45,306 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:13:45,306 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:13:45,307 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 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 10 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:13:45,325 INFO L103 rtionOrderModulation]: Keeping assertion order TERMS_WITH_SMALL_CONSTANTS_FIRST [2018-11-23 12:13:45,368 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2018-11-23 12:13:45,369 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:13:45,396 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:13:45,398 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:13:45,619 INFO L256 TraceCheckUtils]: 0: Hoare triple {2994#true} call ULTIMATE.init(); {2994#true} is VALID [2018-11-23 12:13:45,619 INFO L273 TraceCheckUtils]: 1: Hoare triple {2994#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {2994#true} is VALID [2018-11-23 12:13:45,619 INFO L273 TraceCheckUtils]: 2: Hoare triple {2994#true} assume true; {2994#true} is VALID [2018-11-23 12:13:45,620 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2994#true} {2994#true} #78#return; {2994#true} is VALID [2018-11-23 12:13:45,620 INFO L256 TraceCheckUtils]: 4: Hoare triple {2994#true} call #t~ret12 := main(); {2994#true} is VALID [2018-11-23 12:13:45,620 INFO L273 TraceCheckUtils]: 5: Hoare triple {2994#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {2994#true} is VALID [2018-11-23 12:13:45,621 INFO L256 TraceCheckUtils]: 6: Hoare triple {2994#true} call init_nondet(~#x~0.base, ~#x~0.offset); {2994#true} is VALID [2018-11-23 12:13:45,621 INFO L273 TraceCheckUtils]: 7: Hoare triple {2994#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {2994#true} is VALID [2018-11-23 12:13:45,621 INFO L273 TraceCheckUtils]: 8: Hoare triple {2994#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {2994#true} is VALID [2018-11-23 12:13:45,622 INFO L273 TraceCheckUtils]: 9: Hoare triple {2994#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {2994#true} is VALID [2018-11-23 12:13:45,622 INFO L273 TraceCheckUtils]: 10: Hoare triple {2994#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {2994#true} is VALID [2018-11-23 12:13:45,622 INFO L273 TraceCheckUtils]: 11: Hoare triple {2994#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {2994#true} is VALID [2018-11-23 12:13:45,622 INFO L273 TraceCheckUtils]: 12: Hoare triple {2994#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {2994#true} is VALID [2018-11-23 12:13:45,622 INFO L273 TraceCheckUtils]: 13: Hoare triple {2994#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {2994#true} is VALID [2018-11-23 12:13:45,623 INFO L273 TraceCheckUtils]: 14: Hoare triple {2994#true} assume !(~i~0 < 40); {2994#true} is VALID [2018-11-23 12:13:45,623 INFO L273 TraceCheckUtils]: 15: Hoare triple {2994#true} assume true; {2994#true} is VALID [2018-11-23 12:13:45,623 INFO L268 TraceCheckUtils]: 16: Hoare quadruple {2994#true} {2994#true} #82#return; {2994#true} is VALID [2018-11-23 12:13:45,623 INFO L273 TraceCheckUtils]: 17: Hoare triple {2994#true} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {2994#true} is VALID [2018-11-23 12:13:45,623 INFO L256 TraceCheckUtils]: 18: Hoare triple {2994#true} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {2994#true} is VALID [2018-11-23 12:13:45,624 INFO L273 TraceCheckUtils]: 19: Hoare triple {2994#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {2994#true} is VALID [2018-11-23 12:13:45,624 INFO L273 TraceCheckUtils]: 20: Hoare triple {2994#true} assume !!(~i~1 < 40); {2994#true} is VALID [2018-11-23 12:13:45,624 INFO L273 TraceCheckUtils]: 21: Hoare triple {2994#true} assume !(~i~1 > 20); {2994#true} is VALID [2018-11-23 12:13:45,624 INFO L273 TraceCheckUtils]: 22: Hoare triple {2994#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {2994#true} is VALID [2018-11-23 12:13:45,624 INFO L273 TraceCheckUtils]: 23: Hoare triple {2994#true} assume !!(~i~1 < 40); {2994#true} is VALID [2018-11-23 12:13:45,625 INFO L273 TraceCheckUtils]: 24: Hoare triple {2994#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {2994#true} is VALID [2018-11-23 12:13:45,625 INFO L273 TraceCheckUtils]: 25: Hoare triple {2994#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {2994#true} is VALID [2018-11-23 12:13:45,625 INFO L273 TraceCheckUtils]: 26: Hoare triple {2994#true} assume !!(~i~1 < 40); {2994#true} is VALID [2018-11-23 12:13:45,625 INFO L273 TraceCheckUtils]: 27: Hoare triple {2994#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {2994#true} is VALID [2018-11-23 12:13:45,625 INFO L273 TraceCheckUtils]: 28: Hoare triple {2994#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {2994#true} is VALID [2018-11-23 12:13:45,625 INFO L273 TraceCheckUtils]: 29: Hoare triple {2994#true} assume !(~i~1 < 40); {2994#true} is VALID [2018-11-23 12:13:45,626 INFO L273 TraceCheckUtils]: 30: Hoare triple {2994#true} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {2994#true} is VALID [2018-11-23 12:13:45,626 INFO L273 TraceCheckUtils]: 31: Hoare triple {2994#true} assume true; {2994#true} is VALID [2018-11-23 12:13:45,626 INFO L268 TraceCheckUtils]: 32: Hoare quadruple {2994#true} {2994#true} #84#return; {2994#true} is VALID [2018-11-23 12:13:45,626 INFO L273 TraceCheckUtils]: 33: Hoare triple {2994#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {2994#true} is VALID [2018-11-23 12:13:45,626 INFO L256 TraceCheckUtils]: 34: Hoare triple {2994#true} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {2994#true} is VALID [2018-11-23 12:13:45,626 INFO L273 TraceCheckUtils]: 35: Hoare triple {2994#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {2994#true} is VALID [2018-11-23 12:13:45,627 INFO L273 TraceCheckUtils]: 36: Hoare triple {2994#true} assume !!(~i~1 < 40); {2994#true} is VALID [2018-11-23 12:13:45,627 INFO L273 TraceCheckUtils]: 37: Hoare triple {2994#true} assume !(~i~1 > 20); {2994#true} is VALID [2018-11-23 12:13:45,627 INFO L273 TraceCheckUtils]: 38: Hoare triple {2994#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {2994#true} is VALID [2018-11-23 12:13:45,627 INFO L273 TraceCheckUtils]: 39: Hoare triple {2994#true} assume !!(~i~1 < 40); {2994#true} is VALID [2018-11-23 12:13:45,627 INFO L273 TraceCheckUtils]: 40: Hoare triple {2994#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {2994#true} is VALID [2018-11-23 12:13:45,628 INFO L273 TraceCheckUtils]: 41: Hoare triple {2994#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {2994#true} is VALID [2018-11-23 12:13:45,628 INFO L273 TraceCheckUtils]: 42: Hoare triple {2994#true} assume !!(~i~1 < 40); {2994#true} is VALID [2018-11-23 12:13:45,628 INFO L273 TraceCheckUtils]: 43: Hoare triple {2994#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {2994#true} is VALID [2018-11-23 12:13:45,628 INFO L273 TraceCheckUtils]: 44: Hoare triple {2994#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {2994#true} is VALID [2018-11-23 12:13:45,628 INFO L273 TraceCheckUtils]: 45: Hoare triple {2994#true} assume !(~i~1 < 40); {2994#true} is VALID [2018-11-23 12:13:45,629 INFO L273 TraceCheckUtils]: 46: Hoare triple {2994#true} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {2994#true} is VALID [2018-11-23 12:13:45,629 INFO L273 TraceCheckUtils]: 47: Hoare triple {2994#true} assume true; {2994#true} is VALID [2018-11-23 12:13:45,629 INFO L268 TraceCheckUtils]: 48: Hoare quadruple {2994#true} {2994#true} #86#return; {2994#true} is VALID [2018-11-23 12:13:45,629 INFO L273 TraceCheckUtils]: 49: Hoare triple {2994#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {2994#true} is VALID [2018-11-23 12:13:45,629 INFO L273 TraceCheckUtils]: 50: Hoare triple {2994#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {2994#true} is VALID [2018-11-23 12:13:45,630 INFO L273 TraceCheckUtils]: 51: Hoare triple {2994#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {2994#true} is VALID [2018-11-23 12:13:45,630 INFO L273 TraceCheckUtils]: 52: Hoare triple {2994#true} assume !(~i~2 < 39); {2994#true} is VALID [2018-11-23 12:13:45,630 INFO L273 TraceCheckUtils]: 53: Hoare triple {2994#true} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {2994#true} is VALID [2018-11-23 12:13:45,630 INFO L256 TraceCheckUtils]: 54: Hoare triple {2994#true} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {2994#true} is VALID [2018-11-23 12:13:45,643 INFO L273 TraceCheckUtils]: 55: Hoare triple {2994#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {3164#(<= rangesum_~i~1 0)} is VALID [2018-11-23 12:13:45,647 INFO L273 TraceCheckUtils]: 56: Hoare triple {3164#(<= rangesum_~i~1 0)} assume !!(~i~1 < 40); {3164#(<= rangesum_~i~1 0)} is VALID [2018-11-23 12:13:45,647 INFO L273 TraceCheckUtils]: 57: Hoare triple {3164#(<= rangesum_~i~1 0)} assume !(~i~1 > 20); {3164#(<= rangesum_~i~1 0)} is VALID [2018-11-23 12:13:45,656 INFO L273 TraceCheckUtils]: 58: Hoare triple {3164#(<= rangesum_~i~1 0)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {3174#(<= rangesum_~i~1 1)} is VALID [2018-11-23 12:13:45,660 INFO L273 TraceCheckUtils]: 59: Hoare triple {3174#(<= rangesum_~i~1 1)} assume !!(~i~1 < 40); {3174#(<= rangesum_~i~1 1)} is VALID [2018-11-23 12:13:45,660 INFO L273 TraceCheckUtils]: 60: Hoare triple {3174#(<= rangesum_~i~1 1)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {3174#(<= rangesum_~i~1 1)} is VALID [2018-11-23 12:13:45,661 INFO L273 TraceCheckUtils]: 61: Hoare triple {3174#(<= rangesum_~i~1 1)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {3184#(<= rangesum_~i~1 2)} is VALID [2018-11-23 12:13:45,661 INFO L273 TraceCheckUtils]: 62: Hoare triple {3184#(<= rangesum_~i~1 2)} assume !!(~i~1 < 40); {3184#(<= rangesum_~i~1 2)} is VALID [2018-11-23 12:13:45,662 INFO L273 TraceCheckUtils]: 63: Hoare triple {3184#(<= rangesum_~i~1 2)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {2995#false} is VALID [2018-11-23 12:13:45,662 INFO L273 TraceCheckUtils]: 64: Hoare triple {2995#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {2995#false} is VALID [2018-11-23 12:13:45,662 INFO L273 TraceCheckUtils]: 65: Hoare triple {2995#false} assume !(~i~1 < 40); {2995#false} is VALID [2018-11-23 12:13:45,662 INFO L273 TraceCheckUtils]: 66: Hoare triple {2995#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {2995#false} is VALID [2018-11-23 12:13:45,662 INFO L273 TraceCheckUtils]: 67: Hoare triple {2995#false} assume true; {2995#false} is VALID [2018-11-23 12:13:45,663 INFO L268 TraceCheckUtils]: 68: Hoare quadruple {2995#false} {2994#true} #88#return; {2995#false} is VALID [2018-11-23 12:13:45,663 INFO L273 TraceCheckUtils]: 69: Hoare triple {2995#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {2995#false} is VALID [2018-11-23 12:13:45,663 INFO L273 TraceCheckUtils]: 70: Hoare triple {2995#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {2995#false} is VALID [2018-11-23 12:13:45,663 INFO L273 TraceCheckUtils]: 71: Hoare triple {2995#false} assume !false; {2995#false} is VALID [2018-11-23 12:13:45,665 INFO L134 CoverageAnalysis]: Checked inductivity of 160 backedges. 79 proven. 7 refuted. 0 times theorem prover too weak. 74 trivial. 0 not checked. [2018-11-23 12:13:45,686 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:13:45,686 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [5] total 5 [2018-11-23 12:13:45,687 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 72 [2018-11-23 12:13:45,687 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:13:45,687 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states. [2018-11-23 12:13:45,733 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-23 12:13:45,733 INFO L459 AbstractCegarLoop]: Interpolant automaton has 5 states [2018-11-23 12:13:45,733 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2018-11-23 12:13:45,733 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=10, Unknown=0, NotChecked=0, Total=20 [2018-11-23 12:13:45,734 INFO L87 Difference]: Start difference. First operand 45 states and 52 transitions. Second operand 5 states. [2018-11-23 12:13:46,126 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:46,126 INFO L93 Difference]: Finished difference Result 78 states and 95 transitions. [2018-11-23 12:13:46,126 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2018-11-23 12:13:46,126 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 72 [2018-11-23 12:13:46,126 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:13:46,126 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2018-11-23 12:13:46,128 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 74 transitions. [2018-11-23 12:13:46,128 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2018-11-23 12:13:46,130 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 74 transitions. [2018-11-23 12:13:46,130 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 74 transitions. [2018-11-23 12:13:46,211 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 74 edges. 74 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:13:46,213 INFO L225 Difference]: With dead ends: 78 [2018-11-23 12:13:46,213 INFO L226 Difference]: Without dead ends: 52 [2018-11-23 12:13:46,214 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 71 GetRequests, 68 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-23 12:13:46,215 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 52 states. [2018-11-23 12:13:46,239 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 52 to 51. [2018-11-23 12:13:46,240 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:13:46,240 INFO L82 GeneralOperation]: Start isEquivalent. First operand 52 states. Second operand 51 states. [2018-11-23 12:13:46,240 INFO L74 IsIncluded]: Start isIncluded. First operand 52 states. Second operand 51 states. [2018-11-23 12:13:46,240 INFO L87 Difference]: Start difference. First operand 52 states. Second operand 51 states. [2018-11-23 12:13:46,243 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:46,243 INFO L93 Difference]: Finished difference Result 52 states and 59 transitions. [2018-11-23 12:13:46,243 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 59 transitions. [2018-11-23 12:13:46,244 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:13:46,244 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:13:46,244 INFO L74 IsIncluded]: Start isIncluded. First operand 51 states. Second operand 52 states. [2018-11-23 12:13:46,244 INFO L87 Difference]: Start difference. First operand 51 states. Second operand 52 states. [2018-11-23 12:13:46,246 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:46,246 INFO L93 Difference]: Finished difference Result 52 states and 59 transitions. [2018-11-23 12:13:46,246 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 59 transitions. [2018-11-23 12:13:46,246 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:13:46,247 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:13:46,247 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:13:46,247 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:13:46,247 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 51 states. [2018-11-23 12:13:46,249 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 51 states to 51 states and 58 transitions. [2018-11-23 12:13:46,249 INFO L78 Accepts]: Start accepts. Automaton has 51 states and 58 transitions. Word has length 72 [2018-11-23 12:13:46,249 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:13:46,250 INFO L480 AbstractCegarLoop]: Abstraction has 51 states and 58 transitions. [2018-11-23 12:13:46,250 INFO L481 AbstractCegarLoop]: Interpolant automaton has 5 states. [2018-11-23 12:13:46,250 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 58 transitions. [2018-11-23 12:13:46,251 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 91 [2018-11-23 12:13:46,251 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:13:46,251 INFO L402 BasicCegarLoop]: trace histogram [15, 15, 9, 6, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:13:46,251 INFO L423 AbstractCegarLoop]: === Iteration 10 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:13:46,251 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:13:46,252 INFO L82 PathProgramCache]: Analyzing trace with hash 619731884, now seen corresponding path program 5 times [2018-11-23 12:13:46,252 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:13:46,252 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:13:46,253 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:13:46,253 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:13:46,253 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:13:46,267 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:13:46,267 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:13:46,267 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 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 11 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:13:46,291 INFO L103 rtionOrderModulation]: Keeping assertion order INSIDE_LOOP_FIRST1 [2018-11-23 12:13:46,308 INFO L249 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 3 check-sat command(s) [2018-11-23 12:13:46,309 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:13:46,338 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:13:46,341 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:13:46,499 INFO L256 TraceCheckUtils]: 0: Hoare triple {3500#true} call ULTIMATE.init(); {3500#true} is VALID [2018-11-23 12:13:46,500 INFO L273 TraceCheckUtils]: 1: Hoare triple {3500#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {3500#true} is VALID [2018-11-23 12:13:46,500 INFO L273 TraceCheckUtils]: 2: Hoare triple {3500#true} assume true; {3500#true} is VALID [2018-11-23 12:13:46,500 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {3500#true} {3500#true} #78#return; {3500#true} is VALID [2018-11-23 12:13:46,500 INFO L256 TraceCheckUtils]: 4: Hoare triple {3500#true} call #t~ret12 := main(); {3500#true} is VALID [2018-11-23 12:13:46,501 INFO L273 TraceCheckUtils]: 5: Hoare triple {3500#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {3500#true} is VALID [2018-11-23 12:13:46,501 INFO L256 TraceCheckUtils]: 6: Hoare triple {3500#true} call init_nondet(~#x~0.base, ~#x~0.offset); {3500#true} is VALID [2018-11-23 12:13:46,501 INFO L273 TraceCheckUtils]: 7: Hoare triple {3500#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {3500#true} is VALID [2018-11-23 12:13:46,501 INFO L273 TraceCheckUtils]: 8: Hoare triple {3500#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {3500#true} is VALID [2018-11-23 12:13:46,502 INFO L273 TraceCheckUtils]: 9: Hoare triple {3500#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {3500#true} is VALID [2018-11-23 12:13:46,502 INFO L273 TraceCheckUtils]: 10: Hoare triple {3500#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {3500#true} is VALID [2018-11-23 12:13:46,502 INFO L273 TraceCheckUtils]: 11: Hoare triple {3500#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {3500#true} is VALID [2018-11-23 12:13:46,503 INFO L273 TraceCheckUtils]: 12: Hoare triple {3500#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {3500#true} is VALID [2018-11-23 12:13:46,503 INFO L273 TraceCheckUtils]: 13: Hoare triple {3500#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {3500#true} is VALID [2018-11-23 12:13:46,503 INFO L273 TraceCheckUtils]: 14: Hoare triple {3500#true} assume !(~i~0 < 40); {3500#true} is VALID [2018-11-23 12:13:46,503 INFO L273 TraceCheckUtils]: 15: Hoare triple {3500#true} assume true; {3500#true} is VALID [2018-11-23 12:13:46,503 INFO L268 TraceCheckUtils]: 16: Hoare quadruple {3500#true} {3500#true} #82#return; {3500#true} is VALID [2018-11-23 12:13:46,503 INFO L273 TraceCheckUtils]: 17: Hoare triple {3500#true} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {3500#true} is VALID [2018-11-23 12:13:46,504 INFO L256 TraceCheckUtils]: 18: Hoare triple {3500#true} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {3500#true} is VALID [2018-11-23 12:13:46,504 INFO L273 TraceCheckUtils]: 19: Hoare triple {3500#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {3500#true} is VALID [2018-11-23 12:13:46,504 INFO L273 TraceCheckUtils]: 20: Hoare triple {3500#true} assume !!(~i~1 < 40); {3500#true} is VALID [2018-11-23 12:13:46,504 INFO L273 TraceCheckUtils]: 21: Hoare triple {3500#true} assume !(~i~1 > 20); {3500#true} is VALID [2018-11-23 12:13:46,504 INFO L273 TraceCheckUtils]: 22: Hoare triple {3500#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {3500#true} is VALID [2018-11-23 12:13:46,505 INFO L273 TraceCheckUtils]: 23: Hoare triple {3500#true} assume !!(~i~1 < 40); {3500#true} is VALID [2018-11-23 12:13:46,505 INFO L273 TraceCheckUtils]: 24: Hoare triple {3500#true} assume !(~i~1 > 20); {3500#true} is VALID [2018-11-23 12:13:46,505 INFO L273 TraceCheckUtils]: 25: Hoare triple {3500#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {3500#true} is VALID [2018-11-23 12:13:46,505 INFO L273 TraceCheckUtils]: 26: Hoare triple {3500#true} assume !!(~i~1 < 40); {3500#true} is VALID [2018-11-23 12:13:46,510 INFO L273 TraceCheckUtils]: 27: Hoare triple {3500#true} assume !(~i~1 > 20); {3586#(<= rangesum_~i~1 20)} is VALID [2018-11-23 12:13:46,510 INFO L273 TraceCheckUtils]: 28: Hoare triple {3586#(<= rangesum_~i~1 20)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {3590#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:13:46,511 INFO L273 TraceCheckUtils]: 29: Hoare triple {3590#(<= rangesum_~i~1 21)} assume !!(~i~1 < 40); {3590#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:13:46,511 INFO L273 TraceCheckUtils]: 30: Hoare triple {3590#(<= rangesum_~i~1 21)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {3590#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:13:46,512 INFO L273 TraceCheckUtils]: 31: Hoare triple {3590#(<= rangesum_~i~1 21)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {3600#(<= rangesum_~i~1 22)} is VALID [2018-11-23 12:13:46,512 INFO L273 TraceCheckUtils]: 32: Hoare triple {3600#(<= rangesum_~i~1 22)} assume !!(~i~1 < 40); {3600#(<= rangesum_~i~1 22)} is VALID [2018-11-23 12:13:46,512 INFO L273 TraceCheckUtils]: 33: Hoare triple {3600#(<= rangesum_~i~1 22)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {3600#(<= rangesum_~i~1 22)} is VALID [2018-11-23 12:13:46,513 INFO L273 TraceCheckUtils]: 34: Hoare triple {3600#(<= rangesum_~i~1 22)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {3610#(<= rangesum_~i~1 23)} is VALID [2018-11-23 12:13:46,513 INFO L273 TraceCheckUtils]: 35: Hoare triple {3610#(<= rangesum_~i~1 23)} assume !(~i~1 < 40); {3501#false} is VALID [2018-11-23 12:13:46,513 INFO L273 TraceCheckUtils]: 36: Hoare triple {3501#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {3501#false} is VALID [2018-11-23 12:13:46,513 INFO L273 TraceCheckUtils]: 37: Hoare triple {3501#false} assume true; {3501#false} is VALID [2018-11-23 12:13:46,514 INFO L268 TraceCheckUtils]: 38: Hoare quadruple {3501#false} {3500#true} #84#return; {3501#false} is VALID [2018-11-23 12:13:46,514 INFO L273 TraceCheckUtils]: 39: Hoare triple {3501#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {3501#false} is VALID [2018-11-23 12:13:46,514 INFO L256 TraceCheckUtils]: 40: Hoare triple {3501#false} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {3501#false} is VALID [2018-11-23 12:13:46,514 INFO L273 TraceCheckUtils]: 41: Hoare triple {3501#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {3501#false} is VALID [2018-11-23 12:13:46,515 INFO L273 TraceCheckUtils]: 42: Hoare triple {3501#false} assume !!(~i~1 < 40); {3501#false} is VALID [2018-11-23 12:13:46,515 INFO L273 TraceCheckUtils]: 43: Hoare triple {3501#false} assume !(~i~1 > 20); {3501#false} is VALID [2018-11-23 12:13:46,515 INFO L273 TraceCheckUtils]: 44: Hoare triple {3501#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {3501#false} is VALID [2018-11-23 12:13:46,515 INFO L273 TraceCheckUtils]: 45: Hoare triple {3501#false} assume !!(~i~1 < 40); {3501#false} is VALID [2018-11-23 12:13:46,515 INFO L273 TraceCheckUtils]: 46: Hoare triple {3501#false} assume !(~i~1 > 20); {3501#false} is VALID [2018-11-23 12:13:46,516 INFO L273 TraceCheckUtils]: 47: Hoare triple {3501#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {3501#false} is VALID [2018-11-23 12:13:46,516 INFO L273 TraceCheckUtils]: 48: Hoare triple {3501#false} assume !!(~i~1 < 40); {3501#false} is VALID [2018-11-23 12:13:46,516 INFO L273 TraceCheckUtils]: 49: Hoare triple {3501#false} assume !(~i~1 > 20); {3501#false} is VALID [2018-11-23 12:13:46,516 INFO L273 TraceCheckUtils]: 50: Hoare triple {3501#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {3501#false} is VALID [2018-11-23 12:13:46,516 INFO L273 TraceCheckUtils]: 51: Hoare triple {3501#false} assume !!(~i~1 < 40); {3501#false} is VALID [2018-11-23 12:13:46,516 INFO L273 TraceCheckUtils]: 52: Hoare triple {3501#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {3501#false} is VALID [2018-11-23 12:13:46,516 INFO L273 TraceCheckUtils]: 53: Hoare triple {3501#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {3501#false} is VALID [2018-11-23 12:13:46,516 INFO L273 TraceCheckUtils]: 54: Hoare triple {3501#false} assume !!(~i~1 < 40); {3501#false} is VALID [2018-11-23 12:13:46,517 INFO L273 TraceCheckUtils]: 55: Hoare triple {3501#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {3501#false} is VALID [2018-11-23 12:13:46,517 INFO L273 TraceCheckUtils]: 56: Hoare triple {3501#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {3501#false} is VALID [2018-11-23 12:13:46,517 INFO L273 TraceCheckUtils]: 57: Hoare triple {3501#false} assume !(~i~1 < 40); {3501#false} is VALID [2018-11-23 12:13:46,517 INFO L273 TraceCheckUtils]: 58: Hoare triple {3501#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {3501#false} is VALID [2018-11-23 12:13:46,517 INFO L273 TraceCheckUtils]: 59: Hoare triple {3501#false} assume true; {3501#false} is VALID [2018-11-23 12:13:46,517 INFO L268 TraceCheckUtils]: 60: Hoare quadruple {3501#false} {3501#false} #86#return; {3501#false} is VALID [2018-11-23 12:13:46,517 INFO L273 TraceCheckUtils]: 61: Hoare triple {3501#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {3501#false} is VALID [2018-11-23 12:13:46,518 INFO L273 TraceCheckUtils]: 62: Hoare triple {3501#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {3501#false} is VALID [2018-11-23 12:13:46,518 INFO L273 TraceCheckUtils]: 63: Hoare triple {3501#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {3501#false} is VALID [2018-11-23 12:13:46,518 INFO L273 TraceCheckUtils]: 64: Hoare triple {3501#false} assume !(~i~2 < 39); {3501#false} is VALID [2018-11-23 12:13:46,518 INFO L273 TraceCheckUtils]: 65: Hoare triple {3501#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {3501#false} is VALID [2018-11-23 12:13:46,518 INFO L256 TraceCheckUtils]: 66: Hoare triple {3501#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {3501#false} is VALID [2018-11-23 12:13:46,518 INFO L273 TraceCheckUtils]: 67: Hoare triple {3501#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {3501#false} is VALID [2018-11-23 12:13:46,518 INFO L273 TraceCheckUtils]: 68: Hoare triple {3501#false} assume !!(~i~1 < 40); {3501#false} is VALID [2018-11-23 12:13:46,518 INFO L273 TraceCheckUtils]: 69: Hoare triple {3501#false} assume !(~i~1 > 20); {3501#false} is VALID [2018-11-23 12:13:46,519 INFO L273 TraceCheckUtils]: 70: Hoare triple {3501#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {3501#false} is VALID [2018-11-23 12:13:46,519 INFO L273 TraceCheckUtils]: 71: Hoare triple {3501#false} assume !!(~i~1 < 40); {3501#false} is VALID [2018-11-23 12:13:46,519 INFO L273 TraceCheckUtils]: 72: Hoare triple {3501#false} assume !(~i~1 > 20); {3501#false} is VALID [2018-11-23 12:13:46,519 INFO L273 TraceCheckUtils]: 73: Hoare triple {3501#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {3501#false} is VALID [2018-11-23 12:13:46,519 INFO L273 TraceCheckUtils]: 74: Hoare triple {3501#false} assume !!(~i~1 < 40); {3501#false} is VALID [2018-11-23 12:13:46,519 INFO L273 TraceCheckUtils]: 75: Hoare triple {3501#false} assume !(~i~1 > 20); {3501#false} is VALID [2018-11-23 12:13:46,519 INFO L273 TraceCheckUtils]: 76: Hoare triple {3501#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {3501#false} is VALID [2018-11-23 12:13:46,520 INFO L273 TraceCheckUtils]: 77: Hoare triple {3501#false} assume !!(~i~1 < 40); {3501#false} is VALID [2018-11-23 12:13:46,520 INFO L273 TraceCheckUtils]: 78: Hoare triple {3501#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {3501#false} is VALID [2018-11-23 12:13:46,520 INFO L273 TraceCheckUtils]: 79: Hoare triple {3501#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {3501#false} is VALID [2018-11-23 12:13:46,520 INFO L273 TraceCheckUtils]: 80: Hoare triple {3501#false} assume !!(~i~1 < 40); {3501#false} is VALID [2018-11-23 12:13:46,520 INFO L273 TraceCheckUtils]: 81: Hoare triple {3501#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {3501#false} is VALID [2018-11-23 12:13:46,520 INFO L273 TraceCheckUtils]: 82: Hoare triple {3501#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {3501#false} is VALID [2018-11-23 12:13:46,521 INFO L273 TraceCheckUtils]: 83: Hoare triple {3501#false} assume !(~i~1 < 40); {3501#false} is VALID [2018-11-23 12:13:46,521 INFO L273 TraceCheckUtils]: 84: Hoare triple {3501#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {3501#false} is VALID [2018-11-23 12:13:46,521 INFO L273 TraceCheckUtils]: 85: Hoare triple {3501#false} assume true; {3501#false} is VALID [2018-11-23 12:13:46,521 INFO L268 TraceCheckUtils]: 86: Hoare quadruple {3501#false} {3501#false} #88#return; {3501#false} is VALID [2018-11-23 12:13:46,521 INFO L273 TraceCheckUtils]: 87: Hoare triple {3501#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {3501#false} is VALID [2018-11-23 12:13:46,522 INFO L273 TraceCheckUtils]: 88: Hoare triple {3501#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {3501#false} is VALID [2018-11-23 12:13:46,522 INFO L273 TraceCheckUtils]: 89: Hoare triple {3501#false} assume !false; {3501#false} is VALID [2018-11-23 12:13:46,526 INFO L134 CoverageAnalysis]: Checked inductivity of 385 backedges. 195 proven. 7 refuted. 0 times theorem prover too weak. 183 trivial. 0 not checked. [2018-11-23 12:13:46,555 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:13:46,555 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [6] total 6 [2018-11-23 12:13:46,556 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 90 [2018-11-23 12:13:46,556 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:13:46,556 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2018-11-23 12:13:46,642 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-23 12:13:46,642 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2018-11-23 12:13:46,642 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2018-11-23 12:13:46,643 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=15, Unknown=0, NotChecked=0, Total=30 [2018-11-23 12:13:46,643 INFO L87 Difference]: Start difference. First operand 51 states and 58 transitions. Second operand 6 states. [2018-11-23 12:13:46,834 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:46,834 INFO L93 Difference]: Finished difference Result 88 states and 106 transitions. [2018-11-23 12:13:46,835 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2018-11-23 12:13:46,835 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 90 [2018-11-23 12:13:46,835 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:13:46,835 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-23 12:13:46,837 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 79 transitions. [2018-11-23 12:13:46,837 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-23 12:13:46,838 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 79 transitions. [2018-11-23 12:13:46,839 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 79 transitions. [2018-11-23 12:13:47,051 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-23 12:13:47,054 INFO L225 Difference]: With dead ends: 88 [2018-11-23 12:13:47,054 INFO L226 Difference]: Without dead ends: 56 [2018-11-23 12:13:47,054 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 89 GetRequests, 85 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=15, Invalid=15, Unknown=0, NotChecked=0, Total=30 [2018-11-23 12:13:47,055 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 56 states. [2018-11-23 12:13:47,090 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 56 to 54. [2018-11-23 12:13:47,091 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:13:47,091 INFO L82 GeneralOperation]: Start isEquivalent. First operand 56 states. Second operand 54 states. [2018-11-23 12:13:47,091 INFO L74 IsIncluded]: Start isIncluded. First operand 56 states. Second operand 54 states. [2018-11-23 12:13:47,091 INFO L87 Difference]: Start difference. First operand 56 states. Second operand 54 states. [2018-11-23 12:13:47,094 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:47,094 INFO L93 Difference]: Finished difference Result 56 states and 65 transitions. [2018-11-23 12:13:47,094 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 65 transitions. [2018-11-23 12:13:47,095 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:13:47,095 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:13:47,095 INFO L74 IsIncluded]: Start isIncluded. First operand 54 states. Second operand 56 states. [2018-11-23 12:13:47,095 INFO L87 Difference]: Start difference. First operand 54 states. Second operand 56 states. [2018-11-23 12:13:47,096 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:47,096 INFO L93 Difference]: Finished difference Result 56 states and 65 transitions. [2018-11-23 12:13:47,097 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 65 transitions. [2018-11-23 12:13:47,097 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:13:47,097 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:13:47,097 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:13:47,098 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:13:47,098 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 54 states. [2018-11-23 12:13:47,099 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 54 states to 54 states and 62 transitions. [2018-11-23 12:13:47,099 INFO L78 Accepts]: Start accepts. Automaton has 54 states and 62 transitions. Word has length 90 [2018-11-23 12:13:47,100 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:13:47,100 INFO L480 AbstractCegarLoop]: Abstraction has 54 states and 62 transitions. [2018-11-23 12:13:47,100 INFO L481 AbstractCegarLoop]: Interpolant automaton has 6 states. [2018-11-23 12:13:47,100 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 62 transitions. [2018-11-23 12:13:47,101 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 100 [2018-11-23 12:13:47,101 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:13:47,101 INFO L402 BasicCegarLoop]: trace histogram [18, 18, 9, 9, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:13:47,102 INFO L423 AbstractCegarLoop]: === Iteration 11 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:13:47,102 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:13:47,102 INFO L82 PathProgramCache]: Analyzing trace with hash -1729394898, now seen corresponding path program 6 times [2018-11-23 12:13:47,102 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:13:47,102 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:13:47,103 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:13:47,103 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:13:47,103 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:13:47,117 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:13:47,117 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:13:47,118 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 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 12 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:13:47,140 INFO L103 rtionOrderModulation]: Keeping assertion order MIX_INSIDE_OUTSIDE [2018-11-23 12:13:47,180 INFO L249 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2018-11-23 12:13:47,180 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:13:47,200 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:13:47,202 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:13:47,298 INFO L256 TraceCheckUtils]: 0: Hoare triple {4086#true} call ULTIMATE.init(); {4086#true} is VALID [2018-11-23 12:13:47,299 INFO L273 TraceCheckUtils]: 1: Hoare triple {4086#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {4086#true} is VALID [2018-11-23 12:13:47,299 INFO L273 TraceCheckUtils]: 2: Hoare triple {4086#true} assume true; {4086#true} is VALID [2018-11-23 12:13:47,299 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {4086#true} {4086#true} #78#return; {4086#true} is VALID [2018-11-23 12:13:47,299 INFO L256 TraceCheckUtils]: 4: Hoare triple {4086#true} call #t~ret12 := main(); {4086#true} is VALID [2018-11-23 12:13:47,300 INFO L273 TraceCheckUtils]: 5: Hoare triple {4086#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {4086#true} is VALID [2018-11-23 12:13:47,300 INFO L256 TraceCheckUtils]: 6: Hoare triple {4086#true} call init_nondet(~#x~0.base, ~#x~0.offset); {4086#true} is VALID [2018-11-23 12:13:47,300 INFO L273 TraceCheckUtils]: 7: Hoare triple {4086#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {4086#true} is VALID [2018-11-23 12:13:47,300 INFO L273 TraceCheckUtils]: 8: Hoare triple {4086#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {4086#true} is VALID [2018-11-23 12:13:47,301 INFO L273 TraceCheckUtils]: 9: Hoare triple {4086#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {4086#true} is VALID [2018-11-23 12:13:47,301 INFO L273 TraceCheckUtils]: 10: Hoare triple {4086#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {4086#true} is VALID [2018-11-23 12:13:47,301 INFO L273 TraceCheckUtils]: 11: Hoare triple {4086#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {4086#true} is VALID [2018-11-23 12:13:47,301 INFO L273 TraceCheckUtils]: 12: Hoare triple {4086#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {4086#true} is VALID [2018-11-23 12:13:47,301 INFO L273 TraceCheckUtils]: 13: Hoare triple {4086#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {4086#true} is VALID [2018-11-23 12:13:47,302 INFO L273 TraceCheckUtils]: 14: Hoare triple {4086#true} assume !(~i~0 < 40); {4086#true} is VALID [2018-11-23 12:13:47,302 INFO L273 TraceCheckUtils]: 15: Hoare triple {4086#true} assume true; {4086#true} is VALID [2018-11-23 12:13:47,302 INFO L268 TraceCheckUtils]: 16: Hoare quadruple {4086#true} {4086#true} #82#return; {4086#true} is VALID [2018-11-23 12:13:47,302 INFO L273 TraceCheckUtils]: 17: Hoare triple {4086#true} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {4086#true} is VALID [2018-11-23 12:13:47,303 INFO L256 TraceCheckUtils]: 18: Hoare triple {4086#true} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {4086#true} is VALID [2018-11-23 12:13:47,303 INFO L273 TraceCheckUtils]: 19: Hoare triple {4086#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {4086#true} is VALID [2018-11-23 12:13:47,303 INFO L273 TraceCheckUtils]: 20: Hoare triple {4086#true} assume !!(~i~1 < 40); {4086#true} is VALID [2018-11-23 12:13:47,303 INFO L273 TraceCheckUtils]: 21: Hoare triple {4086#true} assume !(~i~1 > 20); {4086#true} is VALID [2018-11-23 12:13:47,303 INFO L273 TraceCheckUtils]: 22: Hoare triple {4086#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {4086#true} is VALID [2018-11-23 12:13:47,303 INFO L273 TraceCheckUtils]: 23: Hoare triple {4086#true} assume !!(~i~1 < 40); {4086#true} is VALID [2018-11-23 12:13:47,304 INFO L273 TraceCheckUtils]: 24: Hoare triple {4086#true} assume !(~i~1 > 20); {4086#true} is VALID [2018-11-23 12:13:47,304 INFO L273 TraceCheckUtils]: 25: Hoare triple {4086#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {4086#true} is VALID [2018-11-23 12:13:47,304 INFO L273 TraceCheckUtils]: 26: Hoare triple {4086#true} assume !!(~i~1 < 40); {4086#true} is VALID [2018-11-23 12:13:47,304 INFO L273 TraceCheckUtils]: 27: Hoare triple {4086#true} assume !(~i~1 > 20); {4086#true} is VALID [2018-11-23 12:13:47,304 INFO L273 TraceCheckUtils]: 28: Hoare triple {4086#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {4086#true} is VALID [2018-11-23 12:13:47,305 INFO L273 TraceCheckUtils]: 29: Hoare triple {4086#true} assume !!(~i~1 < 40); {4086#true} is VALID [2018-11-23 12:13:47,305 INFO L273 TraceCheckUtils]: 30: Hoare triple {4086#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {4086#true} is VALID [2018-11-23 12:13:47,305 INFO L273 TraceCheckUtils]: 31: Hoare triple {4086#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {4086#true} is VALID [2018-11-23 12:13:47,305 INFO L273 TraceCheckUtils]: 32: Hoare triple {4086#true} assume !!(~i~1 < 40); {4086#true} is VALID [2018-11-23 12:13:47,305 INFO L273 TraceCheckUtils]: 33: Hoare triple {4086#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {4086#true} is VALID [2018-11-23 12:13:47,306 INFO L273 TraceCheckUtils]: 34: Hoare triple {4086#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {4086#true} is VALID [2018-11-23 12:13:47,306 INFO L273 TraceCheckUtils]: 35: Hoare triple {4086#true} assume !!(~i~1 < 40); {4086#true} is VALID [2018-11-23 12:13:47,306 INFO L273 TraceCheckUtils]: 36: Hoare triple {4086#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {4086#true} is VALID [2018-11-23 12:13:47,306 INFO L273 TraceCheckUtils]: 37: Hoare triple {4086#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {4086#true} is VALID [2018-11-23 12:13:47,306 INFO L273 TraceCheckUtils]: 38: Hoare triple {4086#true} assume !(~i~1 < 40); {4086#true} is VALID [2018-11-23 12:13:47,306 INFO L273 TraceCheckUtils]: 39: Hoare triple {4086#true} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {4086#true} is VALID [2018-11-23 12:13:47,307 INFO L273 TraceCheckUtils]: 40: Hoare triple {4086#true} assume true; {4086#true} is VALID [2018-11-23 12:13:47,307 INFO L268 TraceCheckUtils]: 41: Hoare quadruple {4086#true} {4086#true} #84#return; {4086#true} is VALID [2018-11-23 12:13:47,307 INFO L273 TraceCheckUtils]: 42: Hoare triple {4086#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {4086#true} is VALID [2018-11-23 12:13:47,307 INFO L256 TraceCheckUtils]: 43: Hoare triple {4086#true} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {4086#true} is VALID [2018-11-23 12:13:47,307 INFO L273 TraceCheckUtils]: 44: Hoare triple {4086#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {4086#true} is VALID [2018-11-23 12:13:47,308 INFO L273 TraceCheckUtils]: 45: Hoare triple {4086#true} assume !!(~i~1 < 40); {4086#true} is VALID [2018-11-23 12:13:47,308 INFO L273 TraceCheckUtils]: 46: Hoare triple {4086#true} assume !(~i~1 > 20); {4086#true} is VALID [2018-11-23 12:13:47,308 INFO L273 TraceCheckUtils]: 47: Hoare triple {4086#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {4086#true} is VALID [2018-11-23 12:13:47,308 INFO L273 TraceCheckUtils]: 48: Hoare triple {4086#true} assume !!(~i~1 < 40); {4086#true} is VALID [2018-11-23 12:13:47,308 INFO L273 TraceCheckUtils]: 49: Hoare triple {4086#true} assume !(~i~1 > 20); {4086#true} is VALID [2018-11-23 12:13:47,308 INFO L273 TraceCheckUtils]: 50: Hoare triple {4086#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {4086#true} is VALID [2018-11-23 12:13:47,309 INFO L273 TraceCheckUtils]: 51: Hoare triple {4086#true} assume !!(~i~1 < 40); {4086#true} is VALID [2018-11-23 12:13:47,309 INFO L273 TraceCheckUtils]: 52: Hoare triple {4086#true} assume !(~i~1 > 20); {4086#true} is VALID [2018-11-23 12:13:47,309 INFO L273 TraceCheckUtils]: 53: Hoare triple {4086#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {4086#true} is VALID [2018-11-23 12:13:47,309 INFO L273 TraceCheckUtils]: 54: Hoare triple {4086#true} assume !!(~i~1 < 40); {4086#true} is VALID [2018-11-23 12:13:47,309 INFO L273 TraceCheckUtils]: 55: Hoare triple {4086#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {4086#true} is VALID [2018-11-23 12:13:47,310 INFO L273 TraceCheckUtils]: 56: Hoare triple {4086#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {4086#true} is VALID [2018-11-23 12:13:47,310 INFO L273 TraceCheckUtils]: 57: Hoare triple {4086#true} assume !!(~i~1 < 40); {4086#true} is VALID [2018-11-23 12:13:47,310 INFO L273 TraceCheckUtils]: 58: Hoare triple {4086#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {4086#true} is VALID [2018-11-23 12:13:47,310 INFO L273 TraceCheckUtils]: 59: Hoare triple {4086#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {4086#true} is VALID [2018-11-23 12:13:47,310 INFO L273 TraceCheckUtils]: 60: Hoare triple {4086#true} assume !!(~i~1 < 40); {4086#true} is VALID [2018-11-23 12:13:47,310 INFO L273 TraceCheckUtils]: 61: Hoare triple {4086#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {4086#true} is VALID [2018-11-23 12:13:47,311 INFO L273 TraceCheckUtils]: 62: Hoare triple {4086#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {4086#true} is VALID [2018-11-23 12:13:47,311 INFO L273 TraceCheckUtils]: 63: Hoare triple {4086#true} assume !(~i~1 < 40); {4086#true} is VALID [2018-11-23 12:13:47,311 INFO L273 TraceCheckUtils]: 64: Hoare triple {4086#true} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {4086#true} is VALID [2018-11-23 12:13:47,311 INFO L273 TraceCheckUtils]: 65: Hoare triple {4086#true} assume true; {4086#true} is VALID [2018-11-23 12:13:47,311 INFO L268 TraceCheckUtils]: 66: Hoare quadruple {4086#true} {4086#true} #86#return; {4086#true} is VALID [2018-11-23 12:13:47,325 INFO L273 TraceCheckUtils]: 67: Hoare triple {4086#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {4292#(<= main_~i~2 0)} is VALID [2018-11-23 12:13:47,327 INFO L273 TraceCheckUtils]: 68: Hoare triple {4292#(<= main_~i~2 0)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {4292#(<= main_~i~2 0)} is VALID [2018-11-23 12:13:47,327 INFO L273 TraceCheckUtils]: 69: Hoare triple {4292#(<= main_~i~2 0)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {4299#(<= main_~i~2 1)} is VALID [2018-11-23 12:13:47,330 INFO L273 TraceCheckUtils]: 70: Hoare triple {4299#(<= main_~i~2 1)} assume !(~i~2 < 39); {4087#false} is VALID [2018-11-23 12:13:47,330 INFO L273 TraceCheckUtils]: 71: Hoare triple {4087#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {4087#false} is VALID [2018-11-23 12:13:47,330 INFO L256 TraceCheckUtils]: 72: Hoare triple {4087#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {4087#false} is VALID [2018-11-23 12:13:47,330 INFO L273 TraceCheckUtils]: 73: Hoare triple {4087#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {4087#false} is VALID [2018-11-23 12:13:47,330 INFO L273 TraceCheckUtils]: 74: Hoare triple {4087#false} assume !!(~i~1 < 40); {4087#false} is VALID [2018-11-23 12:13:47,330 INFO L273 TraceCheckUtils]: 75: Hoare triple {4087#false} assume !(~i~1 > 20); {4087#false} is VALID [2018-11-23 12:13:47,330 INFO L273 TraceCheckUtils]: 76: Hoare triple {4087#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {4087#false} is VALID [2018-11-23 12:13:47,331 INFO L273 TraceCheckUtils]: 77: Hoare triple {4087#false} assume !!(~i~1 < 40); {4087#false} is VALID [2018-11-23 12:13:47,331 INFO L273 TraceCheckUtils]: 78: Hoare triple {4087#false} assume !(~i~1 > 20); {4087#false} is VALID [2018-11-23 12:13:47,331 INFO L273 TraceCheckUtils]: 79: Hoare triple {4087#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {4087#false} is VALID [2018-11-23 12:13:47,331 INFO L273 TraceCheckUtils]: 80: Hoare triple {4087#false} assume !!(~i~1 < 40); {4087#false} is VALID [2018-11-23 12:13:47,331 INFO L273 TraceCheckUtils]: 81: Hoare triple {4087#false} assume !(~i~1 > 20); {4087#false} is VALID [2018-11-23 12:13:47,331 INFO L273 TraceCheckUtils]: 82: Hoare triple {4087#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {4087#false} is VALID [2018-11-23 12:13:47,331 INFO L273 TraceCheckUtils]: 83: Hoare triple {4087#false} assume !!(~i~1 < 40); {4087#false} is VALID [2018-11-23 12:13:47,332 INFO L273 TraceCheckUtils]: 84: Hoare triple {4087#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {4087#false} is VALID [2018-11-23 12:13:47,332 INFO L273 TraceCheckUtils]: 85: Hoare triple {4087#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {4087#false} is VALID [2018-11-23 12:13:47,332 INFO L273 TraceCheckUtils]: 86: Hoare triple {4087#false} assume !!(~i~1 < 40); {4087#false} is VALID [2018-11-23 12:13:47,332 INFO L273 TraceCheckUtils]: 87: Hoare triple {4087#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {4087#false} is VALID [2018-11-23 12:13:47,332 INFO L273 TraceCheckUtils]: 88: Hoare triple {4087#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {4087#false} is VALID [2018-11-23 12:13:47,332 INFO L273 TraceCheckUtils]: 89: Hoare triple {4087#false} assume !!(~i~1 < 40); {4087#false} is VALID [2018-11-23 12:13:47,332 INFO L273 TraceCheckUtils]: 90: Hoare triple {4087#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {4087#false} is VALID [2018-11-23 12:13:47,332 INFO L273 TraceCheckUtils]: 91: Hoare triple {4087#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {4087#false} is VALID [2018-11-23 12:13:47,333 INFO L273 TraceCheckUtils]: 92: Hoare triple {4087#false} assume !(~i~1 < 40); {4087#false} is VALID [2018-11-23 12:13:47,333 INFO L273 TraceCheckUtils]: 93: Hoare triple {4087#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {4087#false} is VALID [2018-11-23 12:13:47,333 INFO L273 TraceCheckUtils]: 94: Hoare triple {4087#false} assume true; {4087#false} is VALID [2018-11-23 12:13:47,333 INFO L268 TraceCheckUtils]: 95: Hoare quadruple {4087#false} {4087#false} #88#return; {4087#false} is VALID [2018-11-23 12:13:47,333 INFO L273 TraceCheckUtils]: 96: Hoare triple {4087#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {4087#false} is VALID [2018-11-23 12:13:47,333 INFO L273 TraceCheckUtils]: 97: Hoare triple {4087#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {4087#false} is VALID [2018-11-23 12:13:47,333 INFO L273 TraceCheckUtils]: 98: Hoare triple {4087#false} assume !false; {4087#false} is VALID [2018-11-23 12:13:47,337 INFO L134 CoverageAnalysis]: Checked inductivity of 538 backedges. 250 proven. 1 refuted. 0 times theorem prover too weak. 287 trivial. 0 not checked. [2018-11-23 12:13:47,356 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:13:47,356 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [4] total 4 [2018-11-23 12:13:47,356 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 99 [2018-11-23 12:13:47,357 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:13:47,357 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2018-11-23 12:13:47,404 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 45 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:13:47,404 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2018-11-23 12:13:47,404 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2018-11-23 12:13:47,405 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2018-11-23 12:13:47,405 INFO L87 Difference]: Start difference. First operand 54 states and 62 transitions. Second operand 4 states. [2018-11-23 12:13:47,528 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:47,529 INFO L93 Difference]: Finished difference Result 86 states and 99 transitions. [2018-11-23 12:13:47,529 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2018-11-23 12:13:47,529 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 99 [2018-11-23 12:13:47,529 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:13:47,532 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2018-11-23 12:13:47,533 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 58 transitions. [2018-11-23 12:13:47,533 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2018-11-23 12:13:47,534 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 58 transitions. [2018-11-23 12:13:47,534 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 58 transitions. [2018-11-23 12:13:47,613 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 58 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:13:47,615 INFO L225 Difference]: With dead ends: 86 [2018-11-23 12:13:47,615 INFO L226 Difference]: Without dead ends: 57 [2018-11-23 12:13:47,616 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 98 GetRequests, 96 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-23 12:13:47,616 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 57 states. [2018-11-23 12:13:47,642 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 57 to 56. [2018-11-23 12:13:47,643 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:13:47,643 INFO L82 GeneralOperation]: Start isEquivalent. First operand 57 states. Second operand 56 states. [2018-11-23 12:13:47,643 INFO L74 IsIncluded]: Start isIncluded. First operand 57 states. Second operand 56 states. [2018-11-23 12:13:47,643 INFO L87 Difference]: Start difference. First operand 57 states. Second operand 56 states. [2018-11-23 12:13:47,645 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:47,645 INFO L93 Difference]: Finished difference Result 57 states and 65 transitions. [2018-11-23 12:13:47,646 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 65 transitions. [2018-11-23 12:13:47,646 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:13:47,646 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:13:47,646 INFO L74 IsIncluded]: Start isIncluded. First operand 56 states. Second operand 57 states. [2018-11-23 12:13:47,646 INFO L87 Difference]: Start difference. First operand 56 states. Second operand 57 states. [2018-11-23 12:13:47,648 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:47,648 INFO L93 Difference]: Finished difference Result 57 states and 65 transitions. [2018-11-23 12:13:47,648 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 65 transitions. [2018-11-23 12:13:47,648 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:13:47,648 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:13:47,648 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:13:47,649 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:13:47,649 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 56 states. [2018-11-23 12:13:47,650 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 56 states to 56 states and 64 transitions. [2018-11-23 12:13:47,650 INFO L78 Accepts]: Start accepts. Automaton has 56 states and 64 transitions. Word has length 99 [2018-11-23 12:13:47,651 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:13:47,651 INFO L480 AbstractCegarLoop]: Abstraction has 56 states and 64 transitions. [2018-11-23 12:13:47,651 INFO L481 AbstractCegarLoop]: Interpolant automaton has 4 states. [2018-11-23 12:13:47,651 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 64 transitions. [2018-11-23 12:13:47,652 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 102 [2018-11-23 12:13:47,652 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:13:47,652 INFO L402 BasicCegarLoop]: trace histogram [18, 18, 9, 9, 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, 1] [2018-11-23 12:13:47,652 INFO L423 AbstractCegarLoop]: === Iteration 12 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:13:47,653 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:13:47,653 INFO L82 PathProgramCache]: Analyzing trace with hash -458602804, now seen corresponding path program 7 times [2018-11-23 12:13:47,653 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:13:47,653 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:13:47,654 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:13:47,654 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:13:47,654 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:13:47,668 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:13:47,668 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:13:47,668 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 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 13 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:13:47,690 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:13:47,732 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:13:47,765 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:13:47,766 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:13:48,413 INFO L256 TraceCheckUtils]: 0: Hoare triple {4699#true} call ULTIMATE.init(); {4699#true} is VALID [2018-11-23 12:13:48,414 INFO L273 TraceCheckUtils]: 1: Hoare triple {4699#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {4699#true} is VALID [2018-11-23 12:13:48,414 INFO L273 TraceCheckUtils]: 2: Hoare triple {4699#true} assume true; {4699#true} is VALID [2018-11-23 12:13:48,414 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {4699#true} {4699#true} #78#return; {4699#true} is VALID [2018-11-23 12:13:48,415 INFO L256 TraceCheckUtils]: 4: Hoare triple {4699#true} call #t~ret12 := main(); {4699#true} is VALID [2018-11-23 12:13:48,415 INFO L273 TraceCheckUtils]: 5: Hoare triple {4699#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {4699#true} is VALID [2018-11-23 12:13:48,415 INFO L256 TraceCheckUtils]: 6: Hoare triple {4699#true} call init_nondet(~#x~0.base, ~#x~0.offset); {4699#true} is VALID [2018-11-23 12:13:48,415 INFO L273 TraceCheckUtils]: 7: Hoare triple {4699#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {4725#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:13:48,416 INFO L273 TraceCheckUtils]: 8: Hoare triple {4725#(<= init_nondet_~i~0 0)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {4725#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:13:48,416 INFO L273 TraceCheckUtils]: 9: Hoare triple {4725#(<= init_nondet_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {4732#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:13:48,417 INFO L273 TraceCheckUtils]: 10: Hoare triple {4732#(<= init_nondet_~i~0 1)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {4732#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:13:48,417 INFO L273 TraceCheckUtils]: 11: Hoare triple {4732#(<= init_nondet_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {4739#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:13:48,417 INFO L273 TraceCheckUtils]: 12: Hoare triple {4739#(<= init_nondet_~i~0 2)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {4739#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:13:48,418 INFO L273 TraceCheckUtils]: 13: Hoare triple {4739#(<= init_nondet_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {4746#(<= init_nondet_~i~0 3)} is VALID [2018-11-23 12:13:48,419 INFO L273 TraceCheckUtils]: 14: Hoare triple {4746#(<= init_nondet_~i~0 3)} assume !(~i~0 < 40); {4700#false} is VALID [2018-11-23 12:13:48,419 INFO L273 TraceCheckUtils]: 15: Hoare triple {4700#false} assume true; {4700#false} is VALID [2018-11-23 12:13:48,419 INFO L268 TraceCheckUtils]: 16: Hoare quadruple {4700#false} {4699#true} #82#return; {4700#false} is VALID [2018-11-23 12:13:48,419 INFO L273 TraceCheckUtils]: 17: Hoare triple {4700#false} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {4700#false} is VALID [2018-11-23 12:13:48,420 INFO L256 TraceCheckUtils]: 18: Hoare triple {4700#false} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {4700#false} is VALID [2018-11-23 12:13:48,420 INFO L273 TraceCheckUtils]: 19: Hoare triple {4700#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {4700#false} is VALID [2018-11-23 12:13:48,420 INFO L273 TraceCheckUtils]: 20: Hoare triple {4700#false} assume !!(~i~1 < 40); {4700#false} is VALID [2018-11-23 12:13:48,420 INFO L273 TraceCheckUtils]: 21: Hoare triple {4700#false} assume !(~i~1 > 20); {4700#false} is VALID [2018-11-23 12:13:48,421 INFO L273 TraceCheckUtils]: 22: Hoare triple {4700#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {4700#false} is VALID [2018-11-23 12:13:48,421 INFO L273 TraceCheckUtils]: 23: Hoare triple {4700#false} assume !!(~i~1 < 40); {4700#false} is VALID [2018-11-23 12:13:48,421 INFO L273 TraceCheckUtils]: 24: Hoare triple {4700#false} assume !(~i~1 > 20); {4700#false} is VALID [2018-11-23 12:13:48,421 INFO L273 TraceCheckUtils]: 25: Hoare triple {4700#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {4700#false} is VALID [2018-11-23 12:13:48,421 INFO L273 TraceCheckUtils]: 26: Hoare triple {4700#false} assume !!(~i~1 < 40); {4700#false} is VALID [2018-11-23 12:13:48,421 INFO L273 TraceCheckUtils]: 27: Hoare triple {4700#false} assume !(~i~1 > 20); {4700#false} is VALID [2018-11-23 12:13:48,422 INFO L273 TraceCheckUtils]: 28: Hoare triple {4700#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {4700#false} is VALID [2018-11-23 12:13:48,422 INFO L273 TraceCheckUtils]: 29: Hoare triple {4700#false} assume !!(~i~1 < 40); {4700#false} is VALID [2018-11-23 12:13:48,422 INFO L273 TraceCheckUtils]: 30: Hoare triple {4700#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {4700#false} is VALID [2018-11-23 12:13:48,422 INFO L273 TraceCheckUtils]: 31: Hoare triple {4700#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {4700#false} is VALID [2018-11-23 12:13:48,422 INFO L273 TraceCheckUtils]: 32: Hoare triple {4700#false} assume !!(~i~1 < 40); {4700#false} is VALID [2018-11-23 12:13:48,422 INFO L273 TraceCheckUtils]: 33: Hoare triple {4700#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {4700#false} is VALID [2018-11-23 12:13:48,423 INFO L273 TraceCheckUtils]: 34: Hoare triple {4700#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {4700#false} is VALID [2018-11-23 12:13:48,423 INFO L273 TraceCheckUtils]: 35: Hoare triple {4700#false} assume !!(~i~1 < 40); {4700#false} is VALID [2018-11-23 12:13:48,423 INFO L273 TraceCheckUtils]: 36: Hoare triple {4700#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {4700#false} is VALID [2018-11-23 12:13:48,423 INFO L273 TraceCheckUtils]: 37: Hoare triple {4700#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {4700#false} is VALID [2018-11-23 12:13:48,423 INFO L273 TraceCheckUtils]: 38: Hoare triple {4700#false} assume !(~i~1 < 40); {4700#false} is VALID [2018-11-23 12:13:48,423 INFO L273 TraceCheckUtils]: 39: Hoare triple {4700#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {4700#false} is VALID [2018-11-23 12:13:48,424 INFO L273 TraceCheckUtils]: 40: Hoare triple {4700#false} assume true; {4700#false} is VALID [2018-11-23 12:13:48,424 INFO L268 TraceCheckUtils]: 41: Hoare quadruple {4700#false} {4700#false} #84#return; {4700#false} is VALID [2018-11-23 12:13:48,424 INFO L273 TraceCheckUtils]: 42: Hoare triple {4700#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {4700#false} is VALID [2018-11-23 12:13:48,424 INFO L256 TraceCheckUtils]: 43: Hoare triple {4700#false} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {4700#false} is VALID [2018-11-23 12:13:48,424 INFO L273 TraceCheckUtils]: 44: Hoare triple {4700#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {4700#false} is VALID [2018-11-23 12:13:48,425 INFO L273 TraceCheckUtils]: 45: Hoare triple {4700#false} assume !!(~i~1 < 40); {4700#false} is VALID [2018-11-23 12:13:48,425 INFO L273 TraceCheckUtils]: 46: Hoare triple {4700#false} assume !(~i~1 > 20); {4700#false} is VALID [2018-11-23 12:13:48,425 INFO L273 TraceCheckUtils]: 47: Hoare triple {4700#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {4700#false} is VALID [2018-11-23 12:13:48,425 INFO L273 TraceCheckUtils]: 48: Hoare triple {4700#false} assume !!(~i~1 < 40); {4700#false} is VALID [2018-11-23 12:13:48,426 INFO L273 TraceCheckUtils]: 49: Hoare triple {4700#false} assume !(~i~1 > 20); {4700#false} is VALID [2018-11-23 12:13:48,426 INFO L273 TraceCheckUtils]: 50: Hoare triple {4700#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {4700#false} is VALID [2018-11-23 12:13:48,426 INFO L273 TraceCheckUtils]: 51: Hoare triple {4700#false} assume !!(~i~1 < 40); {4700#false} is VALID [2018-11-23 12:13:48,426 INFO L273 TraceCheckUtils]: 52: Hoare triple {4700#false} assume !(~i~1 > 20); {4700#false} is VALID [2018-11-23 12:13:48,426 INFO L273 TraceCheckUtils]: 53: Hoare triple {4700#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {4700#false} is VALID [2018-11-23 12:13:48,427 INFO L273 TraceCheckUtils]: 54: Hoare triple {4700#false} assume !!(~i~1 < 40); {4700#false} is VALID [2018-11-23 12:13:48,427 INFO L273 TraceCheckUtils]: 55: Hoare triple {4700#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {4700#false} is VALID [2018-11-23 12:13:48,427 INFO L273 TraceCheckUtils]: 56: Hoare triple {4700#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {4700#false} is VALID [2018-11-23 12:13:48,427 INFO L273 TraceCheckUtils]: 57: Hoare triple {4700#false} assume !!(~i~1 < 40); {4700#false} is VALID [2018-11-23 12:13:48,428 INFO L273 TraceCheckUtils]: 58: Hoare triple {4700#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {4700#false} is VALID [2018-11-23 12:13:48,428 INFO L273 TraceCheckUtils]: 59: Hoare triple {4700#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {4700#false} is VALID [2018-11-23 12:13:48,428 INFO L273 TraceCheckUtils]: 60: Hoare triple {4700#false} assume !!(~i~1 < 40); {4700#false} is VALID [2018-11-23 12:13:48,428 INFO L273 TraceCheckUtils]: 61: Hoare triple {4700#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {4700#false} is VALID [2018-11-23 12:13:48,428 INFO L273 TraceCheckUtils]: 62: Hoare triple {4700#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {4700#false} is VALID [2018-11-23 12:13:48,429 INFO L273 TraceCheckUtils]: 63: Hoare triple {4700#false} assume !(~i~1 < 40); {4700#false} is VALID [2018-11-23 12:13:48,429 INFO L273 TraceCheckUtils]: 64: Hoare triple {4700#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {4700#false} is VALID [2018-11-23 12:13:48,429 INFO L273 TraceCheckUtils]: 65: Hoare triple {4700#false} assume true; {4700#false} is VALID [2018-11-23 12:13:48,429 INFO L268 TraceCheckUtils]: 66: Hoare quadruple {4700#false} {4700#false} #86#return; {4700#false} is VALID [2018-11-23 12:13:48,429 INFO L273 TraceCheckUtils]: 67: Hoare triple {4700#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {4700#false} is VALID [2018-11-23 12:13:48,430 INFO L273 TraceCheckUtils]: 68: Hoare triple {4700#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {4700#false} is VALID [2018-11-23 12:13:48,430 INFO L273 TraceCheckUtils]: 69: Hoare triple {4700#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {4700#false} is VALID [2018-11-23 12:13:48,430 INFO L273 TraceCheckUtils]: 70: Hoare triple {4700#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {4700#false} is VALID [2018-11-23 12:13:48,430 INFO L273 TraceCheckUtils]: 71: Hoare triple {4700#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {4700#false} is VALID [2018-11-23 12:13:48,431 INFO L273 TraceCheckUtils]: 72: Hoare triple {4700#false} assume !(~i~2 < 39); {4700#false} is VALID [2018-11-23 12:13:48,431 INFO L273 TraceCheckUtils]: 73: Hoare triple {4700#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {4700#false} is VALID [2018-11-23 12:13:48,431 INFO L256 TraceCheckUtils]: 74: Hoare triple {4700#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {4700#false} is VALID [2018-11-23 12:13:48,431 INFO L273 TraceCheckUtils]: 75: Hoare triple {4700#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {4700#false} is VALID [2018-11-23 12:13:48,431 INFO L273 TraceCheckUtils]: 76: Hoare triple {4700#false} assume !!(~i~1 < 40); {4700#false} is VALID [2018-11-23 12:13:48,432 INFO L273 TraceCheckUtils]: 77: Hoare triple {4700#false} assume !(~i~1 > 20); {4700#false} is VALID [2018-11-23 12:13:48,432 INFO L273 TraceCheckUtils]: 78: Hoare triple {4700#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {4700#false} is VALID [2018-11-23 12:13:48,432 INFO L273 TraceCheckUtils]: 79: Hoare triple {4700#false} assume !!(~i~1 < 40); {4700#false} is VALID [2018-11-23 12:13:48,432 INFO L273 TraceCheckUtils]: 80: Hoare triple {4700#false} assume !(~i~1 > 20); {4700#false} is VALID [2018-11-23 12:13:48,432 INFO L273 TraceCheckUtils]: 81: Hoare triple {4700#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {4700#false} is VALID [2018-11-23 12:13:48,433 INFO L273 TraceCheckUtils]: 82: Hoare triple {4700#false} assume !!(~i~1 < 40); {4700#false} is VALID [2018-11-23 12:13:48,433 INFO L273 TraceCheckUtils]: 83: Hoare triple {4700#false} assume !(~i~1 > 20); {4700#false} is VALID [2018-11-23 12:13:48,433 INFO L273 TraceCheckUtils]: 84: Hoare triple {4700#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {4700#false} is VALID [2018-11-23 12:13:48,433 INFO L273 TraceCheckUtils]: 85: Hoare triple {4700#false} assume !!(~i~1 < 40); {4700#false} is VALID [2018-11-23 12:13:48,434 INFO L273 TraceCheckUtils]: 86: Hoare triple {4700#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {4700#false} is VALID [2018-11-23 12:13:48,434 INFO L273 TraceCheckUtils]: 87: Hoare triple {4700#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {4700#false} is VALID [2018-11-23 12:13:48,434 INFO L273 TraceCheckUtils]: 88: Hoare triple {4700#false} assume !!(~i~1 < 40); {4700#false} is VALID [2018-11-23 12:13:48,434 INFO L273 TraceCheckUtils]: 89: Hoare triple {4700#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {4700#false} is VALID [2018-11-23 12:13:48,434 INFO L273 TraceCheckUtils]: 90: Hoare triple {4700#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {4700#false} is VALID [2018-11-23 12:13:48,435 INFO L273 TraceCheckUtils]: 91: Hoare triple {4700#false} assume !!(~i~1 < 40); {4700#false} is VALID [2018-11-23 12:13:48,435 INFO L273 TraceCheckUtils]: 92: Hoare triple {4700#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {4700#false} is VALID [2018-11-23 12:13:48,435 INFO L273 TraceCheckUtils]: 93: Hoare triple {4700#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {4700#false} is VALID [2018-11-23 12:13:48,435 INFO L273 TraceCheckUtils]: 94: Hoare triple {4700#false} assume !(~i~1 < 40); {4700#false} is VALID [2018-11-23 12:13:48,435 INFO L273 TraceCheckUtils]: 95: Hoare triple {4700#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {4700#false} is VALID [2018-11-23 12:13:48,436 INFO L273 TraceCheckUtils]: 96: Hoare triple {4700#false} assume true; {4700#false} is VALID [2018-11-23 12:13:48,436 INFO L268 TraceCheckUtils]: 97: Hoare quadruple {4700#false} {4700#false} #88#return; {4700#false} is VALID [2018-11-23 12:13:48,436 INFO L273 TraceCheckUtils]: 98: Hoare triple {4700#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {4700#false} is VALID [2018-11-23 12:13:48,436 INFO L273 TraceCheckUtils]: 99: Hoare triple {4700#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {4700#false} is VALID [2018-11-23 12:13:48,437 INFO L273 TraceCheckUtils]: 100: Hoare triple {4700#false} assume !false; {4700#false} is VALID [2018-11-23 12:13:48,443 INFO L134 CoverageAnalysis]: Checked inductivity of 541 backedges. 0 proven. 9 refuted. 0 times theorem prover too weak. 532 trivial. 0 not checked. [2018-11-23 12:13:48,471 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:13:48,471 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [6] total 6 [2018-11-23 12:13:48,472 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 101 [2018-11-23 12:13:48,472 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:13:48,472 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2018-11-23 12:13:48,618 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 41 edges. 41 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:13:48,618 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2018-11-23 12:13:48,619 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2018-11-23 12:13:48,619 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=15, Unknown=0, NotChecked=0, Total=30 [2018-11-23 12:13:48,619 INFO L87 Difference]: Start difference. First operand 56 states and 64 transitions. Second operand 6 states. [2018-11-23 12:13:48,899 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:48,900 INFO L93 Difference]: Finished difference Result 100 states and 116 transitions. [2018-11-23 12:13:48,900 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2018-11-23 12:13:48,900 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 101 [2018-11-23 12:13:48,900 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:13:48,900 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-23 12:13:48,902 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 74 transitions. [2018-11-23 12:13:48,902 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-23 12:13:48,903 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 74 transitions. [2018-11-23 12:13:48,903 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 74 transitions. [2018-11-23 12:13:49,011 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 74 edges. 74 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:13:49,013 INFO L225 Difference]: With dead ends: 100 [2018-11-23 12:13:49,013 INFO L226 Difference]: Without dead ends: 59 [2018-11-23 12:13:49,014 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 100 GetRequests, 96 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=15, Invalid=15, Unknown=0, NotChecked=0, Total=30 [2018-11-23 12:13:49,014 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 59 states. [2018-11-23 12:13:49,041 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 59 to 58. [2018-11-23 12:13:49,041 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:13:49,041 INFO L82 GeneralOperation]: Start isEquivalent. First operand 59 states. Second operand 58 states. [2018-11-23 12:13:49,042 INFO L74 IsIncluded]: Start isIncluded. First operand 59 states. Second operand 58 states. [2018-11-23 12:13:49,042 INFO L87 Difference]: Start difference. First operand 59 states. Second operand 58 states. [2018-11-23 12:13:49,044 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:49,044 INFO L93 Difference]: Finished difference Result 59 states and 67 transitions. [2018-11-23 12:13:49,044 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 67 transitions. [2018-11-23 12:13:49,044 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:13:49,044 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:13:49,044 INFO L74 IsIncluded]: Start isIncluded. First operand 58 states. Second operand 59 states. [2018-11-23 12:13:49,045 INFO L87 Difference]: Start difference. First operand 58 states. Second operand 59 states. [2018-11-23 12:13:49,046 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:49,046 INFO L93 Difference]: Finished difference Result 59 states and 67 transitions. [2018-11-23 12:13:49,046 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 67 transitions. [2018-11-23 12:13:49,047 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:13:49,047 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:13:49,047 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:13:49,047 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:13:49,047 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 58 states. [2018-11-23 12:13:49,048 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 58 states to 58 states and 66 transitions. [2018-11-23 12:13:49,049 INFO L78 Accepts]: Start accepts. Automaton has 58 states and 66 transitions. Word has length 101 [2018-11-23 12:13:49,049 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:13:49,049 INFO L480 AbstractCegarLoop]: Abstraction has 58 states and 66 transitions. [2018-11-23 12:13:49,049 INFO L481 AbstractCegarLoop]: Interpolant automaton has 6 states. [2018-11-23 12:13:49,049 INFO L276 IsEmpty]: Start isEmpty. Operand 58 states and 66 transitions. [2018-11-23 12:13:49,050 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 104 [2018-11-23 12:13:49,050 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:13:49,050 INFO L402 BasicCegarLoop]: trace histogram [18, 18, 9, 9, 4, 4, 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, 1] [2018-11-23 12:13:49,051 INFO L423 AbstractCegarLoop]: === Iteration 13 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:13:49,051 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:13:49,051 INFO L82 PathProgramCache]: Analyzing trace with hash -1508067766, now seen corresponding path program 8 times [2018-11-23 12:13:49,051 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:13:49,051 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:13:49,052 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:13:49,052 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:13:49,052 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:13:49,065 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:13:49,065 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:13:49,066 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 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 14 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:13:49,082 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-23 12:13:49,128 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-23 12:13:49,128 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:13:49,159 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:13:49,160 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:13:49,294 INFO L256 TraceCheckUtils]: 0: Hoare triple {5347#true} call ULTIMATE.init(); {5347#true} is VALID [2018-11-23 12:13:49,294 INFO L273 TraceCheckUtils]: 1: Hoare triple {5347#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {5347#true} is VALID [2018-11-23 12:13:49,295 INFO L273 TraceCheckUtils]: 2: Hoare triple {5347#true} assume true; {5347#true} is VALID [2018-11-23 12:13:49,295 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {5347#true} {5347#true} #78#return; {5347#true} is VALID [2018-11-23 12:13:49,295 INFO L256 TraceCheckUtils]: 4: Hoare triple {5347#true} call #t~ret12 := main(); {5347#true} is VALID [2018-11-23 12:13:49,295 INFO L273 TraceCheckUtils]: 5: Hoare triple {5347#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {5347#true} is VALID [2018-11-23 12:13:49,295 INFO L256 TraceCheckUtils]: 6: Hoare triple {5347#true} call init_nondet(~#x~0.base, ~#x~0.offset); {5347#true} is VALID [2018-11-23 12:13:49,296 INFO L273 TraceCheckUtils]: 7: Hoare triple {5347#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {5373#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:13:49,297 INFO L273 TraceCheckUtils]: 8: Hoare triple {5373#(<= init_nondet_~i~0 0)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {5373#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:13:49,297 INFO L273 TraceCheckUtils]: 9: Hoare triple {5373#(<= init_nondet_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {5380#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:13:49,297 INFO L273 TraceCheckUtils]: 10: Hoare triple {5380#(<= init_nondet_~i~0 1)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {5380#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:13:49,298 INFO L273 TraceCheckUtils]: 11: Hoare triple {5380#(<= init_nondet_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {5387#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:13:49,298 INFO L273 TraceCheckUtils]: 12: Hoare triple {5387#(<= init_nondet_~i~0 2)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {5387#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:13:49,299 INFO L273 TraceCheckUtils]: 13: Hoare triple {5387#(<= init_nondet_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {5394#(<= init_nondet_~i~0 3)} is VALID [2018-11-23 12:13:49,299 INFO L273 TraceCheckUtils]: 14: Hoare triple {5394#(<= init_nondet_~i~0 3)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {5394#(<= init_nondet_~i~0 3)} is VALID [2018-11-23 12:13:49,300 INFO L273 TraceCheckUtils]: 15: Hoare triple {5394#(<= init_nondet_~i~0 3)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {5401#(<= init_nondet_~i~0 4)} is VALID [2018-11-23 12:13:49,301 INFO L273 TraceCheckUtils]: 16: Hoare triple {5401#(<= init_nondet_~i~0 4)} assume !(~i~0 < 40); {5348#false} is VALID [2018-11-23 12:13:49,301 INFO L273 TraceCheckUtils]: 17: Hoare triple {5348#false} assume true; {5348#false} is VALID [2018-11-23 12:13:49,301 INFO L268 TraceCheckUtils]: 18: Hoare quadruple {5348#false} {5347#true} #82#return; {5348#false} is VALID [2018-11-23 12:13:49,301 INFO L273 TraceCheckUtils]: 19: Hoare triple {5348#false} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {5348#false} is VALID [2018-11-23 12:13:49,301 INFO L256 TraceCheckUtils]: 20: Hoare triple {5348#false} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {5348#false} is VALID [2018-11-23 12:13:49,302 INFO L273 TraceCheckUtils]: 21: Hoare triple {5348#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {5348#false} is VALID [2018-11-23 12:13:49,302 INFO L273 TraceCheckUtils]: 22: Hoare triple {5348#false} assume !!(~i~1 < 40); {5348#false} is VALID [2018-11-23 12:13:49,302 INFO L273 TraceCheckUtils]: 23: Hoare triple {5348#false} assume !(~i~1 > 20); {5348#false} is VALID [2018-11-23 12:13:49,302 INFO L273 TraceCheckUtils]: 24: Hoare triple {5348#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {5348#false} is VALID [2018-11-23 12:13:49,302 INFO L273 TraceCheckUtils]: 25: Hoare triple {5348#false} assume !!(~i~1 < 40); {5348#false} is VALID [2018-11-23 12:13:49,303 INFO L273 TraceCheckUtils]: 26: Hoare triple {5348#false} assume !(~i~1 > 20); {5348#false} is VALID [2018-11-23 12:13:49,303 INFO L273 TraceCheckUtils]: 27: Hoare triple {5348#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {5348#false} is VALID [2018-11-23 12:13:49,303 INFO L273 TraceCheckUtils]: 28: Hoare triple {5348#false} assume !!(~i~1 < 40); {5348#false} is VALID [2018-11-23 12:13:49,303 INFO L273 TraceCheckUtils]: 29: Hoare triple {5348#false} assume !(~i~1 > 20); {5348#false} is VALID [2018-11-23 12:13:49,303 INFO L273 TraceCheckUtils]: 30: Hoare triple {5348#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {5348#false} is VALID [2018-11-23 12:13:49,304 INFO L273 TraceCheckUtils]: 31: Hoare triple {5348#false} assume !!(~i~1 < 40); {5348#false} is VALID [2018-11-23 12:13:49,304 INFO L273 TraceCheckUtils]: 32: Hoare triple {5348#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {5348#false} is VALID [2018-11-23 12:13:49,304 INFO L273 TraceCheckUtils]: 33: Hoare triple {5348#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {5348#false} is VALID [2018-11-23 12:13:49,304 INFO L273 TraceCheckUtils]: 34: Hoare triple {5348#false} assume !!(~i~1 < 40); {5348#false} is VALID [2018-11-23 12:13:49,304 INFO L273 TraceCheckUtils]: 35: Hoare triple {5348#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {5348#false} is VALID [2018-11-23 12:13:49,305 INFO L273 TraceCheckUtils]: 36: Hoare triple {5348#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {5348#false} is VALID [2018-11-23 12:13:49,305 INFO L273 TraceCheckUtils]: 37: Hoare triple {5348#false} assume !!(~i~1 < 40); {5348#false} is VALID [2018-11-23 12:13:49,305 INFO L273 TraceCheckUtils]: 38: Hoare triple {5348#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {5348#false} is VALID [2018-11-23 12:13:49,305 INFO L273 TraceCheckUtils]: 39: Hoare triple {5348#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {5348#false} is VALID [2018-11-23 12:13:49,305 INFO L273 TraceCheckUtils]: 40: Hoare triple {5348#false} assume !(~i~1 < 40); {5348#false} is VALID [2018-11-23 12:13:49,306 INFO L273 TraceCheckUtils]: 41: Hoare triple {5348#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {5348#false} is VALID [2018-11-23 12:13:49,306 INFO L273 TraceCheckUtils]: 42: Hoare triple {5348#false} assume true; {5348#false} is VALID [2018-11-23 12:13:49,306 INFO L268 TraceCheckUtils]: 43: Hoare quadruple {5348#false} {5348#false} #84#return; {5348#false} is VALID [2018-11-23 12:13:49,306 INFO L273 TraceCheckUtils]: 44: Hoare triple {5348#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {5348#false} is VALID [2018-11-23 12:13:49,306 INFO L256 TraceCheckUtils]: 45: Hoare triple {5348#false} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {5348#false} is VALID [2018-11-23 12:13:49,306 INFO L273 TraceCheckUtils]: 46: Hoare triple {5348#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {5348#false} is VALID [2018-11-23 12:13:49,306 INFO L273 TraceCheckUtils]: 47: Hoare triple {5348#false} assume !!(~i~1 < 40); {5348#false} is VALID [2018-11-23 12:13:49,306 INFO L273 TraceCheckUtils]: 48: Hoare triple {5348#false} assume !(~i~1 > 20); {5348#false} is VALID [2018-11-23 12:13:49,307 INFO L273 TraceCheckUtils]: 49: Hoare triple {5348#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {5348#false} is VALID [2018-11-23 12:13:49,307 INFO L273 TraceCheckUtils]: 50: Hoare triple {5348#false} assume !!(~i~1 < 40); {5348#false} is VALID [2018-11-23 12:13:49,307 INFO L273 TraceCheckUtils]: 51: Hoare triple {5348#false} assume !(~i~1 > 20); {5348#false} is VALID [2018-11-23 12:13:49,307 INFO L273 TraceCheckUtils]: 52: Hoare triple {5348#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {5348#false} is VALID [2018-11-23 12:13:49,307 INFO L273 TraceCheckUtils]: 53: Hoare triple {5348#false} assume !!(~i~1 < 40); {5348#false} is VALID [2018-11-23 12:13:49,307 INFO L273 TraceCheckUtils]: 54: Hoare triple {5348#false} assume !(~i~1 > 20); {5348#false} is VALID [2018-11-23 12:13:49,307 INFO L273 TraceCheckUtils]: 55: Hoare triple {5348#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {5348#false} is VALID [2018-11-23 12:13:49,307 INFO L273 TraceCheckUtils]: 56: Hoare triple {5348#false} assume !!(~i~1 < 40); {5348#false} is VALID [2018-11-23 12:13:49,308 INFO L273 TraceCheckUtils]: 57: Hoare triple {5348#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {5348#false} is VALID [2018-11-23 12:13:49,308 INFO L273 TraceCheckUtils]: 58: Hoare triple {5348#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {5348#false} is VALID [2018-11-23 12:13:49,308 INFO L273 TraceCheckUtils]: 59: Hoare triple {5348#false} assume !!(~i~1 < 40); {5348#false} is VALID [2018-11-23 12:13:49,308 INFO L273 TraceCheckUtils]: 60: Hoare triple {5348#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {5348#false} is VALID [2018-11-23 12:13:49,308 INFO L273 TraceCheckUtils]: 61: Hoare triple {5348#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {5348#false} is VALID [2018-11-23 12:13:49,308 INFO L273 TraceCheckUtils]: 62: Hoare triple {5348#false} assume !!(~i~1 < 40); {5348#false} is VALID [2018-11-23 12:13:49,308 INFO L273 TraceCheckUtils]: 63: Hoare triple {5348#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {5348#false} is VALID [2018-11-23 12:13:49,308 INFO L273 TraceCheckUtils]: 64: Hoare triple {5348#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {5348#false} is VALID [2018-11-23 12:13:49,309 INFO L273 TraceCheckUtils]: 65: Hoare triple {5348#false} assume !(~i~1 < 40); {5348#false} is VALID [2018-11-23 12:13:49,309 INFO L273 TraceCheckUtils]: 66: Hoare triple {5348#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {5348#false} is VALID [2018-11-23 12:13:49,309 INFO L273 TraceCheckUtils]: 67: Hoare triple {5348#false} assume true; {5348#false} is VALID [2018-11-23 12:13:49,309 INFO L268 TraceCheckUtils]: 68: Hoare quadruple {5348#false} {5348#false} #86#return; {5348#false} is VALID [2018-11-23 12:13:49,309 INFO L273 TraceCheckUtils]: 69: Hoare triple {5348#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {5348#false} is VALID [2018-11-23 12:13:49,309 INFO L273 TraceCheckUtils]: 70: Hoare triple {5348#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {5348#false} is VALID [2018-11-23 12:13:49,309 INFO L273 TraceCheckUtils]: 71: Hoare triple {5348#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {5348#false} is VALID [2018-11-23 12:13:49,309 INFO L273 TraceCheckUtils]: 72: Hoare triple {5348#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {5348#false} is VALID [2018-11-23 12:13:49,310 INFO L273 TraceCheckUtils]: 73: Hoare triple {5348#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {5348#false} is VALID [2018-11-23 12:13:49,310 INFO L273 TraceCheckUtils]: 74: Hoare triple {5348#false} assume !(~i~2 < 39); {5348#false} is VALID [2018-11-23 12:13:49,310 INFO L273 TraceCheckUtils]: 75: Hoare triple {5348#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {5348#false} is VALID [2018-11-23 12:13:49,310 INFO L256 TraceCheckUtils]: 76: Hoare triple {5348#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {5348#false} is VALID [2018-11-23 12:13:49,310 INFO L273 TraceCheckUtils]: 77: Hoare triple {5348#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {5348#false} is VALID [2018-11-23 12:13:49,310 INFO L273 TraceCheckUtils]: 78: Hoare triple {5348#false} assume !!(~i~1 < 40); {5348#false} is VALID [2018-11-23 12:13:49,310 INFO L273 TraceCheckUtils]: 79: Hoare triple {5348#false} assume !(~i~1 > 20); {5348#false} is VALID [2018-11-23 12:13:49,310 INFO L273 TraceCheckUtils]: 80: Hoare triple {5348#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {5348#false} is VALID [2018-11-23 12:13:49,311 INFO L273 TraceCheckUtils]: 81: Hoare triple {5348#false} assume !!(~i~1 < 40); {5348#false} is VALID [2018-11-23 12:13:49,311 INFO L273 TraceCheckUtils]: 82: Hoare triple {5348#false} assume !(~i~1 > 20); {5348#false} is VALID [2018-11-23 12:13:49,311 INFO L273 TraceCheckUtils]: 83: Hoare triple {5348#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {5348#false} is VALID [2018-11-23 12:13:49,311 INFO L273 TraceCheckUtils]: 84: Hoare triple {5348#false} assume !!(~i~1 < 40); {5348#false} is VALID [2018-11-23 12:13:49,311 INFO L273 TraceCheckUtils]: 85: Hoare triple {5348#false} assume !(~i~1 > 20); {5348#false} is VALID [2018-11-23 12:13:49,311 INFO L273 TraceCheckUtils]: 86: Hoare triple {5348#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {5348#false} is VALID [2018-11-23 12:13:49,311 INFO L273 TraceCheckUtils]: 87: Hoare triple {5348#false} assume !!(~i~1 < 40); {5348#false} is VALID [2018-11-23 12:13:49,311 INFO L273 TraceCheckUtils]: 88: Hoare triple {5348#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {5348#false} is VALID [2018-11-23 12:13:49,311 INFO L273 TraceCheckUtils]: 89: Hoare triple {5348#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {5348#false} is VALID [2018-11-23 12:13:49,312 INFO L273 TraceCheckUtils]: 90: Hoare triple {5348#false} assume !!(~i~1 < 40); {5348#false} is VALID [2018-11-23 12:13:49,312 INFO L273 TraceCheckUtils]: 91: Hoare triple {5348#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {5348#false} is VALID [2018-11-23 12:13:49,312 INFO L273 TraceCheckUtils]: 92: Hoare triple {5348#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {5348#false} is VALID [2018-11-23 12:13:49,312 INFO L273 TraceCheckUtils]: 93: Hoare triple {5348#false} assume !!(~i~1 < 40); {5348#false} is VALID [2018-11-23 12:13:49,312 INFO L273 TraceCheckUtils]: 94: Hoare triple {5348#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {5348#false} is VALID [2018-11-23 12:13:49,312 INFO L273 TraceCheckUtils]: 95: Hoare triple {5348#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {5348#false} is VALID [2018-11-23 12:13:49,312 INFO L273 TraceCheckUtils]: 96: Hoare triple {5348#false} assume !(~i~1 < 40); {5348#false} is VALID [2018-11-23 12:13:49,312 INFO L273 TraceCheckUtils]: 97: Hoare triple {5348#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {5348#false} is VALID [2018-11-23 12:13:49,313 INFO L273 TraceCheckUtils]: 98: Hoare triple {5348#false} assume true; {5348#false} is VALID [2018-11-23 12:13:49,313 INFO L268 TraceCheckUtils]: 99: Hoare quadruple {5348#false} {5348#false} #88#return; {5348#false} is VALID [2018-11-23 12:13:49,313 INFO L273 TraceCheckUtils]: 100: Hoare triple {5348#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {5348#false} is VALID [2018-11-23 12:13:49,313 INFO L273 TraceCheckUtils]: 101: Hoare triple {5348#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {5348#false} is VALID [2018-11-23 12:13:49,313 INFO L273 TraceCheckUtils]: 102: Hoare triple {5348#false} assume !false; {5348#false} is VALID [2018-11-23 12:13:49,319 INFO L134 CoverageAnalysis]: Checked inductivity of 548 backedges. 0 proven. 16 refuted. 0 times theorem prover too weak. 532 trivial. 0 not checked. [2018-11-23 12:13:49,339 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:13:49,339 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [7] total 7 [2018-11-23 12:13:49,340 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 103 [2018-11-23 12:13:49,340 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:13:49,340 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states. [2018-11-23 12:13:49,381 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:13:49,381 INFO L459 AbstractCegarLoop]: Interpolant automaton has 7 states [2018-11-23 12:13:49,382 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2018-11-23 12:13:49,382 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=21, Unknown=0, NotChecked=0, Total=42 [2018-11-23 12:13:49,382 INFO L87 Difference]: Start difference. First operand 58 states and 66 transitions. Second operand 7 states. [2018-11-23 12:13:49,571 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:49,571 INFO L93 Difference]: Finished difference Result 102 states and 118 transitions. [2018-11-23 12:13:49,572 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2018-11-23 12:13:49,572 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 103 [2018-11-23 12:13:49,572 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:13:49,572 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2018-11-23 12:13:49,574 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 76 transitions. [2018-11-23 12:13:49,574 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2018-11-23 12:13:49,575 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 76 transitions. [2018-11-23 12:13:49,575 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 76 transitions. [2018-11-23 12:13:50,196 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-23 12:13:50,199 INFO L225 Difference]: With dead ends: 102 [2018-11-23 12:13:50,199 INFO L226 Difference]: Without dead ends: 61 [2018-11-23 12:13:50,200 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 102 GetRequests, 97 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=21, Invalid=21, Unknown=0, NotChecked=0, Total=42 [2018-11-23 12:13:50,200 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 61 states. [2018-11-23 12:13:50,225 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 61 to 60. [2018-11-23 12:13:50,225 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:13:50,226 INFO L82 GeneralOperation]: Start isEquivalent. First operand 61 states. Second operand 60 states. [2018-11-23 12:13:50,226 INFO L74 IsIncluded]: Start isIncluded. First operand 61 states. Second operand 60 states. [2018-11-23 12:13:50,226 INFO L87 Difference]: Start difference. First operand 61 states. Second operand 60 states. [2018-11-23 12:13:50,229 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:50,229 INFO L93 Difference]: Finished difference Result 61 states and 69 transitions. [2018-11-23 12:13:50,229 INFO L276 IsEmpty]: Start isEmpty. Operand 61 states and 69 transitions. [2018-11-23 12:13:50,230 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:13:50,230 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:13:50,230 INFO L74 IsIncluded]: Start isIncluded. First operand 60 states. Second operand 61 states. [2018-11-23 12:13:50,230 INFO L87 Difference]: Start difference. First operand 60 states. Second operand 61 states. [2018-11-23 12:13:50,232 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:50,232 INFO L93 Difference]: Finished difference Result 61 states and 69 transitions. [2018-11-23 12:13:50,232 INFO L276 IsEmpty]: Start isEmpty. Operand 61 states and 69 transitions. [2018-11-23 12:13:50,233 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:13:50,233 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:13:50,233 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:13:50,234 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:13:50,234 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 60 states. [2018-11-23 12:13:50,235 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 60 states to 60 states and 68 transitions. [2018-11-23 12:13:50,236 INFO L78 Accepts]: Start accepts. Automaton has 60 states and 68 transitions. Word has length 103 [2018-11-23 12:13:50,236 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:13:50,236 INFO L480 AbstractCegarLoop]: Abstraction has 60 states and 68 transitions. [2018-11-23 12:13:50,236 INFO L481 AbstractCegarLoop]: Interpolant automaton has 7 states. [2018-11-23 12:13:50,236 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 68 transitions. [2018-11-23 12:13:50,237 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 106 [2018-11-23 12:13:50,238 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:13:50,238 INFO L402 BasicCegarLoop]: trace histogram [18, 18, 9, 9, 5, 5, 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, 1] [2018-11-23 12:13:50,238 INFO L423 AbstractCegarLoop]: === Iteration 14 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:13:50,238 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:13:50,239 INFO L82 PathProgramCache]: Analyzing trace with hash -726581688, now seen corresponding path program 9 times [2018-11-23 12:13:50,239 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:13:50,239 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:13:50,240 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:13:50,240 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:13:50,240 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:13:50,261 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:13:50,261 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:13:50,261 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 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 15 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:13:50,272 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-23 12:13:50,314 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 4 check-sat command(s) [2018-11-23 12:13:50,314 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:13:50,338 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:13:50,340 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:13:50,484 INFO L256 TraceCheckUtils]: 0: Hoare triple {6012#true} call ULTIMATE.init(); {6012#true} is VALID [2018-11-23 12:13:50,485 INFO L273 TraceCheckUtils]: 1: Hoare triple {6012#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {6012#true} is VALID [2018-11-23 12:13:50,485 INFO L273 TraceCheckUtils]: 2: Hoare triple {6012#true} assume true; {6012#true} is VALID [2018-11-23 12:13:50,485 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {6012#true} {6012#true} #78#return; {6012#true} is VALID [2018-11-23 12:13:50,485 INFO L256 TraceCheckUtils]: 4: Hoare triple {6012#true} call #t~ret12 := main(); {6012#true} is VALID [2018-11-23 12:13:50,486 INFO L273 TraceCheckUtils]: 5: Hoare triple {6012#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {6012#true} is VALID [2018-11-23 12:13:50,486 INFO L256 TraceCheckUtils]: 6: Hoare triple {6012#true} call init_nondet(~#x~0.base, ~#x~0.offset); {6012#true} is VALID [2018-11-23 12:13:50,486 INFO L273 TraceCheckUtils]: 7: Hoare triple {6012#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {6012#true} is VALID [2018-11-23 12:13:50,486 INFO L273 TraceCheckUtils]: 8: Hoare triple {6012#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {6012#true} is VALID [2018-11-23 12:13:50,487 INFO L273 TraceCheckUtils]: 9: Hoare triple {6012#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {6012#true} is VALID [2018-11-23 12:13:50,487 INFO L273 TraceCheckUtils]: 10: Hoare triple {6012#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {6012#true} is VALID [2018-11-23 12:13:50,487 INFO L273 TraceCheckUtils]: 11: Hoare triple {6012#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {6012#true} is VALID [2018-11-23 12:13:50,487 INFO L273 TraceCheckUtils]: 12: Hoare triple {6012#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {6012#true} is VALID [2018-11-23 12:13:50,487 INFO L273 TraceCheckUtils]: 13: Hoare triple {6012#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {6012#true} is VALID [2018-11-23 12:13:50,488 INFO L273 TraceCheckUtils]: 14: Hoare triple {6012#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {6012#true} is VALID [2018-11-23 12:13:50,488 INFO L273 TraceCheckUtils]: 15: Hoare triple {6012#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {6012#true} is VALID [2018-11-23 12:13:50,488 INFO L273 TraceCheckUtils]: 16: Hoare triple {6012#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {6012#true} is VALID [2018-11-23 12:13:50,488 INFO L273 TraceCheckUtils]: 17: Hoare triple {6012#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {6012#true} is VALID [2018-11-23 12:13:50,488 INFO L273 TraceCheckUtils]: 18: Hoare triple {6012#true} assume !(~i~0 < 40); {6012#true} is VALID [2018-11-23 12:13:50,488 INFO L273 TraceCheckUtils]: 19: Hoare triple {6012#true} assume true; {6012#true} is VALID [2018-11-23 12:13:50,489 INFO L268 TraceCheckUtils]: 20: Hoare quadruple {6012#true} {6012#true} #82#return; {6012#true} is VALID [2018-11-23 12:13:50,489 INFO L273 TraceCheckUtils]: 21: Hoare triple {6012#true} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {6012#true} is VALID [2018-11-23 12:13:50,489 INFO L256 TraceCheckUtils]: 22: Hoare triple {6012#true} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {6012#true} is VALID [2018-11-23 12:13:50,489 INFO L273 TraceCheckUtils]: 23: Hoare triple {6012#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {6012#true} is VALID [2018-11-23 12:13:50,489 INFO L273 TraceCheckUtils]: 24: Hoare triple {6012#true} assume !!(~i~1 < 40); {6012#true} is VALID [2018-11-23 12:13:50,489 INFO L273 TraceCheckUtils]: 25: Hoare triple {6012#true} assume !(~i~1 > 20); {6012#true} is VALID [2018-11-23 12:13:50,489 INFO L273 TraceCheckUtils]: 26: Hoare triple {6012#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {6012#true} is VALID [2018-11-23 12:13:50,490 INFO L273 TraceCheckUtils]: 27: Hoare triple {6012#true} assume !!(~i~1 < 40); {6012#true} is VALID [2018-11-23 12:13:50,490 INFO L273 TraceCheckUtils]: 28: Hoare triple {6012#true} assume !(~i~1 > 20); {6012#true} is VALID [2018-11-23 12:13:50,490 INFO L273 TraceCheckUtils]: 29: Hoare triple {6012#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {6012#true} is VALID [2018-11-23 12:13:50,490 INFO L273 TraceCheckUtils]: 30: Hoare triple {6012#true} assume !!(~i~1 < 40); {6012#true} is VALID [2018-11-23 12:13:50,490 INFO L273 TraceCheckUtils]: 31: Hoare triple {6012#true} assume !(~i~1 > 20); {6012#true} is VALID [2018-11-23 12:13:50,490 INFO L273 TraceCheckUtils]: 32: Hoare triple {6012#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {6012#true} is VALID [2018-11-23 12:13:50,491 INFO L273 TraceCheckUtils]: 33: Hoare triple {6012#true} assume !!(~i~1 < 40); {6012#true} is VALID [2018-11-23 12:13:50,491 INFO L273 TraceCheckUtils]: 34: Hoare triple {6012#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {6012#true} is VALID [2018-11-23 12:13:50,491 INFO L273 TraceCheckUtils]: 35: Hoare triple {6012#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {6012#true} is VALID [2018-11-23 12:13:50,491 INFO L273 TraceCheckUtils]: 36: Hoare triple {6012#true} assume !!(~i~1 < 40); {6012#true} is VALID [2018-11-23 12:13:50,491 INFO L273 TraceCheckUtils]: 37: Hoare triple {6012#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {6012#true} is VALID [2018-11-23 12:13:50,491 INFO L273 TraceCheckUtils]: 38: Hoare triple {6012#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {6012#true} is VALID [2018-11-23 12:13:50,492 INFO L273 TraceCheckUtils]: 39: Hoare triple {6012#true} assume !!(~i~1 < 40); {6012#true} is VALID [2018-11-23 12:13:50,492 INFO L273 TraceCheckUtils]: 40: Hoare triple {6012#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {6012#true} is VALID [2018-11-23 12:13:50,492 INFO L273 TraceCheckUtils]: 41: Hoare triple {6012#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {6012#true} is VALID [2018-11-23 12:13:50,492 INFO L273 TraceCheckUtils]: 42: Hoare triple {6012#true} assume !(~i~1 < 40); {6012#true} is VALID [2018-11-23 12:13:50,492 INFO L273 TraceCheckUtils]: 43: Hoare triple {6012#true} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {6012#true} is VALID [2018-11-23 12:13:50,492 INFO L273 TraceCheckUtils]: 44: Hoare triple {6012#true} assume true; {6012#true} is VALID [2018-11-23 12:13:50,493 INFO L268 TraceCheckUtils]: 45: Hoare quadruple {6012#true} {6012#true} #84#return; {6012#true} is VALID [2018-11-23 12:13:50,493 INFO L273 TraceCheckUtils]: 46: Hoare triple {6012#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {6012#true} is VALID [2018-11-23 12:13:50,493 INFO L256 TraceCheckUtils]: 47: Hoare triple {6012#true} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {6012#true} is VALID [2018-11-23 12:13:50,493 INFO L273 TraceCheckUtils]: 48: Hoare triple {6012#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {6012#true} is VALID [2018-11-23 12:13:50,493 INFO L273 TraceCheckUtils]: 49: Hoare triple {6012#true} assume !!(~i~1 < 40); {6012#true} is VALID [2018-11-23 12:13:50,493 INFO L273 TraceCheckUtils]: 50: Hoare triple {6012#true} assume !(~i~1 > 20); {6012#true} is VALID [2018-11-23 12:13:50,494 INFO L273 TraceCheckUtils]: 51: Hoare triple {6012#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {6012#true} is VALID [2018-11-23 12:13:50,494 INFO L273 TraceCheckUtils]: 52: Hoare triple {6012#true} assume !!(~i~1 < 40); {6012#true} is VALID [2018-11-23 12:13:50,494 INFO L273 TraceCheckUtils]: 53: Hoare triple {6012#true} assume !(~i~1 > 20); {6012#true} is VALID [2018-11-23 12:13:50,494 INFO L273 TraceCheckUtils]: 54: Hoare triple {6012#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {6012#true} is VALID [2018-11-23 12:13:50,494 INFO L273 TraceCheckUtils]: 55: Hoare triple {6012#true} assume !!(~i~1 < 40); {6012#true} is VALID [2018-11-23 12:13:50,494 INFO L273 TraceCheckUtils]: 56: Hoare triple {6012#true} assume !(~i~1 > 20); {6012#true} is VALID [2018-11-23 12:13:50,494 INFO L273 TraceCheckUtils]: 57: Hoare triple {6012#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {6012#true} is VALID [2018-11-23 12:13:50,495 INFO L273 TraceCheckUtils]: 58: Hoare triple {6012#true} assume !!(~i~1 < 40); {6012#true} is VALID [2018-11-23 12:13:50,495 INFO L273 TraceCheckUtils]: 59: Hoare triple {6012#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {6012#true} is VALID [2018-11-23 12:13:50,495 INFO L273 TraceCheckUtils]: 60: Hoare triple {6012#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {6012#true} is VALID [2018-11-23 12:13:50,495 INFO L273 TraceCheckUtils]: 61: Hoare triple {6012#true} assume !!(~i~1 < 40); {6012#true} is VALID [2018-11-23 12:13:50,495 INFO L273 TraceCheckUtils]: 62: Hoare triple {6012#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {6012#true} is VALID [2018-11-23 12:13:50,495 INFO L273 TraceCheckUtils]: 63: Hoare triple {6012#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {6012#true} is VALID [2018-11-23 12:13:50,496 INFO L273 TraceCheckUtils]: 64: Hoare triple {6012#true} assume !!(~i~1 < 40); {6012#true} is VALID [2018-11-23 12:13:50,496 INFO L273 TraceCheckUtils]: 65: Hoare triple {6012#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {6012#true} is VALID [2018-11-23 12:13:50,496 INFO L273 TraceCheckUtils]: 66: Hoare triple {6012#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {6012#true} is VALID [2018-11-23 12:13:50,496 INFO L273 TraceCheckUtils]: 67: Hoare triple {6012#true} assume !(~i~1 < 40); {6012#true} is VALID [2018-11-23 12:13:50,496 INFO L273 TraceCheckUtils]: 68: Hoare triple {6012#true} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {6012#true} is VALID [2018-11-23 12:13:50,496 INFO L273 TraceCheckUtils]: 69: Hoare triple {6012#true} assume true; {6012#true} is VALID [2018-11-23 12:13:50,496 INFO L268 TraceCheckUtils]: 70: Hoare quadruple {6012#true} {6012#true} #86#return; {6012#true} is VALID [2018-11-23 12:13:50,497 INFO L273 TraceCheckUtils]: 71: Hoare triple {6012#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {6230#(<= main_~i~2 0)} is VALID [2018-11-23 12:13:50,498 INFO L273 TraceCheckUtils]: 72: Hoare triple {6230#(<= main_~i~2 0)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {6230#(<= main_~i~2 0)} is VALID [2018-11-23 12:13:50,498 INFO L273 TraceCheckUtils]: 73: Hoare triple {6230#(<= main_~i~2 0)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {6237#(<= main_~i~2 1)} is VALID [2018-11-23 12:13:50,498 INFO L273 TraceCheckUtils]: 74: Hoare triple {6237#(<= main_~i~2 1)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {6237#(<= main_~i~2 1)} is VALID [2018-11-23 12:13:50,499 INFO L273 TraceCheckUtils]: 75: Hoare triple {6237#(<= main_~i~2 1)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {6244#(<= main_~i~2 2)} is VALID [2018-11-23 12:13:50,499 INFO L273 TraceCheckUtils]: 76: Hoare triple {6244#(<= main_~i~2 2)} assume !(~i~2 < 39); {6013#false} is VALID [2018-11-23 12:13:50,500 INFO L273 TraceCheckUtils]: 77: Hoare triple {6013#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {6013#false} is VALID [2018-11-23 12:13:50,500 INFO L256 TraceCheckUtils]: 78: Hoare triple {6013#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {6013#false} is VALID [2018-11-23 12:13:50,500 INFO L273 TraceCheckUtils]: 79: Hoare triple {6013#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {6013#false} is VALID [2018-11-23 12:13:50,500 INFO L273 TraceCheckUtils]: 80: Hoare triple {6013#false} assume !!(~i~1 < 40); {6013#false} is VALID [2018-11-23 12:13:50,500 INFO L273 TraceCheckUtils]: 81: Hoare triple {6013#false} assume !(~i~1 > 20); {6013#false} is VALID [2018-11-23 12:13:50,500 INFO L273 TraceCheckUtils]: 82: Hoare triple {6013#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {6013#false} is VALID [2018-11-23 12:13:50,501 INFO L273 TraceCheckUtils]: 83: Hoare triple {6013#false} assume !!(~i~1 < 40); {6013#false} is VALID [2018-11-23 12:13:50,501 INFO L273 TraceCheckUtils]: 84: Hoare triple {6013#false} assume !(~i~1 > 20); {6013#false} is VALID [2018-11-23 12:13:50,501 INFO L273 TraceCheckUtils]: 85: Hoare triple {6013#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {6013#false} is VALID [2018-11-23 12:13:50,501 INFO L273 TraceCheckUtils]: 86: Hoare triple {6013#false} assume !!(~i~1 < 40); {6013#false} is VALID [2018-11-23 12:13:50,501 INFO L273 TraceCheckUtils]: 87: Hoare triple {6013#false} assume !(~i~1 > 20); {6013#false} is VALID [2018-11-23 12:13:50,501 INFO L273 TraceCheckUtils]: 88: Hoare triple {6013#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {6013#false} is VALID [2018-11-23 12:13:50,502 INFO L273 TraceCheckUtils]: 89: Hoare triple {6013#false} assume !!(~i~1 < 40); {6013#false} is VALID [2018-11-23 12:13:50,502 INFO L273 TraceCheckUtils]: 90: Hoare triple {6013#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {6013#false} is VALID [2018-11-23 12:13:50,502 INFO L273 TraceCheckUtils]: 91: Hoare triple {6013#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {6013#false} is VALID [2018-11-23 12:13:50,502 INFO L273 TraceCheckUtils]: 92: Hoare triple {6013#false} assume !!(~i~1 < 40); {6013#false} is VALID [2018-11-23 12:13:50,502 INFO L273 TraceCheckUtils]: 93: Hoare triple {6013#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {6013#false} is VALID [2018-11-23 12:13:50,502 INFO L273 TraceCheckUtils]: 94: Hoare triple {6013#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {6013#false} is VALID [2018-11-23 12:13:50,502 INFO L273 TraceCheckUtils]: 95: Hoare triple {6013#false} assume !!(~i~1 < 40); {6013#false} is VALID [2018-11-23 12:13:50,503 INFO L273 TraceCheckUtils]: 96: Hoare triple {6013#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {6013#false} is VALID [2018-11-23 12:13:50,503 INFO L273 TraceCheckUtils]: 97: Hoare triple {6013#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {6013#false} is VALID [2018-11-23 12:13:50,503 INFO L273 TraceCheckUtils]: 98: Hoare triple {6013#false} assume !(~i~1 < 40); {6013#false} is VALID [2018-11-23 12:13:50,503 INFO L273 TraceCheckUtils]: 99: Hoare triple {6013#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {6013#false} is VALID [2018-11-23 12:13:50,503 INFO L273 TraceCheckUtils]: 100: Hoare triple {6013#false} assume true; {6013#false} is VALID [2018-11-23 12:13:50,503 INFO L268 TraceCheckUtils]: 101: Hoare quadruple {6013#false} {6013#false} #88#return; {6013#false} is VALID [2018-11-23 12:13:50,504 INFO L273 TraceCheckUtils]: 102: Hoare triple {6013#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {6013#false} is VALID [2018-11-23 12:13:50,504 INFO L273 TraceCheckUtils]: 103: Hoare triple {6013#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {6013#false} is VALID [2018-11-23 12:13:50,504 INFO L273 TraceCheckUtils]: 104: Hoare triple {6013#false} assume !false; {6013#false} is VALID [2018-11-23 12:13:50,515 INFO L134 CoverageAnalysis]: Checked inductivity of 557 backedges. 250 proven. 4 refuted. 0 times theorem prover too weak. 303 trivial. 0 not checked. [2018-11-23 12:13:50,535 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:13:50,536 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [5] total 5 [2018-11-23 12:13:50,536 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 105 [2018-11-23 12:13:50,537 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:13:50,537 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states. [2018-11-23 12:13:50,604 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:13:50,605 INFO L459 AbstractCegarLoop]: Interpolant automaton has 5 states [2018-11-23 12:13:50,605 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2018-11-23 12:13:50,605 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=10, Unknown=0, NotChecked=0, Total=20 [2018-11-23 12:13:50,606 INFO L87 Difference]: Start difference. First operand 60 states and 68 transitions. Second operand 5 states. [2018-11-23 12:13:50,749 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:50,749 INFO L93 Difference]: Finished difference Result 92 states and 105 transitions. [2018-11-23 12:13:50,750 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2018-11-23 12:13:50,750 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 105 [2018-11-23 12:13:50,750 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:13:50,750 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2018-11-23 12:13:50,751 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 60 transitions. [2018-11-23 12:13:50,752 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2018-11-23 12:13:50,753 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 60 transitions. [2018-11-23 12:13:50,753 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 60 transitions. [2018-11-23 12:13:50,814 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:13:50,816 INFO L225 Difference]: With dead ends: 92 [2018-11-23 12:13:50,816 INFO L226 Difference]: Without dead ends: 63 [2018-11-23 12:13:50,817 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 104 GetRequests, 101 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-23 12:13:50,817 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 63 states. [2018-11-23 12:13:50,842 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 63 to 62. [2018-11-23 12:13:50,842 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:13:50,842 INFO L82 GeneralOperation]: Start isEquivalent. First operand 63 states. Second operand 62 states. [2018-11-23 12:13:50,843 INFO L74 IsIncluded]: Start isIncluded. First operand 63 states. Second operand 62 states. [2018-11-23 12:13:50,843 INFO L87 Difference]: Start difference. First operand 63 states. Second operand 62 states. [2018-11-23 12:13:50,845 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:50,845 INFO L93 Difference]: Finished difference Result 63 states and 71 transitions. [2018-11-23 12:13:50,846 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 71 transitions. [2018-11-23 12:13:50,846 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:13:50,846 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:13:50,846 INFO L74 IsIncluded]: Start isIncluded. First operand 62 states. Second operand 63 states. [2018-11-23 12:13:50,847 INFO L87 Difference]: Start difference. First operand 62 states. Second operand 63 states. [2018-11-23 12:13:50,849 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:50,849 INFO L93 Difference]: Finished difference Result 63 states and 71 transitions. [2018-11-23 12:13:50,849 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 71 transitions. [2018-11-23 12:13:50,850 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:13:50,850 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:13:50,850 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:13:50,850 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:13:50,850 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 62 states. [2018-11-23 12:13:50,852 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 62 states to 62 states and 70 transitions. [2018-11-23 12:13:50,852 INFO L78 Accepts]: Start accepts. Automaton has 62 states and 70 transitions. Word has length 105 [2018-11-23 12:13:50,853 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:13:50,853 INFO L480 AbstractCegarLoop]: Abstraction has 62 states and 70 transitions. [2018-11-23 12:13:50,853 INFO L481 AbstractCegarLoop]: Interpolant automaton has 5 states. [2018-11-23 12:13:50,853 INFO L276 IsEmpty]: Start isEmpty. Operand 62 states and 70 transitions. [2018-11-23 12:13:50,868 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 108 [2018-11-23 12:13:50,868 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:13:50,869 INFO L402 BasicCegarLoop]: trace histogram [18, 18, 9, 9, 5, 5, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:13:50,869 INFO L423 AbstractCegarLoop]: === Iteration 15 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:13:50,869 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:13:50,869 INFO L82 PathProgramCache]: Analyzing trace with hash 1172217702, now seen corresponding path program 10 times [2018-11-23 12:13:50,869 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:13:50,870 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:13:50,870 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:13:50,870 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:13:50,870 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:13:50,893 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:13:50,893 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:13:50,895 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 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 16 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:13:50,908 INFO L103 rtionOrderModulation]: Keeping assertion order TERMS_WITH_SMALL_CONSTANTS_FIRST [2018-11-23 12:13:50,958 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2018-11-23 12:13:50,958 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:13:50,991 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:13:50,992 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:13:51,646 INFO L256 TraceCheckUtils]: 0: Hoare triple {6674#true} call ULTIMATE.init(); {6674#true} is VALID [2018-11-23 12:13:51,646 INFO L273 TraceCheckUtils]: 1: Hoare triple {6674#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {6674#true} is VALID [2018-11-23 12:13:51,647 INFO L273 TraceCheckUtils]: 2: Hoare triple {6674#true} assume true; {6674#true} is VALID [2018-11-23 12:13:51,647 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {6674#true} {6674#true} #78#return; {6674#true} is VALID [2018-11-23 12:13:51,647 INFO L256 TraceCheckUtils]: 4: Hoare triple {6674#true} call #t~ret12 := main(); {6674#true} is VALID [2018-11-23 12:13:51,647 INFO L273 TraceCheckUtils]: 5: Hoare triple {6674#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {6674#true} is VALID [2018-11-23 12:13:51,647 INFO L256 TraceCheckUtils]: 6: Hoare triple {6674#true} call init_nondet(~#x~0.base, ~#x~0.offset); {6674#true} is VALID [2018-11-23 12:13:51,648 INFO L273 TraceCheckUtils]: 7: Hoare triple {6674#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {6700#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:13:51,648 INFO L273 TraceCheckUtils]: 8: Hoare triple {6700#(<= init_nondet_~i~0 0)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {6700#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:13:51,649 INFO L273 TraceCheckUtils]: 9: Hoare triple {6700#(<= init_nondet_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {6707#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:13:51,649 INFO L273 TraceCheckUtils]: 10: Hoare triple {6707#(<= init_nondet_~i~0 1)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {6707#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:13:51,650 INFO L273 TraceCheckUtils]: 11: Hoare triple {6707#(<= init_nondet_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {6714#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:13:51,650 INFO L273 TraceCheckUtils]: 12: Hoare triple {6714#(<= init_nondet_~i~0 2)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {6714#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:13:51,651 INFO L273 TraceCheckUtils]: 13: Hoare triple {6714#(<= init_nondet_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {6721#(<= init_nondet_~i~0 3)} is VALID [2018-11-23 12:13:51,652 INFO L273 TraceCheckUtils]: 14: Hoare triple {6721#(<= init_nondet_~i~0 3)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {6721#(<= init_nondet_~i~0 3)} is VALID [2018-11-23 12:13:51,652 INFO L273 TraceCheckUtils]: 15: Hoare triple {6721#(<= init_nondet_~i~0 3)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {6728#(<= init_nondet_~i~0 4)} is VALID [2018-11-23 12:13:51,653 INFO L273 TraceCheckUtils]: 16: Hoare triple {6728#(<= init_nondet_~i~0 4)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {6728#(<= init_nondet_~i~0 4)} is VALID [2018-11-23 12:13:51,654 INFO L273 TraceCheckUtils]: 17: Hoare triple {6728#(<= init_nondet_~i~0 4)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {6735#(<= init_nondet_~i~0 5)} is VALID [2018-11-23 12:13:51,655 INFO L273 TraceCheckUtils]: 18: Hoare triple {6735#(<= init_nondet_~i~0 5)} assume !(~i~0 < 40); {6675#false} is VALID [2018-11-23 12:13:51,655 INFO L273 TraceCheckUtils]: 19: Hoare triple {6675#false} assume true; {6675#false} is VALID [2018-11-23 12:13:51,655 INFO L268 TraceCheckUtils]: 20: Hoare quadruple {6675#false} {6674#true} #82#return; {6675#false} is VALID [2018-11-23 12:13:51,655 INFO L273 TraceCheckUtils]: 21: Hoare triple {6675#false} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {6675#false} is VALID [2018-11-23 12:13:51,655 INFO L256 TraceCheckUtils]: 22: Hoare triple {6675#false} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {6675#false} is VALID [2018-11-23 12:13:51,656 INFO L273 TraceCheckUtils]: 23: Hoare triple {6675#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {6675#false} is VALID [2018-11-23 12:13:51,656 INFO L273 TraceCheckUtils]: 24: Hoare triple {6675#false} assume !!(~i~1 < 40); {6675#false} is VALID [2018-11-23 12:13:51,656 INFO L273 TraceCheckUtils]: 25: Hoare triple {6675#false} assume !(~i~1 > 20); {6675#false} is VALID [2018-11-23 12:13:51,656 INFO L273 TraceCheckUtils]: 26: Hoare triple {6675#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {6675#false} is VALID [2018-11-23 12:13:51,657 INFO L273 TraceCheckUtils]: 27: Hoare triple {6675#false} assume !!(~i~1 < 40); {6675#false} is VALID [2018-11-23 12:13:51,657 INFO L273 TraceCheckUtils]: 28: Hoare triple {6675#false} assume !(~i~1 > 20); {6675#false} is VALID [2018-11-23 12:13:51,657 INFO L273 TraceCheckUtils]: 29: Hoare triple {6675#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {6675#false} is VALID [2018-11-23 12:13:51,657 INFO L273 TraceCheckUtils]: 30: Hoare triple {6675#false} assume !!(~i~1 < 40); {6675#false} is VALID [2018-11-23 12:13:51,657 INFO L273 TraceCheckUtils]: 31: Hoare triple {6675#false} assume !(~i~1 > 20); {6675#false} is VALID [2018-11-23 12:13:51,657 INFO L273 TraceCheckUtils]: 32: Hoare triple {6675#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {6675#false} is VALID [2018-11-23 12:13:51,658 INFO L273 TraceCheckUtils]: 33: Hoare triple {6675#false} assume !!(~i~1 < 40); {6675#false} is VALID [2018-11-23 12:13:51,658 INFO L273 TraceCheckUtils]: 34: Hoare triple {6675#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {6675#false} is VALID [2018-11-23 12:13:51,658 INFO L273 TraceCheckUtils]: 35: Hoare triple {6675#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {6675#false} is VALID [2018-11-23 12:13:51,658 INFO L273 TraceCheckUtils]: 36: Hoare triple {6675#false} assume !!(~i~1 < 40); {6675#false} is VALID [2018-11-23 12:13:51,658 INFO L273 TraceCheckUtils]: 37: Hoare triple {6675#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {6675#false} is VALID [2018-11-23 12:13:51,658 INFO L273 TraceCheckUtils]: 38: Hoare triple {6675#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {6675#false} is VALID [2018-11-23 12:13:51,658 INFO L273 TraceCheckUtils]: 39: Hoare triple {6675#false} assume !!(~i~1 < 40); {6675#false} is VALID [2018-11-23 12:13:51,658 INFO L273 TraceCheckUtils]: 40: Hoare triple {6675#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {6675#false} is VALID [2018-11-23 12:13:51,659 INFO L273 TraceCheckUtils]: 41: Hoare triple {6675#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {6675#false} is VALID [2018-11-23 12:13:51,659 INFO L273 TraceCheckUtils]: 42: Hoare triple {6675#false} assume !(~i~1 < 40); {6675#false} is VALID [2018-11-23 12:13:51,659 INFO L273 TraceCheckUtils]: 43: Hoare triple {6675#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {6675#false} is VALID [2018-11-23 12:13:51,659 INFO L273 TraceCheckUtils]: 44: Hoare triple {6675#false} assume true; {6675#false} is VALID [2018-11-23 12:13:51,659 INFO L268 TraceCheckUtils]: 45: Hoare quadruple {6675#false} {6675#false} #84#return; {6675#false} is VALID [2018-11-23 12:13:51,659 INFO L273 TraceCheckUtils]: 46: Hoare triple {6675#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {6675#false} is VALID [2018-11-23 12:13:51,659 INFO L256 TraceCheckUtils]: 47: Hoare triple {6675#false} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {6675#false} is VALID [2018-11-23 12:13:51,659 INFO L273 TraceCheckUtils]: 48: Hoare triple {6675#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {6675#false} is VALID [2018-11-23 12:13:51,660 INFO L273 TraceCheckUtils]: 49: Hoare triple {6675#false} assume !!(~i~1 < 40); {6675#false} is VALID [2018-11-23 12:13:51,660 INFO L273 TraceCheckUtils]: 50: Hoare triple {6675#false} assume !(~i~1 > 20); {6675#false} is VALID [2018-11-23 12:13:51,660 INFO L273 TraceCheckUtils]: 51: Hoare triple {6675#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {6675#false} is VALID [2018-11-23 12:13:51,660 INFO L273 TraceCheckUtils]: 52: Hoare triple {6675#false} assume !!(~i~1 < 40); {6675#false} is VALID [2018-11-23 12:13:51,660 INFO L273 TraceCheckUtils]: 53: Hoare triple {6675#false} assume !(~i~1 > 20); {6675#false} is VALID [2018-11-23 12:13:51,660 INFO L273 TraceCheckUtils]: 54: Hoare triple {6675#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {6675#false} is VALID [2018-11-23 12:13:51,660 INFO L273 TraceCheckUtils]: 55: Hoare triple {6675#false} assume !!(~i~1 < 40); {6675#false} is VALID [2018-11-23 12:13:51,660 INFO L273 TraceCheckUtils]: 56: Hoare triple {6675#false} assume !(~i~1 > 20); {6675#false} is VALID [2018-11-23 12:13:51,661 INFO L273 TraceCheckUtils]: 57: Hoare triple {6675#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {6675#false} is VALID [2018-11-23 12:13:51,661 INFO L273 TraceCheckUtils]: 58: Hoare triple {6675#false} assume !!(~i~1 < 40); {6675#false} is VALID [2018-11-23 12:13:51,661 INFO L273 TraceCheckUtils]: 59: Hoare triple {6675#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {6675#false} is VALID [2018-11-23 12:13:51,661 INFO L273 TraceCheckUtils]: 60: Hoare triple {6675#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {6675#false} is VALID [2018-11-23 12:13:51,661 INFO L273 TraceCheckUtils]: 61: Hoare triple {6675#false} assume !!(~i~1 < 40); {6675#false} is VALID [2018-11-23 12:13:51,661 INFO L273 TraceCheckUtils]: 62: Hoare triple {6675#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {6675#false} is VALID [2018-11-23 12:13:51,661 INFO L273 TraceCheckUtils]: 63: Hoare triple {6675#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {6675#false} is VALID [2018-11-23 12:13:51,661 INFO L273 TraceCheckUtils]: 64: Hoare triple {6675#false} assume !!(~i~1 < 40); {6675#false} is VALID [2018-11-23 12:13:51,662 INFO L273 TraceCheckUtils]: 65: Hoare triple {6675#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {6675#false} is VALID [2018-11-23 12:13:51,662 INFO L273 TraceCheckUtils]: 66: Hoare triple {6675#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {6675#false} is VALID [2018-11-23 12:13:51,662 INFO L273 TraceCheckUtils]: 67: Hoare triple {6675#false} assume !(~i~1 < 40); {6675#false} is VALID [2018-11-23 12:13:51,662 INFO L273 TraceCheckUtils]: 68: Hoare triple {6675#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {6675#false} is VALID [2018-11-23 12:13:51,662 INFO L273 TraceCheckUtils]: 69: Hoare triple {6675#false} assume true; {6675#false} is VALID [2018-11-23 12:13:51,662 INFO L268 TraceCheckUtils]: 70: Hoare quadruple {6675#false} {6675#false} #86#return; {6675#false} is VALID [2018-11-23 12:13:51,662 INFO L273 TraceCheckUtils]: 71: Hoare triple {6675#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {6675#false} is VALID [2018-11-23 12:13:51,662 INFO L273 TraceCheckUtils]: 72: Hoare triple {6675#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {6675#false} is VALID [2018-11-23 12:13:51,663 INFO L273 TraceCheckUtils]: 73: Hoare triple {6675#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {6675#false} is VALID [2018-11-23 12:13:51,663 INFO L273 TraceCheckUtils]: 74: Hoare triple {6675#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {6675#false} is VALID [2018-11-23 12:13:51,663 INFO L273 TraceCheckUtils]: 75: Hoare triple {6675#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {6675#false} is VALID [2018-11-23 12:13:51,663 INFO L273 TraceCheckUtils]: 76: Hoare triple {6675#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {6675#false} is VALID [2018-11-23 12:13:51,663 INFO L273 TraceCheckUtils]: 77: Hoare triple {6675#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {6675#false} is VALID [2018-11-23 12:13:51,663 INFO L273 TraceCheckUtils]: 78: Hoare triple {6675#false} assume !(~i~2 < 39); {6675#false} is VALID [2018-11-23 12:13:51,663 INFO L273 TraceCheckUtils]: 79: Hoare triple {6675#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {6675#false} is VALID [2018-11-23 12:13:51,663 INFO L256 TraceCheckUtils]: 80: Hoare triple {6675#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {6675#false} is VALID [2018-11-23 12:13:51,664 INFO L273 TraceCheckUtils]: 81: Hoare triple {6675#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {6675#false} is VALID [2018-11-23 12:13:51,664 INFO L273 TraceCheckUtils]: 82: Hoare triple {6675#false} assume !!(~i~1 < 40); {6675#false} is VALID [2018-11-23 12:13:51,664 INFO L273 TraceCheckUtils]: 83: Hoare triple {6675#false} assume !(~i~1 > 20); {6675#false} is VALID [2018-11-23 12:13:51,664 INFO L273 TraceCheckUtils]: 84: Hoare triple {6675#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {6675#false} is VALID [2018-11-23 12:13:51,664 INFO L273 TraceCheckUtils]: 85: Hoare triple {6675#false} assume !!(~i~1 < 40); {6675#false} is VALID [2018-11-23 12:13:51,664 INFO L273 TraceCheckUtils]: 86: Hoare triple {6675#false} assume !(~i~1 > 20); {6675#false} is VALID [2018-11-23 12:13:51,664 INFO L273 TraceCheckUtils]: 87: Hoare triple {6675#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {6675#false} is VALID [2018-11-23 12:13:51,664 INFO L273 TraceCheckUtils]: 88: Hoare triple {6675#false} assume !!(~i~1 < 40); {6675#false} is VALID [2018-11-23 12:13:51,665 INFO L273 TraceCheckUtils]: 89: Hoare triple {6675#false} assume !(~i~1 > 20); {6675#false} is VALID [2018-11-23 12:13:51,665 INFO L273 TraceCheckUtils]: 90: Hoare triple {6675#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {6675#false} is VALID [2018-11-23 12:13:51,665 INFO L273 TraceCheckUtils]: 91: Hoare triple {6675#false} assume !!(~i~1 < 40); {6675#false} is VALID [2018-11-23 12:13:51,665 INFO L273 TraceCheckUtils]: 92: Hoare triple {6675#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {6675#false} is VALID [2018-11-23 12:13:51,665 INFO L273 TraceCheckUtils]: 93: Hoare triple {6675#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {6675#false} is VALID [2018-11-23 12:13:51,665 INFO L273 TraceCheckUtils]: 94: Hoare triple {6675#false} assume !!(~i~1 < 40); {6675#false} is VALID [2018-11-23 12:13:51,665 INFO L273 TraceCheckUtils]: 95: Hoare triple {6675#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {6675#false} is VALID [2018-11-23 12:13:51,665 INFO L273 TraceCheckUtils]: 96: Hoare triple {6675#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {6675#false} is VALID [2018-11-23 12:13:51,665 INFO L273 TraceCheckUtils]: 97: Hoare triple {6675#false} assume !!(~i~1 < 40); {6675#false} is VALID [2018-11-23 12:13:51,666 INFO L273 TraceCheckUtils]: 98: Hoare triple {6675#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {6675#false} is VALID [2018-11-23 12:13:51,666 INFO L273 TraceCheckUtils]: 99: Hoare triple {6675#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {6675#false} is VALID [2018-11-23 12:13:51,666 INFO L273 TraceCheckUtils]: 100: Hoare triple {6675#false} assume !(~i~1 < 40); {6675#false} is VALID [2018-11-23 12:13:51,666 INFO L273 TraceCheckUtils]: 101: Hoare triple {6675#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {6675#false} is VALID [2018-11-23 12:13:51,666 INFO L273 TraceCheckUtils]: 102: Hoare triple {6675#false} assume true; {6675#false} is VALID [2018-11-23 12:13:51,666 INFO L268 TraceCheckUtils]: 103: Hoare quadruple {6675#false} {6675#false} #88#return; {6675#false} is VALID [2018-11-23 12:13:51,666 INFO L273 TraceCheckUtils]: 104: Hoare triple {6675#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {6675#false} is VALID [2018-11-23 12:13:51,666 INFO L273 TraceCheckUtils]: 105: Hoare triple {6675#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {6675#false} is VALID [2018-11-23 12:13:51,667 INFO L273 TraceCheckUtils]: 106: Hoare triple {6675#false} assume !false; {6675#false} is VALID [2018-11-23 12:13:51,671 INFO L134 CoverageAnalysis]: Checked inductivity of 562 backedges. 0 proven. 25 refuted. 0 times theorem prover too weak. 537 trivial. 0 not checked. [2018-11-23 12:13:51,690 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:13:51,690 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [8] total 8 [2018-11-23 12:13:51,691 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 107 [2018-11-23 12:13:51,691 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:13:51,691 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states. [2018-11-23 12:13:51,734 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 45 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:13:51,735 INFO L459 AbstractCegarLoop]: Interpolant automaton has 8 states [2018-11-23 12:13:51,735 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2018-11-23 12:13:51,735 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=28, Invalid=28, Unknown=0, NotChecked=0, Total=56 [2018-11-23 12:13:51,736 INFO L87 Difference]: Start difference. First operand 62 states and 70 transitions. Second operand 8 states. [2018-11-23 12:13:52,425 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:52,425 INFO L93 Difference]: Finished difference Result 108 states and 124 transitions. [2018-11-23 12:13:52,425 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2018-11-23 12:13:52,425 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 107 [2018-11-23 12:13:52,425 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:13:52,426 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2018-11-23 12:13:52,427 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 78 transitions. [2018-11-23 12:13:52,427 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2018-11-23 12:13:52,428 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 78 transitions. [2018-11-23 12:13:52,428 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 78 transitions. [2018-11-23 12:13:52,914 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 78 edges. 78 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:13:52,915 INFO L225 Difference]: With dead ends: 108 [2018-11-23 12:13:52,917 INFO L226 Difference]: Without dead ends: 65 [2018-11-23 12:13:52,918 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 106 GetRequests, 100 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=28, Invalid=28, Unknown=0, NotChecked=0, Total=56 [2018-11-23 12:13:52,918 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 65 states. [2018-11-23 12:13:53,366 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 65 to 64. [2018-11-23 12:13:53,367 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:13:53,367 INFO L82 GeneralOperation]: Start isEquivalent. First operand 65 states. Second operand 64 states. [2018-11-23 12:13:53,367 INFO L74 IsIncluded]: Start isIncluded. First operand 65 states. Second operand 64 states. [2018-11-23 12:13:53,367 INFO L87 Difference]: Start difference. First operand 65 states. Second operand 64 states. [2018-11-23 12:13:53,369 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:53,369 INFO L93 Difference]: Finished difference Result 65 states and 73 transitions. [2018-11-23 12:13:53,369 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 73 transitions. [2018-11-23 12:13:53,370 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:13:53,370 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:13:53,370 INFO L74 IsIncluded]: Start isIncluded. First operand 64 states. Second operand 65 states. [2018-11-23 12:13:53,370 INFO L87 Difference]: Start difference. First operand 64 states. Second operand 65 states. [2018-11-23 12:13:53,372 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:53,372 INFO L93 Difference]: Finished difference Result 65 states and 73 transitions. [2018-11-23 12:13:53,372 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 73 transitions. [2018-11-23 12:13:53,373 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:13:53,373 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:13:53,373 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:13:53,373 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:13:53,373 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 64 states. [2018-11-23 12:13:53,375 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 64 states to 64 states and 72 transitions. [2018-11-23 12:13:53,375 INFO L78 Accepts]: Start accepts. Automaton has 64 states and 72 transitions. Word has length 107 [2018-11-23 12:13:53,376 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:13:53,376 INFO L480 AbstractCegarLoop]: Abstraction has 64 states and 72 transitions. [2018-11-23 12:13:53,376 INFO L481 AbstractCegarLoop]: Interpolant automaton has 8 states. [2018-11-23 12:13:53,376 INFO L276 IsEmpty]: Start isEmpty. Operand 64 states and 72 transitions. [2018-11-23 12:13:53,377 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 110 [2018-11-23 12:13:53,377 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:13:53,377 INFO L402 BasicCegarLoop]: trace histogram [18, 18, 9, 9, 6, 6, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:13:53,378 INFO L423 AbstractCegarLoop]: === Iteration 16 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:13:53,378 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:13:53,378 INFO L82 PathProgramCache]: Analyzing trace with hash -2032994204, now seen corresponding path program 11 times [2018-11-23 12:13:53,378 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:13:53,378 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:13:53,379 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:13:53,379 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:13:53,379 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:13:53,392 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:13:53,392 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:13:53,392 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 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 17 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:13:53,409 INFO L103 rtionOrderModulation]: Keeping assertion order INSIDE_LOOP_FIRST1 [2018-11-23 12:13:53,438 INFO L249 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 5 check-sat command(s) [2018-11-23 12:13:53,439 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:13:53,468 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:13:53,470 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:13:53,965 INFO L256 TraceCheckUtils]: 0: Hoare triple {7375#true} call ULTIMATE.init(); {7375#true} is VALID [2018-11-23 12:13:53,966 INFO L273 TraceCheckUtils]: 1: Hoare triple {7375#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {7375#true} is VALID [2018-11-23 12:13:53,966 INFO L273 TraceCheckUtils]: 2: Hoare triple {7375#true} assume true; {7375#true} is VALID [2018-11-23 12:13:53,966 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {7375#true} {7375#true} #78#return; {7375#true} is VALID [2018-11-23 12:13:53,966 INFO L256 TraceCheckUtils]: 4: Hoare triple {7375#true} call #t~ret12 := main(); {7375#true} is VALID [2018-11-23 12:13:53,966 INFO L273 TraceCheckUtils]: 5: Hoare triple {7375#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {7375#true} is VALID [2018-11-23 12:13:53,966 INFO L256 TraceCheckUtils]: 6: Hoare triple {7375#true} call init_nondet(~#x~0.base, ~#x~0.offset); {7375#true} is VALID [2018-11-23 12:13:53,966 INFO L273 TraceCheckUtils]: 7: Hoare triple {7375#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {7375#true} is VALID [2018-11-23 12:13:53,966 INFO L273 TraceCheckUtils]: 8: Hoare triple {7375#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {7375#true} is VALID [2018-11-23 12:13:53,967 INFO L273 TraceCheckUtils]: 9: Hoare triple {7375#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {7375#true} is VALID [2018-11-23 12:13:53,967 INFO L273 TraceCheckUtils]: 10: Hoare triple {7375#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {7375#true} is VALID [2018-11-23 12:13:53,967 INFO L273 TraceCheckUtils]: 11: Hoare triple {7375#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {7375#true} is VALID [2018-11-23 12:13:53,967 INFO L273 TraceCheckUtils]: 12: Hoare triple {7375#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {7375#true} is VALID [2018-11-23 12:13:53,967 INFO L273 TraceCheckUtils]: 13: Hoare triple {7375#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {7375#true} is VALID [2018-11-23 12:13:53,967 INFO L273 TraceCheckUtils]: 14: Hoare triple {7375#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {7375#true} is VALID [2018-11-23 12:13:53,967 INFO L273 TraceCheckUtils]: 15: Hoare triple {7375#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {7375#true} is VALID [2018-11-23 12:13:53,967 INFO L273 TraceCheckUtils]: 16: Hoare triple {7375#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {7375#true} is VALID [2018-11-23 12:13:53,968 INFO L273 TraceCheckUtils]: 17: Hoare triple {7375#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {7375#true} is VALID [2018-11-23 12:13:53,968 INFO L273 TraceCheckUtils]: 18: Hoare triple {7375#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {7375#true} is VALID [2018-11-23 12:13:53,968 INFO L273 TraceCheckUtils]: 19: Hoare triple {7375#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {7375#true} is VALID [2018-11-23 12:13:53,968 INFO L273 TraceCheckUtils]: 20: Hoare triple {7375#true} assume !(~i~0 < 40); {7375#true} is VALID [2018-11-23 12:13:53,968 INFO L273 TraceCheckUtils]: 21: Hoare triple {7375#true} assume true; {7375#true} is VALID [2018-11-23 12:13:53,968 INFO L268 TraceCheckUtils]: 22: Hoare quadruple {7375#true} {7375#true} #82#return; {7375#true} is VALID [2018-11-23 12:13:53,968 INFO L273 TraceCheckUtils]: 23: Hoare triple {7375#true} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {7375#true} is VALID [2018-11-23 12:13:53,968 INFO L256 TraceCheckUtils]: 24: Hoare triple {7375#true} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {7375#true} is VALID [2018-11-23 12:13:53,968 INFO L273 TraceCheckUtils]: 25: Hoare triple {7375#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {7375#true} is VALID [2018-11-23 12:13:53,969 INFO L273 TraceCheckUtils]: 26: Hoare triple {7375#true} assume !!(~i~1 < 40); {7375#true} is VALID [2018-11-23 12:13:53,969 INFO L273 TraceCheckUtils]: 27: Hoare triple {7375#true} assume !(~i~1 > 20); {7375#true} is VALID [2018-11-23 12:13:53,969 INFO L273 TraceCheckUtils]: 28: Hoare triple {7375#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {7375#true} is VALID [2018-11-23 12:13:53,969 INFO L273 TraceCheckUtils]: 29: Hoare triple {7375#true} assume !!(~i~1 < 40); {7375#true} is VALID [2018-11-23 12:13:53,969 INFO L273 TraceCheckUtils]: 30: Hoare triple {7375#true} assume !(~i~1 > 20); {7375#true} is VALID [2018-11-23 12:13:53,969 INFO L273 TraceCheckUtils]: 31: Hoare triple {7375#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {7375#true} is VALID [2018-11-23 12:13:53,969 INFO L273 TraceCheckUtils]: 32: Hoare triple {7375#true} assume !!(~i~1 < 40); {7375#true} is VALID [2018-11-23 12:13:53,980 INFO L273 TraceCheckUtils]: 33: Hoare triple {7375#true} assume !(~i~1 > 20); {7479#(<= rangesum_~i~1 20)} is VALID [2018-11-23 12:13:53,981 INFO L273 TraceCheckUtils]: 34: Hoare triple {7479#(<= rangesum_~i~1 20)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {7483#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:13:53,981 INFO L273 TraceCheckUtils]: 35: Hoare triple {7483#(<= rangesum_~i~1 21)} assume !!(~i~1 < 40); {7483#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:13:53,982 INFO L273 TraceCheckUtils]: 36: Hoare triple {7483#(<= rangesum_~i~1 21)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {7483#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:13:53,982 INFO L273 TraceCheckUtils]: 37: Hoare triple {7483#(<= rangesum_~i~1 21)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {7493#(<= rangesum_~i~1 22)} is VALID [2018-11-23 12:13:53,982 INFO L273 TraceCheckUtils]: 38: Hoare triple {7493#(<= rangesum_~i~1 22)} assume !!(~i~1 < 40); {7493#(<= rangesum_~i~1 22)} is VALID [2018-11-23 12:13:53,983 INFO L273 TraceCheckUtils]: 39: Hoare triple {7493#(<= rangesum_~i~1 22)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {7493#(<= rangesum_~i~1 22)} is VALID [2018-11-23 12:13:53,983 INFO L273 TraceCheckUtils]: 40: Hoare triple {7493#(<= rangesum_~i~1 22)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {7503#(<= rangesum_~i~1 23)} is VALID [2018-11-23 12:13:53,984 INFO L273 TraceCheckUtils]: 41: Hoare triple {7503#(<= rangesum_~i~1 23)} assume !!(~i~1 < 40); {7503#(<= rangesum_~i~1 23)} is VALID [2018-11-23 12:13:53,985 INFO L273 TraceCheckUtils]: 42: Hoare triple {7503#(<= rangesum_~i~1 23)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {7503#(<= rangesum_~i~1 23)} is VALID [2018-11-23 12:13:53,985 INFO L273 TraceCheckUtils]: 43: Hoare triple {7503#(<= rangesum_~i~1 23)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {7513#(<= rangesum_~i~1 24)} is VALID [2018-11-23 12:13:53,986 INFO L273 TraceCheckUtils]: 44: Hoare triple {7513#(<= rangesum_~i~1 24)} assume !(~i~1 < 40); {7376#false} is VALID [2018-11-23 12:13:53,986 INFO L273 TraceCheckUtils]: 45: Hoare triple {7376#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {7376#false} is VALID [2018-11-23 12:13:53,986 INFO L273 TraceCheckUtils]: 46: Hoare triple {7376#false} assume true; {7376#false} is VALID [2018-11-23 12:13:53,987 INFO L268 TraceCheckUtils]: 47: Hoare quadruple {7376#false} {7375#true} #84#return; {7376#false} is VALID [2018-11-23 12:13:53,987 INFO L273 TraceCheckUtils]: 48: Hoare triple {7376#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {7376#false} is VALID [2018-11-23 12:13:53,987 INFO L256 TraceCheckUtils]: 49: Hoare triple {7376#false} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {7376#false} is VALID [2018-11-23 12:13:53,987 INFO L273 TraceCheckUtils]: 50: Hoare triple {7376#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {7376#false} is VALID [2018-11-23 12:13:53,988 INFO L273 TraceCheckUtils]: 51: Hoare triple {7376#false} assume !!(~i~1 < 40); {7376#false} is VALID [2018-11-23 12:13:53,988 INFO L273 TraceCheckUtils]: 52: Hoare triple {7376#false} assume !(~i~1 > 20); {7376#false} is VALID [2018-11-23 12:13:53,988 INFO L273 TraceCheckUtils]: 53: Hoare triple {7376#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {7376#false} is VALID [2018-11-23 12:13:53,988 INFO L273 TraceCheckUtils]: 54: Hoare triple {7376#false} assume !!(~i~1 < 40); {7376#false} is VALID [2018-11-23 12:13:53,988 INFO L273 TraceCheckUtils]: 55: Hoare triple {7376#false} assume !(~i~1 > 20); {7376#false} is VALID [2018-11-23 12:13:53,989 INFO L273 TraceCheckUtils]: 56: Hoare triple {7376#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {7376#false} is VALID [2018-11-23 12:13:53,989 INFO L273 TraceCheckUtils]: 57: Hoare triple {7376#false} assume !!(~i~1 < 40); {7376#false} is VALID [2018-11-23 12:13:53,989 INFO L273 TraceCheckUtils]: 58: Hoare triple {7376#false} assume !(~i~1 > 20); {7376#false} is VALID [2018-11-23 12:13:53,989 INFO L273 TraceCheckUtils]: 59: Hoare triple {7376#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {7376#false} is VALID [2018-11-23 12:13:53,989 INFO L273 TraceCheckUtils]: 60: Hoare triple {7376#false} assume !!(~i~1 < 40); {7376#false} is VALID [2018-11-23 12:13:53,990 INFO L273 TraceCheckUtils]: 61: Hoare triple {7376#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {7376#false} is VALID [2018-11-23 12:13:53,990 INFO L273 TraceCheckUtils]: 62: Hoare triple {7376#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {7376#false} is VALID [2018-11-23 12:13:53,990 INFO L273 TraceCheckUtils]: 63: Hoare triple {7376#false} assume !!(~i~1 < 40); {7376#false} is VALID [2018-11-23 12:13:53,990 INFO L273 TraceCheckUtils]: 64: Hoare triple {7376#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {7376#false} is VALID [2018-11-23 12:13:53,990 INFO L273 TraceCheckUtils]: 65: Hoare triple {7376#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {7376#false} is VALID [2018-11-23 12:13:53,990 INFO L273 TraceCheckUtils]: 66: Hoare triple {7376#false} assume !!(~i~1 < 40); {7376#false} is VALID [2018-11-23 12:13:53,990 INFO L273 TraceCheckUtils]: 67: Hoare triple {7376#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {7376#false} is VALID [2018-11-23 12:13:53,991 INFO L273 TraceCheckUtils]: 68: Hoare triple {7376#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {7376#false} is VALID [2018-11-23 12:13:53,991 INFO L273 TraceCheckUtils]: 69: Hoare triple {7376#false} assume !(~i~1 < 40); {7376#false} is VALID [2018-11-23 12:13:53,991 INFO L273 TraceCheckUtils]: 70: Hoare triple {7376#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {7376#false} is VALID [2018-11-23 12:13:53,991 INFO L273 TraceCheckUtils]: 71: Hoare triple {7376#false} assume true; {7376#false} is VALID [2018-11-23 12:13:53,991 INFO L268 TraceCheckUtils]: 72: Hoare quadruple {7376#false} {7376#false} #86#return; {7376#false} is VALID [2018-11-23 12:13:53,991 INFO L273 TraceCheckUtils]: 73: Hoare triple {7376#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {7376#false} is VALID [2018-11-23 12:13:53,991 INFO L273 TraceCheckUtils]: 74: Hoare triple {7376#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {7376#false} is VALID [2018-11-23 12:13:53,991 INFO L273 TraceCheckUtils]: 75: Hoare triple {7376#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {7376#false} is VALID [2018-11-23 12:13:53,991 INFO L273 TraceCheckUtils]: 76: Hoare triple {7376#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {7376#false} is VALID [2018-11-23 12:13:53,992 INFO L273 TraceCheckUtils]: 77: Hoare triple {7376#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {7376#false} is VALID [2018-11-23 12:13:53,992 INFO L273 TraceCheckUtils]: 78: Hoare triple {7376#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {7376#false} is VALID [2018-11-23 12:13:53,992 INFO L273 TraceCheckUtils]: 79: Hoare triple {7376#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {7376#false} is VALID [2018-11-23 12:13:53,992 INFO L273 TraceCheckUtils]: 80: Hoare triple {7376#false} assume !(~i~2 < 39); {7376#false} is VALID [2018-11-23 12:13:53,992 INFO L273 TraceCheckUtils]: 81: Hoare triple {7376#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {7376#false} is VALID [2018-11-23 12:13:53,992 INFO L256 TraceCheckUtils]: 82: Hoare triple {7376#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {7376#false} is VALID [2018-11-23 12:13:53,992 INFO L273 TraceCheckUtils]: 83: Hoare triple {7376#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {7376#false} is VALID [2018-11-23 12:13:53,992 INFO L273 TraceCheckUtils]: 84: Hoare triple {7376#false} assume !!(~i~1 < 40); {7376#false} is VALID [2018-11-23 12:13:53,993 INFO L273 TraceCheckUtils]: 85: Hoare triple {7376#false} assume !(~i~1 > 20); {7376#false} is VALID [2018-11-23 12:13:53,993 INFO L273 TraceCheckUtils]: 86: Hoare triple {7376#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {7376#false} is VALID [2018-11-23 12:13:53,993 INFO L273 TraceCheckUtils]: 87: Hoare triple {7376#false} assume !!(~i~1 < 40); {7376#false} is VALID [2018-11-23 12:13:53,993 INFO L273 TraceCheckUtils]: 88: Hoare triple {7376#false} assume !(~i~1 > 20); {7376#false} is VALID [2018-11-23 12:13:53,993 INFO L273 TraceCheckUtils]: 89: Hoare triple {7376#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {7376#false} is VALID [2018-11-23 12:13:53,993 INFO L273 TraceCheckUtils]: 90: Hoare triple {7376#false} assume !!(~i~1 < 40); {7376#false} is VALID [2018-11-23 12:13:53,993 INFO L273 TraceCheckUtils]: 91: Hoare triple {7376#false} assume !(~i~1 > 20); {7376#false} is VALID [2018-11-23 12:13:53,993 INFO L273 TraceCheckUtils]: 92: Hoare triple {7376#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {7376#false} is VALID [2018-11-23 12:13:53,994 INFO L273 TraceCheckUtils]: 93: Hoare triple {7376#false} assume !!(~i~1 < 40); {7376#false} is VALID [2018-11-23 12:13:53,994 INFO L273 TraceCheckUtils]: 94: Hoare triple {7376#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {7376#false} is VALID [2018-11-23 12:13:53,994 INFO L273 TraceCheckUtils]: 95: Hoare triple {7376#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {7376#false} is VALID [2018-11-23 12:13:53,994 INFO L273 TraceCheckUtils]: 96: Hoare triple {7376#false} assume !!(~i~1 < 40); {7376#false} is VALID [2018-11-23 12:13:53,994 INFO L273 TraceCheckUtils]: 97: Hoare triple {7376#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {7376#false} is VALID [2018-11-23 12:13:53,994 INFO L273 TraceCheckUtils]: 98: Hoare triple {7376#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {7376#false} is VALID [2018-11-23 12:13:53,994 INFO L273 TraceCheckUtils]: 99: Hoare triple {7376#false} assume !!(~i~1 < 40); {7376#false} is VALID [2018-11-23 12:13:53,994 INFO L273 TraceCheckUtils]: 100: Hoare triple {7376#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {7376#false} is VALID [2018-11-23 12:13:53,995 INFO L273 TraceCheckUtils]: 101: Hoare triple {7376#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {7376#false} is VALID [2018-11-23 12:13:53,995 INFO L273 TraceCheckUtils]: 102: Hoare triple {7376#false} assume !(~i~1 < 40); {7376#false} is VALID [2018-11-23 12:13:53,995 INFO L273 TraceCheckUtils]: 103: Hoare triple {7376#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {7376#false} is VALID [2018-11-23 12:13:53,995 INFO L273 TraceCheckUtils]: 104: Hoare triple {7376#false} assume true; {7376#false} is VALID [2018-11-23 12:13:53,995 INFO L268 TraceCheckUtils]: 105: Hoare quadruple {7376#false} {7376#false} #88#return; {7376#false} is VALID [2018-11-23 12:13:53,995 INFO L273 TraceCheckUtils]: 106: Hoare triple {7376#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {7376#false} is VALID [2018-11-23 12:13:53,995 INFO L273 TraceCheckUtils]: 107: Hoare triple {7376#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {7376#false} is VALID [2018-11-23 12:13:53,995 INFO L273 TraceCheckUtils]: 108: Hoare triple {7376#false} assume !false; {7376#false} is VALID [2018-11-23 12:13:54,000 INFO L134 CoverageAnalysis]: Checked inductivity of 573 backedges. 273 proven. 15 refuted. 0 times theorem prover too weak. 285 trivial. 0 not checked. [2018-11-23 12:13:54,018 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:13:54,019 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [7] total 7 [2018-11-23 12:13:54,019 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 109 [2018-11-23 12:13:54,019 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:13:54,019 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states. [2018-11-23 12:13:54,068 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 53 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:13:54,068 INFO L459 AbstractCegarLoop]: Interpolant automaton has 7 states [2018-11-23 12:13:54,069 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2018-11-23 12:13:54,069 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=21, Unknown=0, NotChecked=0, Total=42 [2018-11-23 12:13:54,069 INFO L87 Difference]: Start difference. First operand 64 states and 72 transitions. Second operand 7 states. [2018-11-23 12:13:54,357 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:54,357 INFO L93 Difference]: Finished difference Result 108 states and 128 transitions. [2018-11-23 12:13:54,357 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2018-11-23 12:13:54,357 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 109 [2018-11-23 12:13:54,358 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:13:54,358 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2018-11-23 12:13:54,359 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 83 transitions. [2018-11-23 12:13:54,360 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2018-11-23 12:13:54,361 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 83 transitions. [2018-11-23 12:13:54,361 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 83 transitions. [2018-11-23 12:13:54,450 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 83 edges. 83 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:13:54,451 INFO L225 Difference]: With dead ends: 108 [2018-11-23 12:13:54,451 INFO L226 Difference]: Without dead ends: 69 [2018-11-23 12:13:54,452 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 108 GetRequests, 103 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=21, Invalid=21, Unknown=0, NotChecked=0, Total=42 [2018-11-23 12:13:54,452 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 69 states. [2018-11-23 12:13:54,475 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 69 to 67. [2018-11-23 12:13:54,475 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:13:54,475 INFO L82 GeneralOperation]: Start isEquivalent. First operand 69 states. Second operand 67 states. [2018-11-23 12:13:54,475 INFO L74 IsIncluded]: Start isIncluded. First operand 69 states. Second operand 67 states. [2018-11-23 12:13:54,475 INFO L87 Difference]: Start difference. First operand 69 states. Second operand 67 states. [2018-11-23 12:13:54,477 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:54,478 INFO L93 Difference]: Finished difference Result 69 states and 79 transitions. [2018-11-23 12:13:54,478 INFO L276 IsEmpty]: Start isEmpty. Operand 69 states and 79 transitions. [2018-11-23 12:13:54,478 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:13:54,478 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:13:54,478 INFO L74 IsIncluded]: Start isIncluded. First operand 67 states. Second operand 69 states. [2018-11-23 12:13:54,478 INFO L87 Difference]: Start difference. First operand 67 states. Second operand 69 states. [2018-11-23 12:13:54,480 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:54,480 INFO L93 Difference]: Finished difference Result 69 states and 79 transitions. [2018-11-23 12:13:54,480 INFO L276 IsEmpty]: Start isEmpty. Operand 69 states and 79 transitions. [2018-11-23 12:13:54,481 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:13:54,481 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:13:54,481 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:13:54,481 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:13:54,481 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 67 states. [2018-11-23 12:13:54,482 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 67 states to 67 states and 76 transitions. [2018-11-23 12:13:54,483 INFO L78 Accepts]: Start accepts. Automaton has 67 states and 76 transitions. Word has length 109 [2018-11-23 12:13:54,483 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:13:54,483 INFO L480 AbstractCegarLoop]: Abstraction has 67 states and 76 transitions. [2018-11-23 12:13:54,483 INFO L481 AbstractCegarLoop]: Interpolant automaton has 7 states. [2018-11-23 12:13:54,483 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 76 transitions. [2018-11-23 12:13:54,484 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 119 [2018-11-23 12:13:54,485 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:13:54,485 INFO L402 BasicCegarLoop]: trace histogram [21, 21, 12, 9, 6, 6, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:13:54,485 INFO L423 AbstractCegarLoop]: === Iteration 17 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:13:54,485 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:13:54,485 INFO L82 PathProgramCache]: Analyzing trace with hash -176167818, now seen corresponding path program 12 times [2018-11-23 12:13:54,486 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:13:54,486 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:13:54,486 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:13:54,487 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:13:54,487 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:13:54,499 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:13:54,499 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:13:54,499 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 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 18 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:13:54,518 INFO L103 rtionOrderModulation]: Keeping assertion order MIX_INSIDE_OUTSIDE [2018-11-23 12:13:54,644 INFO L249 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 9 check-sat command(s) [2018-11-23 12:13:54,644 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:13:54,668 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:13:54,670 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:13:54,792 INFO L256 TraceCheckUtils]: 0: Hoare triple {8093#true} call ULTIMATE.init(); {8093#true} is VALID [2018-11-23 12:13:54,793 INFO L273 TraceCheckUtils]: 1: Hoare triple {8093#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {8093#true} is VALID [2018-11-23 12:13:54,793 INFO L273 TraceCheckUtils]: 2: Hoare triple {8093#true} assume true; {8093#true} is VALID [2018-11-23 12:13:54,793 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {8093#true} {8093#true} #78#return; {8093#true} is VALID [2018-11-23 12:13:54,794 INFO L256 TraceCheckUtils]: 4: Hoare triple {8093#true} call #t~ret12 := main(); {8093#true} is VALID [2018-11-23 12:13:54,794 INFO L273 TraceCheckUtils]: 5: Hoare triple {8093#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {8093#true} is VALID [2018-11-23 12:13:54,794 INFO L256 TraceCheckUtils]: 6: Hoare triple {8093#true} call init_nondet(~#x~0.base, ~#x~0.offset); {8093#true} is VALID [2018-11-23 12:13:54,795 INFO L273 TraceCheckUtils]: 7: Hoare triple {8093#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {8093#true} is VALID [2018-11-23 12:13:54,795 INFO L273 TraceCheckUtils]: 8: Hoare triple {8093#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {8093#true} is VALID [2018-11-23 12:13:54,795 INFO L273 TraceCheckUtils]: 9: Hoare triple {8093#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8093#true} is VALID [2018-11-23 12:13:54,795 INFO L273 TraceCheckUtils]: 10: Hoare triple {8093#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {8093#true} is VALID [2018-11-23 12:13:54,795 INFO L273 TraceCheckUtils]: 11: Hoare triple {8093#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8093#true} is VALID [2018-11-23 12:13:54,796 INFO L273 TraceCheckUtils]: 12: Hoare triple {8093#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {8093#true} is VALID [2018-11-23 12:13:54,796 INFO L273 TraceCheckUtils]: 13: Hoare triple {8093#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8093#true} is VALID [2018-11-23 12:13:54,796 INFO L273 TraceCheckUtils]: 14: Hoare triple {8093#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {8093#true} is VALID [2018-11-23 12:13:54,796 INFO L273 TraceCheckUtils]: 15: Hoare triple {8093#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8093#true} is VALID [2018-11-23 12:13:54,796 INFO L273 TraceCheckUtils]: 16: Hoare triple {8093#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {8093#true} is VALID [2018-11-23 12:13:54,797 INFO L273 TraceCheckUtils]: 17: Hoare triple {8093#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8093#true} is VALID [2018-11-23 12:13:54,797 INFO L273 TraceCheckUtils]: 18: Hoare triple {8093#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {8093#true} is VALID [2018-11-23 12:13:54,797 INFO L273 TraceCheckUtils]: 19: Hoare triple {8093#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8093#true} is VALID [2018-11-23 12:13:54,797 INFO L273 TraceCheckUtils]: 20: Hoare triple {8093#true} assume !(~i~0 < 40); {8093#true} is VALID [2018-11-23 12:13:54,797 INFO L273 TraceCheckUtils]: 21: Hoare triple {8093#true} assume true; {8093#true} is VALID [2018-11-23 12:13:54,797 INFO L268 TraceCheckUtils]: 22: Hoare quadruple {8093#true} {8093#true} #82#return; {8093#true} is VALID [2018-11-23 12:13:54,797 INFO L273 TraceCheckUtils]: 23: Hoare triple {8093#true} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {8093#true} is VALID [2018-11-23 12:13:54,797 INFO L256 TraceCheckUtils]: 24: Hoare triple {8093#true} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {8093#true} is VALID [2018-11-23 12:13:54,798 INFO L273 TraceCheckUtils]: 25: Hoare triple {8093#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {8093#true} is VALID [2018-11-23 12:13:54,798 INFO L273 TraceCheckUtils]: 26: Hoare triple {8093#true} assume !!(~i~1 < 40); {8093#true} is VALID [2018-11-23 12:13:54,798 INFO L273 TraceCheckUtils]: 27: Hoare triple {8093#true} assume !(~i~1 > 20); {8093#true} is VALID [2018-11-23 12:13:54,798 INFO L273 TraceCheckUtils]: 28: Hoare triple {8093#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {8093#true} is VALID [2018-11-23 12:13:54,798 INFO L273 TraceCheckUtils]: 29: Hoare triple {8093#true} assume !!(~i~1 < 40); {8093#true} is VALID [2018-11-23 12:13:54,798 INFO L273 TraceCheckUtils]: 30: Hoare triple {8093#true} assume !(~i~1 > 20); {8093#true} is VALID [2018-11-23 12:13:54,798 INFO L273 TraceCheckUtils]: 31: Hoare triple {8093#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {8093#true} is VALID [2018-11-23 12:13:54,799 INFO L273 TraceCheckUtils]: 32: Hoare triple {8093#true} assume !!(~i~1 < 40); {8093#true} is VALID [2018-11-23 12:13:54,799 INFO L273 TraceCheckUtils]: 33: Hoare triple {8093#true} assume !(~i~1 > 20); {8093#true} is VALID [2018-11-23 12:13:54,799 INFO L273 TraceCheckUtils]: 34: Hoare triple {8093#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {8093#true} is VALID [2018-11-23 12:13:54,799 INFO L273 TraceCheckUtils]: 35: Hoare triple {8093#true} assume !!(~i~1 < 40); {8093#true} is VALID [2018-11-23 12:13:54,799 INFO L273 TraceCheckUtils]: 36: Hoare triple {8093#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {8093#true} is VALID [2018-11-23 12:13:54,799 INFO L273 TraceCheckUtils]: 37: Hoare triple {8093#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {8093#true} is VALID [2018-11-23 12:13:54,800 INFO L273 TraceCheckUtils]: 38: Hoare triple {8093#true} assume !!(~i~1 < 40); {8093#true} is VALID [2018-11-23 12:13:54,800 INFO L273 TraceCheckUtils]: 39: Hoare triple {8093#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {8093#true} is VALID [2018-11-23 12:13:54,800 INFO L273 TraceCheckUtils]: 40: Hoare triple {8093#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {8093#true} is VALID [2018-11-23 12:13:54,800 INFO L273 TraceCheckUtils]: 41: Hoare triple {8093#true} assume !!(~i~1 < 40); {8093#true} is VALID [2018-11-23 12:13:54,800 INFO L273 TraceCheckUtils]: 42: Hoare triple {8093#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {8093#true} is VALID [2018-11-23 12:13:54,800 INFO L273 TraceCheckUtils]: 43: Hoare triple {8093#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {8093#true} is VALID [2018-11-23 12:13:54,800 INFO L273 TraceCheckUtils]: 44: Hoare triple {8093#true} assume !!(~i~1 < 40); {8093#true} is VALID [2018-11-23 12:13:54,800 INFO L273 TraceCheckUtils]: 45: Hoare triple {8093#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {8093#true} is VALID [2018-11-23 12:13:54,800 INFO L273 TraceCheckUtils]: 46: Hoare triple {8093#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {8093#true} is VALID [2018-11-23 12:13:54,801 INFO L273 TraceCheckUtils]: 47: Hoare triple {8093#true} assume !(~i~1 < 40); {8093#true} is VALID [2018-11-23 12:13:54,801 INFO L273 TraceCheckUtils]: 48: Hoare triple {8093#true} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {8093#true} is VALID [2018-11-23 12:13:54,801 INFO L273 TraceCheckUtils]: 49: Hoare triple {8093#true} assume true; {8093#true} is VALID [2018-11-23 12:13:54,801 INFO L268 TraceCheckUtils]: 50: Hoare quadruple {8093#true} {8093#true} #84#return; {8093#true} is VALID [2018-11-23 12:13:54,801 INFO L273 TraceCheckUtils]: 51: Hoare triple {8093#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {8093#true} is VALID [2018-11-23 12:13:54,801 INFO L256 TraceCheckUtils]: 52: Hoare triple {8093#true} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {8093#true} is VALID [2018-11-23 12:13:54,801 INFO L273 TraceCheckUtils]: 53: Hoare triple {8093#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {8093#true} is VALID [2018-11-23 12:13:54,801 INFO L273 TraceCheckUtils]: 54: Hoare triple {8093#true} assume !!(~i~1 < 40); {8093#true} is VALID [2018-11-23 12:13:54,802 INFO L273 TraceCheckUtils]: 55: Hoare triple {8093#true} assume !(~i~1 > 20); {8093#true} is VALID [2018-11-23 12:13:54,802 INFO L273 TraceCheckUtils]: 56: Hoare triple {8093#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {8093#true} is VALID [2018-11-23 12:13:54,802 INFO L273 TraceCheckUtils]: 57: Hoare triple {8093#true} assume !!(~i~1 < 40); {8093#true} is VALID [2018-11-23 12:13:54,802 INFO L273 TraceCheckUtils]: 58: Hoare triple {8093#true} assume !(~i~1 > 20); {8093#true} is VALID [2018-11-23 12:13:54,802 INFO L273 TraceCheckUtils]: 59: Hoare triple {8093#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {8093#true} is VALID [2018-11-23 12:13:54,802 INFO L273 TraceCheckUtils]: 60: Hoare triple {8093#true} assume !!(~i~1 < 40); {8093#true} is VALID [2018-11-23 12:13:54,802 INFO L273 TraceCheckUtils]: 61: Hoare triple {8093#true} assume !(~i~1 > 20); {8093#true} is VALID [2018-11-23 12:13:54,802 INFO L273 TraceCheckUtils]: 62: Hoare triple {8093#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {8093#true} is VALID [2018-11-23 12:13:54,803 INFO L273 TraceCheckUtils]: 63: Hoare triple {8093#true} assume !!(~i~1 < 40); {8093#true} is VALID [2018-11-23 12:13:54,803 INFO L273 TraceCheckUtils]: 64: Hoare triple {8093#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {8093#true} is VALID [2018-11-23 12:13:54,803 INFO L273 TraceCheckUtils]: 65: Hoare triple {8093#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {8093#true} is VALID [2018-11-23 12:13:54,803 INFO L273 TraceCheckUtils]: 66: Hoare triple {8093#true} assume !!(~i~1 < 40); {8093#true} is VALID [2018-11-23 12:13:54,803 INFO L273 TraceCheckUtils]: 67: Hoare triple {8093#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {8093#true} is VALID [2018-11-23 12:13:54,803 INFO L273 TraceCheckUtils]: 68: Hoare triple {8093#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {8093#true} is VALID [2018-11-23 12:13:54,803 INFO L273 TraceCheckUtils]: 69: Hoare triple {8093#true} assume !!(~i~1 < 40); {8093#true} is VALID [2018-11-23 12:13:54,803 INFO L273 TraceCheckUtils]: 70: Hoare triple {8093#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {8093#true} is VALID [2018-11-23 12:13:54,803 INFO L273 TraceCheckUtils]: 71: Hoare triple {8093#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {8093#true} is VALID [2018-11-23 12:13:54,804 INFO L273 TraceCheckUtils]: 72: Hoare triple {8093#true} assume !!(~i~1 < 40); {8093#true} is VALID [2018-11-23 12:13:54,804 INFO L273 TraceCheckUtils]: 73: Hoare triple {8093#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {8093#true} is VALID [2018-11-23 12:13:54,804 INFO L273 TraceCheckUtils]: 74: Hoare triple {8093#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {8093#true} is VALID [2018-11-23 12:13:54,804 INFO L273 TraceCheckUtils]: 75: Hoare triple {8093#true} assume !(~i~1 < 40); {8093#true} is VALID [2018-11-23 12:13:54,804 INFO L273 TraceCheckUtils]: 76: Hoare triple {8093#true} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {8093#true} is VALID [2018-11-23 12:13:54,804 INFO L273 TraceCheckUtils]: 77: Hoare triple {8093#true} assume true; {8093#true} is VALID [2018-11-23 12:13:54,804 INFO L268 TraceCheckUtils]: 78: Hoare quadruple {8093#true} {8093#true} #86#return; {8093#true} is VALID [2018-11-23 12:13:54,805 INFO L273 TraceCheckUtils]: 79: Hoare triple {8093#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {8335#(<= main_~i~2 0)} is VALID [2018-11-23 12:13:54,806 INFO L273 TraceCheckUtils]: 80: Hoare triple {8335#(<= main_~i~2 0)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {8335#(<= main_~i~2 0)} is VALID [2018-11-23 12:13:54,808 INFO L273 TraceCheckUtils]: 81: Hoare triple {8335#(<= main_~i~2 0)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {8342#(<= main_~i~2 1)} is VALID [2018-11-23 12:13:54,808 INFO L273 TraceCheckUtils]: 82: Hoare triple {8342#(<= main_~i~2 1)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {8342#(<= main_~i~2 1)} is VALID [2018-11-23 12:13:54,810 INFO L273 TraceCheckUtils]: 83: Hoare triple {8342#(<= main_~i~2 1)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {8349#(<= main_~i~2 2)} is VALID [2018-11-23 12:13:54,810 INFO L273 TraceCheckUtils]: 84: Hoare triple {8349#(<= main_~i~2 2)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {8349#(<= main_~i~2 2)} is VALID [2018-11-23 12:13:54,811 INFO L273 TraceCheckUtils]: 85: Hoare triple {8349#(<= main_~i~2 2)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {8356#(<= main_~i~2 3)} is VALID [2018-11-23 12:13:54,829 INFO L273 TraceCheckUtils]: 86: Hoare triple {8356#(<= main_~i~2 3)} assume !(~i~2 < 39); {8094#false} is VALID [2018-11-23 12:13:54,830 INFO L273 TraceCheckUtils]: 87: Hoare triple {8094#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {8094#false} is VALID [2018-11-23 12:13:54,830 INFO L256 TraceCheckUtils]: 88: Hoare triple {8094#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {8094#false} is VALID [2018-11-23 12:13:54,830 INFO L273 TraceCheckUtils]: 89: Hoare triple {8094#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {8094#false} is VALID [2018-11-23 12:13:54,830 INFO L273 TraceCheckUtils]: 90: Hoare triple {8094#false} assume !!(~i~1 < 40); {8094#false} is VALID [2018-11-23 12:13:54,830 INFO L273 TraceCheckUtils]: 91: Hoare triple {8094#false} assume !(~i~1 > 20); {8094#false} is VALID [2018-11-23 12:13:54,830 INFO L273 TraceCheckUtils]: 92: Hoare triple {8094#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {8094#false} is VALID [2018-11-23 12:13:54,830 INFO L273 TraceCheckUtils]: 93: Hoare triple {8094#false} assume !!(~i~1 < 40); {8094#false} is VALID [2018-11-23 12:13:54,830 INFO L273 TraceCheckUtils]: 94: Hoare triple {8094#false} assume !(~i~1 > 20); {8094#false} is VALID [2018-11-23 12:13:54,831 INFO L273 TraceCheckUtils]: 95: Hoare triple {8094#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {8094#false} is VALID [2018-11-23 12:13:54,831 INFO L273 TraceCheckUtils]: 96: Hoare triple {8094#false} assume !!(~i~1 < 40); {8094#false} is VALID [2018-11-23 12:13:54,831 INFO L273 TraceCheckUtils]: 97: Hoare triple {8094#false} assume !(~i~1 > 20); {8094#false} is VALID [2018-11-23 12:13:54,831 INFO L273 TraceCheckUtils]: 98: Hoare triple {8094#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {8094#false} is VALID [2018-11-23 12:13:54,831 INFO L273 TraceCheckUtils]: 99: Hoare triple {8094#false} assume !!(~i~1 < 40); {8094#false} is VALID [2018-11-23 12:13:54,831 INFO L273 TraceCheckUtils]: 100: Hoare triple {8094#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {8094#false} is VALID [2018-11-23 12:13:54,831 INFO L273 TraceCheckUtils]: 101: Hoare triple {8094#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {8094#false} is VALID [2018-11-23 12:13:54,831 INFO L273 TraceCheckUtils]: 102: Hoare triple {8094#false} assume !!(~i~1 < 40); {8094#false} is VALID [2018-11-23 12:13:54,832 INFO L273 TraceCheckUtils]: 103: Hoare triple {8094#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {8094#false} is VALID [2018-11-23 12:13:54,832 INFO L273 TraceCheckUtils]: 104: Hoare triple {8094#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {8094#false} is VALID [2018-11-23 12:13:54,832 INFO L273 TraceCheckUtils]: 105: Hoare triple {8094#false} assume !!(~i~1 < 40); {8094#false} is VALID [2018-11-23 12:13:54,832 INFO L273 TraceCheckUtils]: 106: Hoare triple {8094#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {8094#false} is VALID [2018-11-23 12:13:54,832 INFO L273 TraceCheckUtils]: 107: Hoare triple {8094#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {8094#false} is VALID [2018-11-23 12:13:54,832 INFO L273 TraceCheckUtils]: 108: Hoare triple {8094#false} assume !!(~i~1 < 40); {8094#false} is VALID [2018-11-23 12:13:54,832 INFO L273 TraceCheckUtils]: 109: Hoare triple {8094#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {8094#false} is VALID [2018-11-23 12:13:54,832 INFO L273 TraceCheckUtils]: 110: Hoare triple {8094#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {8094#false} is VALID [2018-11-23 12:13:54,832 INFO L273 TraceCheckUtils]: 111: Hoare triple {8094#false} assume !(~i~1 < 40); {8094#false} is VALID [2018-11-23 12:13:54,833 INFO L273 TraceCheckUtils]: 112: Hoare triple {8094#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {8094#false} is VALID [2018-11-23 12:13:54,833 INFO L273 TraceCheckUtils]: 113: Hoare triple {8094#false} assume true; {8094#false} is VALID [2018-11-23 12:13:54,833 INFO L268 TraceCheckUtils]: 114: Hoare quadruple {8094#false} {8094#false} #88#return; {8094#false} is VALID [2018-11-23 12:13:54,833 INFO L273 TraceCheckUtils]: 115: Hoare triple {8094#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {8094#false} is VALID [2018-11-23 12:13:54,833 INFO L273 TraceCheckUtils]: 116: Hoare triple {8094#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {8094#false} is VALID [2018-11-23 12:13:54,833 INFO L273 TraceCheckUtils]: 117: Hoare triple {8094#false} assume !false; {8094#false} is VALID [2018-11-23 12:13:54,839 INFO L134 CoverageAnalysis]: Checked inductivity of 753 backedges. 332 proven. 9 refuted. 0 times theorem prover too weak. 412 trivial. 0 not checked. [2018-11-23 12:13:54,857 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:13:54,858 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [6] total 6 [2018-11-23 12:13:54,858 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 118 [2018-11-23 12:13:54,858 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:13:54,859 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2018-11-23 12:13:54,907 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:13:54,907 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2018-11-23 12:13:54,907 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2018-11-23 12:13:54,908 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=15, Unknown=0, NotChecked=0, Total=30 [2018-11-23 12:13:54,908 INFO L87 Difference]: Start difference. First operand 67 states and 76 transitions. Second operand 6 states. [2018-11-23 12:13:55,030 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:55,031 INFO L93 Difference]: Finished difference Result 102 states and 117 transitions. [2018-11-23 12:13:55,031 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2018-11-23 12:13:55,031 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 118 [2018-11-23 12:13:55,031 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:13:55,031 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-23 12:13:55,032 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 62 transitions. [2018-11-23 12:13:55,032 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-23 12:13:55,033 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 62 transitions. [2018-11-23 12:13:55,033 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 62 transitions. [2018-11-23 12:13:55,085 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 62 edges. 62 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:13:55,087 INFO L225 Difference]: With dead ends: 102 [2018-11-23 12:13:55,087 INFO L226 Difference]: Without dead ends: 70 [2018-11-23 12:13:55,088 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 117 GetRequests, 113 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=15, Invalid=15, Unknown=0, NotChecked=0, Total=30 [2018-11-23 12:13:55,088 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 70 states. [2018-11-23 12:13:55,109 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 70 to 69. [2018-11-23 12:13:55,109 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:13:55,110 INFO L82 GeneralOperation]: Start isEquivalent. First operand 70 states. Second operand 69 states. [2018-11-23 12:13:55,110 INFO L74 IsIncluded]: Start isIncluded. First operand 70 states. Second operand 69 states. [2018-11-23 12:13:55,110 INFO L87 Difference]: Start difference. First operand 70 states. Second operand 69 states. [2018-11-23 12:13:55,112 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:55,112 INFO L93 Difference]: Finished difference Result 70 states and 79 transitions. [2018-11-23 12:13:55,112 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 79 transitions. [2018-11-23 12:13:55,112 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:13:55,112 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:13:55,113 INFO L74 IsIncluded]: Start isIncluded. First operand 69 states. Second operand 70 states. [2018-11-23 12:13:55,113 INFO L87 Difference]: Start difference. First operand 69 states. Second operand 70 states. [2018-11-23 12:13:55,114 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:55,114 INFO L93 Difference]: Finished difference Result 70 states and 79 transitions. [2018-11-23 12:13:55,114 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 79 transitions. [2018-11-23 12:13:55,115 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:13:55,115 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:13:55,115 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:13:55,115 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:13:55,115 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 69 states. [2018-11-23 12:13:55,117 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 69 states to 69 states and 78 transitions. [2018-11-23 12:13:55,117 INFO L78 Accepts]: Start accepts. Automaton has 69 states and 78 transitions. Word has length 118 [2018-11-23 12:13:55,117 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:13:55,117 INFO L480 AbstractCegarLoop]: Abstraction has 69 states and 78 transitions. [2018-11-23 12:13:55,117 INFO L481 AbstractCegarLoop]: Interpolant automaton has 6 states. [2018-11-23 12:13:55,118 INFO L276 IsEmpty]: Start isEmpty. Operand 69 states and 78 transitions. [2018-11-23 12:13:55,118 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 121 [2018-11-23 12:13:55,118 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:13:55,119 INFO L402 BasicCegarLoop]: trace histogram [21, 21, 12, 9, 6, 6, 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, 1, 1, 1, 1, 1] [2018-11-23 12:13:55,119 INFO L423 AbstractCegarLoop]: === Iteration 18 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:13:55,119 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:13:55,119 INFO L82 PathProgramCache]: Analyzing trace with hash -1037599848, now seen corresponding path program 13 times [2018-11-23 12:13:55,119 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:13:55,120 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:13:55,120 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:13:55,120 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:13:55,121 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:13:55,133 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:13:55,133 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:13:55,133 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 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 19 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:13:55,154 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:13:55,201 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:13:55,222 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:13:55,223 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:13:55,416 INFO L256 TraceCheckUtils]: 0: Hoare triple {8833#true} call ULTIMATE.init(); {8833#true} is VALID [2018-11-23 12:13:55,416 INFO L273 TraceCheckUtils]: 1: Hoare triple {8833#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {8833#true} is VALID [2018-11-23 12:13:55,416 INFO L273 TraceCheckUtils]: 2: Hoare triple {8833#true} assume true; {8833#true} is VALID [2018-11-23 12:13:55,416 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {8833#true} {8833#true} #78#return; {8833#true} is VALID [2018-11-23 12:13:55,417 INFO L256 TraceCheckUtils]: 4: Hoare triple {8833#true} call #t~ret12 := main(); {8833#true} is VALID [2018-11-23 12:13:55,417 INFO L273 TraceCheckUtils]: 5: Hoare triple {8833#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {8833#true} is VALID [2018-11-23 12:13:55,417 INFO L256 TraceCheckUtils]: 6: Hoare triple {8833#true} call init_nondet(~#x~0.base, ~#x~0.offset); {8833#true} is VALID [2018-11-23 12:13:55,418 INFO L273 TraceCheckUtils]: 7: Hoare triple {8833#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {8859#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:13:55,418 INFO L273 TraceCheckUtils]: 8: Hoare triple {8859#(<= init_nondet_~i~0 0)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {8859#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:13:55,419 INFO L273 TraceCheckUtils]: 9: Hoare triple {8859#(<= init_nondet_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8866#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:13:55,419 INFO L273 TraceCheckUtils]: 10: Hoare triple {8866#(<= init_nondet_~i~0 1)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {8866#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:13:55,420 INFO L273 TraceCheckUtils]: 11: Hoare triple {8866#(<= init_nondet_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8873#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:13:55,420 INFO L273 TraceCheckUtils]: 12: Hoare triple {8873#(<= init_nondet_~i~0 2)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {8873#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:13:55,421 INFO L273 TraceCheckUtils]: 13: Hoare triple {8873#(<= init_nondet_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8880#(<= init_nondet_~i~0 3)} is VALID [2018-11-23 12:13:55,421 INFO L273 TraceCheckUtils]: 14: Hoare triple {8880#(<= init_nondet_~i~0 3)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {8880#(<= init_nondet_~i~0 3)} is VALID [2018-11-23 12:13:55,422 INFO L273 TraceCheckUtils]: 15: Hoare triple {8880#(<= init_nondet_~i~0 3)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8887#(<= init_nondet_~i~0 4)} is VALID [2018-11-23 12:13:55,422 INFO L273 TraceCheckUtils]: 16: Hoare triple {8887#(<= init_nondet_~i~0 4)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {8887#(<= init_nondet_~i~0 4)} is VALID [2018-11-23 12:13:55,423 INFO L273 TraceCheckUtils]: 17: Hoare triple {8887#(<= init_nondet_~i~0 4)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8894#(<= init_nondet_~i~0 5)} is VALID [2018-11-23 12:13:55,424 INFO L273 TraceCheckUtils]: 18: Hoare triple {8894#(<= init_nondet_~i~0 5)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {8894#(<= init_nondet_~i~0 5)} is VALID [2018-11-23 12:13:55,424 INFO L273 TraceCheckUtils]: 19: Hoare triple {8894#(<= init_nondet_~i~0 5)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8901#(<= init_nondet_~i~0 6)} is VALID [2018-11-23 12:13:55,425 INFO L273 TraceCheckUtils]: 20: Hoare triple {8901#(<= init_nondet_~i~0 6)} assume !(~i~0 < 40); {8834#false} is VALID [2018-11-23 12:13:55,425 INFO L273 TraceCheckUtils]: 21: Hoare triple {8834#false} assume true; {8834#false} is VALID [2018-11-23 12:13:55,426 INFO L268 TraceCheckUtils]: 22: Hoare quadruple {8834#false} {8833#true} #82#return; {8834#false} is VALID [2018-11-23 12:13:55,426 INFO L273 TraceCheckUtils]: 23: Hoare triple {8834#false} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {8834#false} is VALID [2018-11-23 12:13:55,426 INFO L256 TraceCheckUtils]: 24: Hoare triple {8834#false} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {8834#false} is VALID [2018-11-23 12:13:55,426 INFO L273 TraceCheckUtils]: 25: Hoare triple {8834#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {8834#false} is VALID [2018-11-23 12:13:55,426 INFO L273 TraceCheckUtils]: 26: Hoare triple {8834#false} assume !!(~i~1 < 40); {8834#false} is VALID [2018-11-23 12:13:55,427 INFO L273 TraceCheckUtils]: 27: Hoare triple {8834#false} assume !(~i~1 > 20); {8834#false} is VALID [2018-11-23 12:13:55,427 INFO L273 TraceCheckUtils]: 28: Hoare triple {8834#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {8834#false} is VALID [2018-11-23 12:13:55,427 INFO L273 TraceCheckUtils]: 29: Hoare triple {8834#false} assume !!(~i~1 < 40); {8834#false} is VALID [2018-11-23 12:13:55,427 INFO L273 TraceCheckUtils]: 30: Hoare triple {8834#false} assume !(~i~1 > 20); {8834#false} is VALID [2018-11-23 12:13:55,427 INFO L273 TraceCheckUtils]: 31: Hoare triple {8834#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {8834#false} is VALID [2018-11-23 12:13:55,427 INFO L273 TraceCheckUtils]: 32: Hoare triple {8834#false} assume !!(~i~1 < 40); {8834#false} is VALID [2018-11-23 12:13:55,428 INFO L273 TraceCheckUtils]: 33: Hoare triple {8834#false} assume !(~i~1 > 20); {8834#false} is VALID [2018-11-23 12:13:55,428 INFO L273 TraceCheckUtils]: 34: Hoare triple {8834#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {8834#false} is VALID [2018-11-23 12:13:55,428 INFO L273 TraceCheckUtils]: 35: Hoare triple {8834#false} assume !!(~i~1 < 40); {8834#false} is VALID [2018-11-23 12:13:55,428 INFO L273 TraceCheckUtils]: 36: Hoare triple {8834#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {8834#false} is VALID [2018-11-23 12:13:55,428 INFO L273 TraceCheckUtils]: 37: Hoare triple {8834#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {8834#false} is VALID [2018-11-23 12:13:55,428 INFO L273 TraceCheckUtils]: 38: Hoare triple {8834#false} assume !!(~i~1 < 40); {8834#false} is VALID [2018-11-23 12:13:55,428 INFO L273 TraceCheckUtils]: 39: Hoare triple {8834#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {8834#false} is VALID [2018-11-23 12:13:55,428 INFO L273 TraceCheckUtils]: 40: Hoare triple {8834#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {8834#false} is VALID [2018-11-23 12:13:55,429 INFO L273 TraceCheckUtils]: 41: Hoare triple {8834#false} assume !!(~i~1 < 40); {8834#false} is VALID [2018-11-23 12:13:55,429 INFO L273 TraceCheckUtils]: 42: Hoare triple {8834#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {8834#false} is VALID [2018-11-23 12:13:55,429 INFO L273 TraceCheckUtils]: 43: Hoare triple {8834#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {8834#false} is VALID [2018-11-23 12:13:55,429 INFO L273 TraceCheckUtils]: 44: Hoare triple {8834#false} assume !!(~i~1 < 40); {8834#false} is VALID [2018-11-23 12:13:55,429 INFO L273 TraceCheckUtils]: 45: Hoare triple {8834#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {8834#false} is VALID [2018-11-23 12:13:55,429 INFO L273 TraceCheckUtils]: 46: Hoare triple {8834#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {8834#false} is VALID [2018-11-23 12:13:55,429 INFO L273 TraceCheckUtils]: 47: Hoare triple {8834#false} assume !(~i~1 < 40); {8834#false} is VALID [2018-11-23 12:13:55,429 INFO L273 TraceCheckUtils]: 48: Hoare triple {8834#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {8834#false} is VALID [2018-11-23 12:13:55,429 INFO L273 TraceCheckUtils]: 49: Hoare triple {8834#false} assume true; {8834#false} is VALID [2018-11-23 12:13:55,430 INFO L268 TraceCheckUtils]: 50: Hoare quadruple {8834#false} {8834#false} #84#return; {8834#false} is VALID [2018-11-23 12:13:55,430 INFO L273 TraceCheckUtils]: 51: Hoare triple {8834#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {8834#false} is VALID [2018-11-23 12:13:55,430 INFO L256 TraceCheckUtils]: 52: Hoare triple {8834#false} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {8834#false} is VALID [2018-11-23 12:13:55,430 INFO L273 TraceCheckUtils]: 53: Hoare triple {8834#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {8834#false} is VALID [2018-11-23 12:13:55,430 INFO L273 TraceCheckUtils]: 54: Hoare triple {8834#false} assume !!(~i~1 < 40); {8834#false} is VALID [2018-11-23 12:13:55,430 INFO L273 TraceCheckUtils]: 55: Hoare triple {8834#false} assume !(~i~1 > 20); {8834#false} is VALID [2018-11-23 12:13:55,430 INFO L273 TraceCheckUtils]: 56: Hoare triple {8834#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {8834#false} is VALID [2018-11-23 12:13:55,430 INFO L273 TraceCheckUtils]: 57: Hoare triple {8834#false} assume !!(~i~1 < 40); {8834#false} is VALID [2018-11-23 12:13:55,431 INFO L273 TraceCheckUtils]: 58: Hoare triple {8834#false} assume !(~i~1 > 20); {8834#false} is VALID [2018-11-23 12:13:55,431 INFO L273 TraceCheckUtils]: 59: Hoare triple {8834#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {8834#false} is VALID [2018-11-23 12:13:55,431 INFO L273 TraceCheckUtils]: 60: Hoare triple {8834#false} assume !!(~i~1 < 40); {8834#false} is VALID [2018-11-23 12:13:55,431 INFO L273 TraceCheckUtils]: 61: Hoare triple {8834#false} assume !(~i~1 > 20); {8834#false} is VALID [2018-11-23 12:13:55,431 INFO L273 TraceCheckUtils]: 62: Hoare triple {8834#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {8834#false} is VALID [2018-11-23 12:13:55,431 INFO L273 TraceCheckUtils]: 63: Hoare triple {8834#false} assume !!(~i~1 < 40); {8834#false} is VALID [2018-11-23 12:13:55,431 INFO L273 TraceCheckUtils]: 64: Hoare triple {8834#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {8834#false} is VALID [2018-11-23 12:13:55,431 INFO L273 TraceCheckUtils]: 65: Hoare triple {8834#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {8834#false} is VALID [2018-11-23 12:13:55,432 INFO L273 TraceCheckUtils]: 66: Hoare triple {8834#false} assume !!(~i~1 < 40); {8834#false} is VALID [2018-11-23 12:13:55,432 INFO L273 TraceCheckUtils]: 67: Hoare triple {8834#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {8834#false} is VALID [2018-11-23 12:13:55,432 INFO L273 TraceCheckUtils]: 68: Hoare triple {8834#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {8834#false} is VALID [2018-11-23 12:13:55,432 INFO L273 TraceCheckUtils]: 69: Hoare triple {8834#false} assume !!(~i~1 < 40); {8834#false} is VALID [2018-11-23 12:13:55,432 INFO L273 TraceCheckUtils]: 70: Hoare triple {8834#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {8834#false} is VALID [2018-11-23 12:13:55,432 INFO L273 TraceCheckUtils]: 71: Hoare triple {8834#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {8834#false} is VALID [2018-11-23 12:13:55,432 INFO L273 TraceCheckUtils]: 72: Hoare triple {8834#false} assume !!(~i~1 < 40); {8834#false} is VALID [2018-11-23 12:13:55,432 INFO L273 TraceCheckUtils]: 73: Hoare triple {8834#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {8834#false} is VALID [2018-11-23 12:13:55,433 INFO L273 TraceCheckUtils]: 74: Hoare triple {8834#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {8834#false} is VALID [2018-11-23 12:13:55,433 INFO L273 TraceCheckUtils]: 75: Hoare triple {8834#false} assume !(~i~1 < 40); {8834#false} is VALID [2018-11-23 12:13:55,433 INFO L273 TraceCheckUtils]: 76: Hoare triple {8834#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {8834#false} is VALID [2018-11-23 12:13:55,433 INFO L273 TraceCheckUtils]: 77: Hoare triple {8834#false} assume true; {8834#false} is VALID [2018-11-23 12:13:55,433 INFO L268 TraceCheckUtils]: 78: Hoare quadruple {8834#false} {8834#false} #86#return; {8834#false} is VALID [2018-11-23 12:13:55,433 INFO L273 TraceCheckUtils]: 79: Hoare triple {8834#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {8834#false} is VALID [2018-11-23 12:13:55,433 INFO L273 TraceCheckUtils]: 80: Hoare triple {8834#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {8834#false} is VALID [2018-11-23 12:13:55,433 INFO L273 TraceCheckUtils]: 81: Hoare triple {8834#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {8834#false} is VALID [2018-11-23 12:13:55,433 INFO L273 TraceCheckUtils]: 82: Hoare triple {8834#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {8834#false} is VALID [2018-11-23 12:13:55,434 INFO L273 TraceCheckUtils]: 83: Hoare triple {8834#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {8834#false} is VALID [2018-11-23 12:13:55,434 INFO L273 TraceCheckUtils]: 84: Hoare triple {8834#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {8834#false} is VALID [2018-11-23 12:13:55,434 INFO L273 TraceCheckUtils]: 85: Hoare triple {8834#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {8834#false} is VALID [2018-11-23 12:13:55,434 INFO L273 TraceCheckUtils]: 86: Hoare triple {8834#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {8834#false} is VALID [2018-11-23 12:13:55,434 INFO L273 TraceCheckUtils]: 87: Hoare triple {8834#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {8834#false} is VALID [2018-11-23 12:13:55,434 INFO L273 TraceCheckUtils]: 88: Hoare triple {8834#false} assume !(~i~2 < 39); {8834#false} is VALID [2018-11-23 12:13:55,434 INFO L273 TraceCheckUtils]: 89: Hoare triple {8834#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {8834#false} is VALID [2018-11-23 12:13:55,434 INFO L256 TraceCheckUtils]: 90: Hoare triple {8834#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {8834#false} is VALID [2018-11-23 12:13:55,434 INFO L273 TraceCheckUtils]: 91: Hoare triple {8834#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {8834#false} is VALID [2018-11-23 12:13:55,435 INFO L273 TraceCheckUtils]: 92: Hoare triple {8834#false} assume !!(~i~1 < 40); {8834#false} is VALID [2018-11-23 12:13:55,435 INFO L273 TraceCheckUtils]: 93: Hoare triple {8834#false} assume !(~i~1 > 20); {8834#false} is VALID [2018-11-23 12:13:55,435 INFO L273 TraceCheckUtils]: 94: Hoare triple {8834#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {8834#false} is VALID [2018-11-23 12:13:55,435 INFO L273 TraceCheckUtils]: 95: Hoare triple {8834#false} assume !!(~i~1 < 40); {8834#false} is VALID [2018-11-23 12:13:55,435 INFO L273 TraceCheckUtils]: 96: Hoare triple {8834#false} assume !(~i~1 > 20); {8834#false} is VALID [2018-11-23 12:13:55,435 INFO L273 TraceCheckUtils]: 97: Hoare triple {8834#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {8834#false} is VALID [2018-11-23 12:13:55,435 INFO L273 TraceCheckUtils]: 98: Hoare triple {8834#false} assume !!(~i~1 < 40); {8834#false} is VALID [2018-11-23 12:13:55,435 INFO L273 TraceCheckUtils]: 99: Hoare triple {8834#false} assume !(~i~1 > 20); {8834#false} is VALID [2018-11-23 12:13:55,436 INFO L273 TraceCheckUtils]: 100: Hoare triple {8834#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {8834#false} is VALID [2018-11-23 12:13:55,436 INFO L273 TraceCheckUtils]: 101: Hoare triple {8834#false} assume !!(~i~1 < 40); {8834#false} is VALID [2018-11-23 12:13:55,436 INFO L273 TraceCheckUtils]: 102: Hoare triple {8834#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {8834#false} is VALID [2018-11-23 12:13:55,436 INFO L273 TraceCheckUtils]: 103: Hoare triple {8834#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {8834#false} is VALID [2018-11-23 12:13:55,436 INFO L273 TraceCheckUtils]: 104: Hoare triple {8834#false} assume !!(~i~1 < 40); {8834#false} is VALID [2018-11-23 12:13:55,436 INFO L273 TraceCheckUtils]: 105: Hoare triple {8834#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {8834#false} is VALID [2018-11-23 12:13:55,436 INFO L273 TraceCheckUtils]: 106: Hoare triple {8834#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {8834#false} is VALID [2018-11-23 12:13:55,436 INFO L273 TraceCheckUtils]: 107: Hoare triple {8834#false} assume !!(~i~1 < 40); {8834#false} is VALID [2018-11-23 12:13:55,436 INFO L273 TraceCheckUtils]: 108: Hoare triple {8834#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {8834#false} is VALID [2018-11-23 12:13:55,437 INFO L273 TraceCheckUtils]: 109: Hoare triple {8834#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {8834#false} is VALID [2018-11-23 12:13:55,437 INFO L273 TraceCheckUtils]: 110: Hoare triple {8834#false} assume !!(~i~1 < 40); {8834#false} is VALID [2018-11-23 12:13:55,437 INFO L273 TraceCheckUtils]: 111: Hoare triple {8834#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {8834#false} is VALID [2018-11-23 12:13:55,437 INFO L273 TraceCheckUtils]: 112: Hoare triple {8834#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {8834#false} is VALID [2018-11-23 12:13:55,437 INFO L273 TraceCheckUtils]: 113: Hoare triple {8834#false} assume !(~i~1 < 40); {8834#false} is VALID [2018-11-23 12:13:55,437 INFO L273 TraceCheckUtils]: 114: Hoare triple {8834#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {8834#false} is VALID [2018-11-23 12:13:55,437 INFO L273 TraceCheckUtils]: 115: Hoare triple {8834#false} assume true; {8834#false} is VALID [2018-11-23 12:13:55,437 INFO L268 TraceCheckUtils]: 116: Hoare quadruple {8834#false} {8834#false} #88#return; {8834#false} is VALID [2018-11-23 12:13:55,438 INFO L273 TraceCheckUtils]: 117: Hoare triple {8834#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {8834#false} is VALID [2018-11-23 12:13:55,438 INFO L273 TraceCheckUtils]: 118: Hoare triple {8834#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {8834#false} is VALID [2018-11-23 12:13:55,438 INFO L273 TraceCheckUtils]: 119: Hoare triple {8834#false} assume !false; {8834#false} is VALID [2018-11-23 12:13:55,443 INFO L134 CoverageAnalysis]: Checked inductivity of 760 backedges. 0 proven. 36 refuted. 0 times theorem prover too weak. 724 trivial. 0 not checked. [2018-11-23 12:13:55,462 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:13:55,462 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [9] total 9 [2018-11-23 12:13:55,463 INFO L78 Accepts]: Start accepts. Automaton has 9 states. Word has length 120 [2018-11-23 12:13:55,463 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:13:55,463 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states. [2018-11-23 12:13:55,508 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:13:55,508 INFO L459 AbstractCegarLoop]: Interpolant automaton has 9 states [2018-11-23 12:13:55,508 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2018-11-23 12:13:55,508 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=36, Invalid=36, Unknown=0, NotChecked=0, Total=72 [2018-11-23 12:13:55,509 INFO L87 Difference]: Start difference. First operand 69 states and 78 transitions. Second operand 9 states. [2018-11-23 12:13:56,096 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:56,096 INFO L93 Difference]: Finished difference Result 120 states and 138 transitions. [2018-11-23 12:13:56,096 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2018-11-23 12:13:56,097 INFO L78 Accepts]: Start accepts. Automaton has 9 states. Word has length 120 [2018-11-23 12:13:56,097 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:13:56,097 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 9 states. [2018-11-23 12:13:56,098 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 80 transitions. [2018-11-23 12:13:56,098 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 9 states. [2018-11-23 12:13:56,099 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 80 transitions. [2018-11-23 12:13:56,099 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states and 80 transitions. [2018-11-23 12:13:56,195 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 80 edges. 80 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:13:56,196 INFO L225 Difference]: With dead ends: 120 [2018-11-23 12:13:56,196 INFO L226 Difference]: Without dead ends: 72 [2018-11-23 12:13:56,197 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 119 GetRequests, 112 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=36, Invalid=36, Unknown=0, NotChecked=0, Total=72 [2018-11-23 12:13:56,197 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 72 states. [2018-11-23 12:13:56,228 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 72 to 71. [2018-11-23 12:13:56,228 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:13:56,228 INFO L82 GeneralOperation]: Start isEquivalent. First operand 72 states. Second operand 71 states. [2018-11-23 12:13:56,229 INFO L74 IsIncluded]: Start isIncluded. First operand 72 states. Second operand 71 states. [2018-11-23 12:13:56,229 INFO L87 Difference]: Start difference. First operand 72 states. Second operand 71 states. [2018-11-23 12:13:56,231 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:56,231 INFO L93 Difference]: Finished difference Result 72 states and 81 transitions. [2018-11-23 12:13:56,231 INFO L276 IsEmpty]: Start isEmpty. Operand 72 states and 81 transitions. [2018-11-23 12:13:56,232 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:13:56,232 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:13:56,232 INFO L74 IsIncluded]: Start isIncluded. First operand 71 states. Second operand 72 states. [2018-11-23 12:13:56,232 INFO L87 Difference]: Start difference. First operand 71 states. Second operand 72 states. [2018-11-23 12:13:56,233 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:56,233 INFO L93 Difference]: Finished difference Result 72 states and 81 transitions. [2018-11-23 12:13:56,234 INFO L276 IsEmpty]: Start isEmpty. Operand 72 states and 81 transitions. [2018-11-23 12:13:56,234 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:13:56,234 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:13:56,234 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:13:56,235 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:13:56,235 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 71 states. [2018-11-23 12:13:56,236 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 71 states to 71 states and 80 transitions. [2018-11-23 12:13:56,236 INFO L78 Accepts]: Start accepts. Automaton has 71 states and 80 transitions. Word has length 120 [2018-11-23 12:13:56,236 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:13:56,236 INFO L480 AbstractCegarLoop]: Abstraction has 71 states and 80 transitions. [2018-11-23 12:13:56,237 INFO L481 AbstractCegarLoop]: Interpolant automaton has 9 states. [2018-11-23 12:13:56,237 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 80 transitions. [2018-11-23 12:13:56,237 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 123 [2018-11-23 12:13:56,237 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:13:56,238 INFO L402 BasicCegarLoop]: trace histogram [21, 21, 12, 9, 7, 7, 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, 1, 1, 1, 1, 1] [2018-11-23 12:13:56,238 INFO L423 AbstractCegarLoop]: === Iteration 19 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:13:56,238 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:13:56,238 INFO L82 PathProgramCache]: Analyzing trace with hash 84946778, now seen corresponding path program 14 times [2018-11-23 12:13:56,238 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:13:56,239 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:13:56,239 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:13:56,239 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:13:56,240 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:13:56,252 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:13:56,252 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:13:56,252 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 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 20 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:13:56,267 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-23 12:13:56,322 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-23 12:13:56,323 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:13:56,357 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:13:56,358 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:13:56,878 INFO L256 TraceCheckUtils]: 0: Hoare triple {9615#true} call ULTIMATE.init(); {9615#true} is VALID [2018-11-23 12:13:56,878 INFO L273 TraceCheckUtils]: 1: Hoare triple {9615#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {9615#true} is VALID [2018-11-23 12:13:56,878 INFO L273 TraceCheckUtils]: 2: Hoare triple {9615#true} assume true; {9615#true} is VALID [2018-11-23 12:13:56,878 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {9615#true} {9615#true} #78#return; {9615#true} is VALID [2018-11-23 12:13:56,879 INFO L256 TraceCheckUtils]: 4: Hoare triple {9615#true} call #t~ret12 := main(); {9615#true} is VALID [2018-11-23 12:13:56,879 INFO L273 TraceCheckUtils]: 5: Hoare triple {9615#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {9615#true} is VALID [2018-11-23 12:13:56,879 INFO L256 TraceCheckUtils]: 6: Hoare triple {9615#true} call init_nondet(~#x~0.base, ~#x~0.offset); {9615#true} is VALID [2018-11-23 12:13:56,880 INFO L273 TraceCheckUtils]: 7: Hoare triple {9615#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {9641#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:13:56,880 INFO L273 TraceCheckUtils]: 8: Hoare triple {9641#(<= init_nondet_~i~0 0)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {9641#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:13:56,881 INFO L273 TraceCheckUtils]: 9: Hoare triple {9641#(<= init_nondet_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {9648#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:13:56,881 INFO L273 TraceCheckUtils]: 10: Hoare triple {9648#(<= init_nondet_~i~0 1)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {9648#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:13:56,881 INFO L273 TraceCheckUtils]: 11: Hoare triple {9648#(<= init_nondet_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {9655#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:13:56,882 INFO L273 TraceCheckUtils]: 12: Hoare triple {9655#(<= init_nondet_~i~0 2)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {9655#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:13:56,882 INFO L273 TraceCheckUtils]: 13: Hoare triple {9655#(<= init_nondet_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {9662#(<= init_nondet_~i~0 3)} is VALID [2018-11-23 12:13:56,883 INFO L273 TraceCheckUtils]: 14: Hoare triple {9662#(<= init_nondet_~i~0 3)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {9662#(<= init_nondet_~i~0 3)} is VALID [2018-11-23 12:13:56,884 INFO L273 TraceCheckUtils]: 15: Hoare triple {9662#(<= init_nondet_~i~0 3)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {9669#(<= init_nondet_~i~0 4)} is VALID [2018-11-23 12:13:56,884 INFO L273 TraceCheckUtils]: 16: Hoare triple {9669#(<= init_nondet_~i~0 4)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {9669#(<= init_nondet_~i~0 4)} is VALID [2018-11-23 12:13:56,885 INFO L273 TraceCheckUtils]: 17: Hoare triple {9669#(<= init_nondet_~i~0 4)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {9676#(<= init_nondet_~i~0 5)} is VALID [2018-11-23 12:13:56,885 INFO L273 TraceCheckUtils]: 18: Hoare triple {9676#(<= init_nondet_~i~0 5)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {9676#(<= init_nondet_~i~0 5)} is VALID [2018-11-23 12:13:56,886 INFO L273 TraceCheckUtils]: 19: Hoare triple {9676#(<= init_nondet_~i~0 5)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {9683#(<= init_nondet_~i~0 6)} is VALID [2018-11-23 12:13:56,887 INFO L273 TraceCheckUtils]: 20: Hoare triple {9683#(<= init_nondet_~i~0 6)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {9683#(<= init_nondet_~i~0 6)} is VALID [2018-11-23 12:13:56,888 INFO L273 TraceCheckUtils]: 21: Hoare triple {9683#(<= init_nondet_~i~0 6)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {9690#(<= init_nondet_~i~0 7)} is VALID [2018-11-23 12:13:56,888 INFO L273 TraceCheckUtils]: 22: Hoare triple {9690#(<= init_nondet_~i~0 7)} assume !(~i~0 < 40); {9616#false} is VALID [2018-11-23 12:13:56,888 INFO L273 TraceCheckUtils]: 23: Hoare triple {9616#false} assume true; {9616#false} is VALID [2018-11-23 12:13:56,889 INFO L268 TraceCheckUtils]: 24: Hoare quadruple {9616#false} {9615#true} #82#return; {9616#false} is VALID [2018-11-23 12:13:56,889 INFO L273 TraceCheckUtils]: 25: Hoare triple {9616#false} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {9616#false} is VALID [2018-11-23 12:13:56,889 INFO L256 TraceCheckUtils]: 26: Hoare triple {9616#false} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {9616#false} is VALID [2018-11-23 12:13:56,889 INFO L273 TraceCheckUtils]: 27: Hoare triple {9616#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {9616#false} is VALID [2018-11-23 12:13:56,889 INFO L273 TraceCheckUtils]: 28: Hoare triple {9616#false} assume !!(~i~1 < 40); {9616#false} is VALID [2018-11-23 12:13:56,890 INFO L273 TraceCheckUtils]: 29: Hoare triple {9616#false} assume !(~i~1 > 20); {9616#false} is VALID [2018-11-23 12:13:56,890 INFO L273 TraceCheckUtils]: 30: Hoare triple {9616#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {9616#false} is VALID [2018-11-23 12:13:56,890 INFO L273 TraceCheckUtils]: 31: Hoare triple {9616#false} assume !!(~i~1 < 40); {9616#false} is VALID [2018-11-23 12:13:56,890 INFO L273 TraceCheckUtils]: 32: Hoare triple {9616#false} assume !(~i~1 > 20); {9616#false} is VALID [2018-11-23 12:13:56,891 INFO L273 TraceCheckUtils]: 33: Hoare triple {9616#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {9616#false} is VALID [2018-11-23 12:13:56,891 INFO L273 TraceCheckUtils]: 34: Hoare triple {9616#false} assume !!(~i~1 < 40); {9616#false} is VALID [2018-11-23 12:13:56,891 INFO L273 TraceCheckUtils]: 35: Hoare triple {9616#false} assume !(~i~1 > 20); {9616#false} is VALID [2018-11-23 12:13:56,891 INFO L273 TraceCheckUtils]: 36: Hoare triple {9616#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {9616#false} is VALID [2018-11-23 12:13:56,891 INFO L273 TraceCheckUtils]: 37: Hoare triple {9616#false} assume !!(~i~1 < 40); {9616#false} is VALID [2018-11-23 12:13:56,892 INFO L273 TraceCheckUtils]: 38: Hoare triple {9616#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {9616#false} is VALID [2018-11-23 12:13:56,892 INFO L273 TraceCheckUtils]: 39: Hoare triple {9616#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {9616#false} is VALID [2018-11-23 12:13:56,892 INFO L273 TraceCheckUtils]: 40: Hoare triple {9616#false} assume !!(~i~1 < 40); {9616#false} is VALID [2018-11-23 12:13:56,892 INFO L273 TraceCheckUtils]: 41: Hoare triple {9616#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {9616#false} is VALID [2018-11-23 12:13:56,892 INFO L273 TraceCheckUtils]: 42: Hoare triple {9616#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {9616#false} is VALID [2018-11-23 12:13:56,892 INFO L273 TraceCheckUtils]: 43: Hoare triple {9616#false} assume !!(~i~1 < 40); {9616#false} is VALID [2018-11-23 12:13:56,892 INFO L273 TraceCheckUtils]: 44: Hoare triple {9616#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {9616#false} is VALID [2018-11-23 12:13:56,893 INFO L273 TraceCheckUtils]: 45: Hoare triple {9616#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {9616#false} is VALID [2018-11-23 12:13:56,893 INFO L273 TraceCheckUtils]: 46: Hoare triple {9616#false} assume !!(~i~1 < 40); {9616#false} is VALID [2018-11-23 12:13:56,893 INFO L273 TraceCheckUtils]: 47: Hoare triple {9616#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {9616#false} is VALID [2018-11-23 12:13:56,893 INFO L273 TraceCheckUtils]: 48: Hoare triple {9616#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {9616#false} is VALID [2018-11-23 12:13:56,893 INFO L273 TraceCheckUtils]: 49: Hoare triple {9616#false} assume !(~i~1 < 40); {9616#false} is VALID [2018-11-23 12:13:56,893 INFO L273 TraceCheckUtils]: 50: Hoare triple {9616#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {9616#false} is VALID [2018-11-23 12:13:56,893 INFO L273 TraceCheckUtils]: 51: Hoare triple {9616#false} assume true; {9616#false} is VALID [2018-11-23 12:13:56,893 INFO L268 TraceCheckUtils]: 52: Hoare quadruple {9616#false} {9616#false} #84#return; {9616#false} is VALID [2018-11-23 12:13:56,894 INFO L273 TraceCheckUtils]: 53: Hoare triple {9616#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {9616#false} is VALID [2018-11-23 12:13:56,894 INFO L256 TraceCheckUtils]: 54: Hoare triple {9616#false} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {9616#false} is VALID [2018-11-23 12:13:56,894 INFO L273 TraceCheckUtils]: 55: Hoare triple {9616#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {9616#false} is VALID [2018-11-23 12:13:56,894 INFO L273 TraceCheckUtils]: 56: Hoare triple {9616#false} assume !!(~i~1 < 40); {9616#false} is VALID [2018-11-23 12:13:56,894 INFO L273 TraceCheckUtils]: 57: Hoare triple {9616#false} assume !(~i~1 > 20); {9616#false} is VALID [2018-11-23 12:13:56,894 INFO L273 TraceCheckUtils]: 58: Hoare triple {9616#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {9616#false} is VALID [2018-11-23 12:13:56,894 INFO L273 TraceCheckUtils]: 59: Hoare triple {9616#false} assume !!(~i~1 < 40); {9616#false} is VALID [2018-11-23 12:13:56,894 INFO L273 TraceCheckUtils]: 60: Hoare triple {9616#false} assume !(~i~1 > 20); {9616#false} is VALID [2018-11-23 12:13:56,894 INFO L273 TraceCheckUtils]: 61: Hoare triple {9616#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {9616#false} is VALID [2018-11-23 12:13:56,895 INFO L273 TraceCheckUtils]: 62: Hoare triple {9616#false} assume !!(~i~1 < 40); {9616#false} is VALID [2018-11-23 12:13:56,895 INFO L273 TraceCheckUtils]: 63: Hoare triple {9616#false} assume !(~i~1 > 20); {9616#false} is VALID [2018-11-23 12:13:56,895 INFO L273 TraceCheckUtils]: 64: Hoare triple {9616#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {9616#false} is VALID [2018-11-23 12:13:56,895 INFO L273 TraceCheckUtils]: 65: Hoare triple {9616#false} assume !!(~i~1 < 40); {9616#false} is VALID [2018-11-23 12:13:56,895 INFO L273 TraceCheckUtils]: 66: Hoare triple {9616#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {9616#false} is VALID [2018-11-23 12:13:56,895 INFO L273 TraceCheckUtils]: 67: Hoare triple {9616#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {9616#false} is VALID [2018-11-23 12:13:56,895 INFO L273 TraceCheckUtils]: 68: Hoare triple {9616#false} assume !!(~i~1 < 40); {9616#false} is VALID [2018-11-23 12:13:56,895 INFO L273 TraceCheckUtils]: 69: Hoare triple {9616#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {9616#false} is VALID [2018-11-23 12:13:56,896 INFO L273 TraceCheckUtils]: 70: Hoare triple {9616#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {9616#false} is VALID [2018-11-23 12:13:56,896 INFO L273 TraceCheckUtils]: 71: Hoare triple {9616#false} assume !!(~i~1 < 40); {9616#false} is VALID [2018-11-23 12:13:56,896 INFO L273 TraceCheckUtils]: 72: Hoare triple {9616#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {9616#false} is VALID [2018-11-23 12:13:56,896 INFO L273 TraceCheckUtils]: 73: Hoare triple {9616#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {9616#false} is VALID [2018-11-23 12:13:56,896 INFO L273 TraceCheckUtils]: 74: Hoare triple {9616#false} assume !!(~i~1 < 40); {9616#false} is VALID [2018-11-23 12:13:56,896 INFO L273 TraceCheckUtils]: 75: Hoare triple {9616#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {9616#false} is VALID [2018-11-23 12:13:56,896 INFO L273 TraceCheckUtils]: 76: Hoare triple {9616#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {9616#false} is VALID [2018-11-23 12:13:56,896 INFO L273 TraceCheckUtils]: 77: Hoare triple {9616#false} assume !(~i~1 < 40); {9616#false} is VALID [2018-11-23 12:13:56,896 INFO L273 TraceCheckUtils]: 78: Hoare triple {9616#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {9616#false} is VALID [2018-11-23 12:13:56,897 INFO L273 TraceCheckUtils]: 79: Hoare triple {9616#false} assume true; {9616#false} is VALID [2018-11-23 12:13:56,897 INFO L268 TraceCheckUtils]: 80: Hoare quadruple {9616#false} {9616#false} #86#return; {9616#false} is VALID [2018-11-23 12:13:56,897 INFO L273 TraceCheckUtils]: 81: Hoare triple {9616#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {9616#false} is VALID [2018-11-23 12:13:56,897 INFO L273 TraceCheckUtils]: 82: Hoare triple {9616#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {9616#false} is VALID [2018-11-23 12:13:56,897 INFO L273 TraceCheckUtils]: 83: Hoare triple {9616#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {9616#false} is VALID [2018-11-23 12:13:56,897 INFO L273 TraceCheckUtils]: 84: Hoare triple {9616#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {9616#false} is VALID [2018-11-23 12:13:56,897 INFO L273 TraceCheckUtils]: 85: Hoare triple {9616#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {9616#false} is VALID [2018-11-23 12:13:56,897 INFO L273 TraceCheckUtils]: 86: Hoare triple {9616#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {9616#false} is VALID [2018-11-23 12:13:56,898 INFO L273 TraceCheckUtils]: 87: Hoare triple {9616#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {9616#false} is VALID [2018-11-23 12:13:56,898 INFO L273 TraceCheckUtils]: 88: Hoare triple {9616#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {9616#false} is VALID [2018-11-23 12:13:56,898 INFO L273 TraceCheckUtils]: 89: Hoare triple {9616#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {9616#false} is VALID [2018-11-23 12:13:56,898 INFO L273 TraceCheckUtils]: 90: Hoare triple {9616#false} assume !(~i~2 < 39); {9616#false} is VALID [2018-11-23 12:13:56,898 INFO L273 TraceCheckUtils]: 91: Hoare triple {9616#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {9616#false} is VALID [2018-11-23 12:13:56,898 INFO L256 TraceCheckUtils]: 92: Hoare triple {9616#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {9616#false} is VALID [2018-11-23 12:13:56,898 INFO L273 TraceCheckUtils]: 93: Hoare triple {9616#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {9616#false} is VALID [2018-11-23 12:13:56,898 INFO L273 TraceCheckUtils]: 94: Hoare triple {9616#false} assume !!(~i~1 < 40); {9616#false} is VALID [2018-11-23 12:13:56,898 INFO L273 TraceCheckUtils]: 95: Hoare triple {9616#false} assume !(~i~1 > 20); {9616#false} is VALID [2018-11-23 12:13:56,899 INFO L273 TraceCheckUtils]: 96: Hoare triple {9616#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {9616#false} is VALID [2018-11-23 12:13:56,899 INFO L273 TraceCheckUtils]: 97: Hoare triple {9616#false} assume !!(~i~1 < 40); {9616#false} is VALID [2018-11-23 12:13:56,899 INFO L273 TraceCheckUtils]: 98: Hoare triple {9616#false} assume !(~i~1 > 20); {9616#false} is VALID [2018-11-23 12:13:56,899 INFO L273 TraceCheckUtils]: 99: Hoare triple {9616#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {9616#false} is VALID [2018-11-23 12:13:56,899 INFO L273 TraceCheckUtils]: 100: Hoare triple {9616#false} assume !!(~i~1 < 40); {9616#false} is VALID [2018-11-23 12:13:56,899 INFO L273 TraceCheckUtils]: 101: Hoare triple {9616#false} assume !(~i~1 > 20); {9616#false} is VALID [2018-11-23 12:13:56,899 INFO L273 TraceCheckUtils]: 102: Hoare triple {9616#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {9616#false} is VALID [2018-11-23 12:13:56,899 INFO L273 TraceCheckUtils]: 103: Hoare triple {9616#false} assume !!(~i~1 < 40); {9616#false} is VALID [2018-11-23 12:13:56,900 INFO L273 TraceCheckUtils]: 104: Hoare triple {9616#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {9616#false} is VALID [2018-11-23 12:13:56,900 INFO L273 TraceCheckUtils]: 105: Hoare triple {9616#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {9616#false} is VALID [2018-11-23 12:13:56,900 INFO L273 TraceCheckUtils]: 106: Hoare triple {9616#false} assume !!(~i~1 < 40); {9616#false} is VALID [2018-11-23 12:13:56,900 INFO L273 TraceCheckUtils]: 107: Hoare triple {9616#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {9616#false} is VALID [2018-11-23 12:13:56,900 INFO L273 TraceCheckUtils]: 108: Hoare triple {9616#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {9616#false} is VALID [2018-11-23 12:13:56,900 INFO L273 TraceCheckUtils]: 109: Hoare triple {9616#false} assume !!(~i~1 < 40); {9616#false} is VALID [2018-11-23 12:13:56,900 INFO L273 TraceCheckUtils]: 110: Hoare triple {9616#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {9616#false} is VALID [2018-11-23 12:13:56,900 INFO L273 TraceCheckUtils]: 111: Hoare triple {9616#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {9616#false} is VALID [2018-11-23 12:13:56,900 INFO L273 TraceCheckUtils]: 112: Hoare triple {9616#false} assume !!(~i~1 < 40); {9616#false} is VALID [2018-11-23 12:13:56,901 INFO L273 TraceCheckUtils]: 113: Hoare triple {9616#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {9616#false} is VALID [2018-11-23 12:13:56,901 INFO L273 TraceCheckUtils]: 114: Hoare triple {9616#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {9616#false} is VALID [2018-11-23 12:13:56,901 INFO L273 TraceCheckUtils]: 115: Hoare triple {9616#false} assume !(~i~1 < 40); {9616#false} is VALID [2018-11-23 12:13:56,901 INFO L273 TraceCheckUtils]: 116: Hoare triple {9616#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {9616#false} is VALID [2018-11-23 12:13:56,901 INFO L273 TraceCheckUtils]: 117: Hoare triple {9616#false} assume true; {9616#false} is VALID [2018-11-23 12:13:56,901 INFO L268 TraceCheckUtils]: 118: Hoare quadruple {9616#false} {9616#false} #88#return; {9616#false} is VALID [2018-11-23 12:13:56,901 INFO L273 TraceCheckUtils]: 119: Hoare triple {9616#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {9616#false} is VALID [2018-11-23 12:13:56,901 INFO L273 TraceCheckUtils]: 120: Hoare triple {9616#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {9616#false} is VALID [2018-11-23 12:13:56,901 INFO L273 TraceCheckUtils]: 121: Hoare triple {9616#false} assume !false; {9616#false} is VALID [2018-11-23 12:13:56,907 INFO L134 CoverageAnalysis]: Checked inductivity of 773 backedges. 0 proven. 49 refuted. 0 times theorem prover too weak. 724 trivial. 0 not checked. [2018-11-23 12:13:56,926 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:13:56,926 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [10] total 10 [2018-11-23 12:13:56,927 INFO L78 Accepts]: Start accepts. Automaton has 10 states. Word has length 122 [2018-11-23 12:13:56,927 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:13:56,927 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states. [2018-11-23 12:13:56,973 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:13:56,973 INFO L459 AbstractCegarLoop]: Interpolant automaton has 10 states [2018-11-23 12:13:56,974 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2018-11-23 12:13:56,974 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=45, Invalid=45, Unknown=0, NotChecked=0, Total=90 [2018-11-23 12:13:56,974 INFO L87 Difference]: Start difference. First operand 71 states and 80 transitions. Second operand 10 states. [2018-11-23 12:13:57,216 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:57,216 INFO L93 Difference]: Finished difference Result 122 states and 140 transitions. [2018-11-23 12:13:57,216 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2018-11-23 12:13:57,216 INFO L78 Accepts]: Start accepts. Automaton has 10 states. Word has length 122 [2018-11-23 12:13:57,216 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:13:57,217 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2018-11-23 12:13:57,218 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 82 transitions. [2018-11-23 12:13:57,218 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2018-11-23 12:13:57,219 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 82 transitions. [2018-11-23 12:13:57,219 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 82 transitions. [2018-11-23 12:13:57,357 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-23 12:13:57,359 INFO L225 Difference]: With dead ends: 122 [2018-11-23 12:13:57,360 INFO L226 Difference]: Without dead ends: 74 [2018-11-23 12:13:57,361 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 121 GetRequests, 113 SyntacticMatches, 0 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=45, Invalid=45, Unknown=0, NotChecked=0, Total=90 [2018-11-23 12:13:57,361 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 74 states. [2018-11-23 12:13:57,395 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 74 to 73. [2018-11-23 12:13:57,395 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:13:57,395 INFO L82 GeneralOperation]: Start isEquivalent. First operand 74 states. Second operand 73 states. [2018-11-23 12:13:57,395 INFO L74 IsIncluded]: Start isIncluded. First operand 74 states. Second operand 73 states. [2018-11-23 12:13:57,395 INFO L87 Difference]: Start difference. First operand 74 states. Second operand 73 states. [2018-11-23 12:13:57,397 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:57,397 INFO L93 Difference]: Finished difference Result 74 states and 83 transitions. [2018-11-23 12:13:57,397 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 83 transitions. [2018-11-23 12:13:57,398 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:13:57,398 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:13:57,398 INFO L74 IsIncluded]: Start isIncluded. First operand 73 states. Second operand 74 states. [2018-11-23 12:13:57,398 INFO L87 Difference]: Start difference. First operand 73 states. Second operand 74 states. [2018-11-23 12:13:57,400 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:57,400 INFO L93 Difference]: Finished difference Result 74 states and 83 transitions. [2018-11-23 12:13:57,400 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 83 transitions. [2018-11-23 12:13:57,401 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:13:57,401 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:13:57,401 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:13:57,401 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:13:57,401 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 73 states. [2018-11-23 12:13:57,403 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 73 states to 73 states and 82 transitions. [2018-11-23 12:13:57,403 INFO L78 Accepts]: Start accepts. Automaton has 73 states and 82 transitions. Word has length 122 [2018-11-23 12:13:57,403 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:13:57,403 INFO L480 AbstractCegarLoop]: Abstraction has 73 states and 82 transitions. [2018-11-23 12:13:57,403 INFO L481 AbstractCegarLoop]: Interpolant automaton has 10 states. [2018-11-23 12:13:57,403 INFO L276 IsEmpty]: Start isEmpty. Operand 73 states and 82 transitions. [2018-11-23 12:13:57,404 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 125 [2018-11-23 12:13:57,404 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:13:57,404 INFO L402 BasicCegarLoop]: trace histogram [21, 21, 12, 9, 8, 8, 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, 1, 1, 1, 1, 1] [2018-11-23 12:13:57,405 INFO L423 AbstractCegarLoop]: === Iteration 20 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:13:57,405 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:13:57,405 INFO L82 PathProgramCache]: Analyzing trace with hash 815463068, now seen corresponding path program 15 times [2018-11-23 12:13:57,405 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:13:57,405 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:13:57,406 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:13:57,406 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:13:57,406 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:13:57,418 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:13:57,418 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:13:57,418 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 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 21 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:13:57,448 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-23 12:13:57,673 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 6 check-sat command(s) [2018-11-23 12:13:57,673 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:13:57,714 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:13:57,716 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:13:58,015 INFO L256 TraceCheckUtils]: 0: Hoare triple {10414#true} call ULTIMATE.init(); {10414#true} is VALID [2018-11-23 12:13:58,016 INFO L273 TraceCheckUtils]: 1: Hoare triple {10414#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {10414#true} is VALID [2018-11-23 12:13:58,016 INFO L273 TraceCheckUtils]: 2: Hoare triple {10414#true} assume true; {10414#true} is VALID [2018-11-23 12:13:58,016 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {10414#true} {10414#true} #78#return; {10414#true} is VALID [2018-11-23 12:13:58,016 INFO L256 TraceCheckUtils]: 4: Hoare triple {10414#true} call #t~ret12 := main(); {10414#true} is VALID [2018-11-23 12:13:58,017 INFO L273 TraceCheckUtils]: 5: Hoare triple {10414#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {10414#true} is VALID [2018-11-23 12:13:58,017 INFO L256 TraceCheckUtils]: 6: Hoare triple {10414#true} call init_nondet(~#x~0.base, ~#x~0.offset); {10414#true} is VALID [2018-11-23 12:13:58,017 INFO L273 TraceCheckUtils]: 7: Hoare triple {10414#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {10414#true} is VALID [2018-11-23 12:13:58,017 INFO L273 TraceCheckUtils]: 8: Hoare triple {10414#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {10414#true} is VALID [2018-11-23 12:13:58,017 INFO L273 TraceCheckUtils]: 9: Hoare triple {10414#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {10414#true} is VALID [2018-11-23 12:13:58,018 INFO L273 TraceCheckUtils]: 10: Hoare triple {10414#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {10414#true} is VALID [2018-11-23 12:13:58,018 INFO L273 TraceCheckUtils]: 11: Hoare triple {10414#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {10414#true} is VALID [2018-11-23 12:13:58,018 INFO L273 TraceCheckUtils]: 12: Hoare triple {10414#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {10414#true} is VALID [2018-11-23 12:13:58,018 INFO L273 TraceCheckUtils]: 13: Hoare triple {10414#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {10414#true} is VALID [2018-11-23 12:13:58,018 INFO L273 TraceCheckUtils]: 14: Hoare triple {10414#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {10414#true} is VALID [2018-11-23 12:13:58,018 INFO L273 TraceCheckUtils]: 15: Hoare triple {10414#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {10414#true} is VALID [2018-11-23 12:13:58,019 INFO L273 TraceCheckUtils]: 16: Hoare triple {10414#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {10414#true} is VALID [2018-11-23 12:13:58,019 INFO L273 TraceCheckUtils]: 17: Hoare triple {10414#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {10414#true} is VALID [2018-11-23 12:13:58,019 INFO L273 TraceCheckUtils]: 18: Hoare triple {10414#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {10414#true} is VALID [2018-11-23 12:13:58,019 INFO L273 TraceCheckUtils]: 19: Hoare triple {10414#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {10414#true} is VALID [2018-11-23 12:13:58,019 INFO L273 TraceCheckUtils]: 20: Hoare triple {10414#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {10414#true} is VALID [2018-11-23 12:13:58,019 INFO L273 TraceCheckUtils]: 21: Hoare triple {10414#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {10414#true} is VALID [2018-11-23 12:13:58,019 INFO L273 TraceCheckUtils]: 22: Hoare triple {10414#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {10414#true} is VALID [2018-11-23 12:13:58,020 INFO L273 TraceCheckUtils]: 23: Hoare triple {10414#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {10414#true} is VALID [2018-11-23 12:13:58,020 INFO L273 TraceCheckUtils]: 24: Hoare triple {10414#true} assume !(~i~0 < 40); {10414#true} is VALID [2018-11-23 12:13:58,020 INFO L273 TraceCheckUtils]: 25: Hoare triple {10414#true} assume true; {10414#true} is VALID [2018-11-23 12:13:58,020 INFO L268 TraceCheckUtils]: 26: Hoare quadruple {10414#true} {10414#true} #82#return; {10414#true} is VALID [2018-11-23 12:13:58,020 INFO L273 TraceCheckUtils]: 27: Hoare triple {10414#true} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {10414#true} is VALID [2018-11-23 12:13:58,020 INFO L256 TraceCheckUtils]: 28: Hoare triple {10414#true} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {10414#true} is VALID [2018-11-23 12:13:58,020 INFO L273 TraceCheckUtils]: 29: Hoare triple {10414#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {10414#true} is VALID [2018-11-23 12:13:58,021 INFO L273 TraceCheckUtils]: 30: Hoare triple {10414#true} assume !!(~i~1 < 40); {10414#true} is VALID [2018-11-23 12:13:58,021 INFO L273 TraceCheckUtils]: 31: Hoare triple {10414#true} assume !(~i~1 > 20); {10414#true} is VALID [2018-11-23 12:13:58,021 INFO L273 TraceCheckUtils]: 32: Hoare triple {10414#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {10414#true} is VALID [2018-11-23 12:13:58,021 INFO L273 TraceCheckUtils]: 33: Hoare triple {10414#true} assume !!(~i~1 < 40); {10414#true} is VALID [2018-11-23 12:13:58,021 INFO L273 TraceCheckUtils]: 34: Hoare triple {10414#true} assume !(~i~1 > 20); {10414#true} is VALID [2018-11-23 12:13:58,021 INFO L273 TraceCheckUtils]: 35: Hoare triple {10414#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {10414#true} is VALID [2018-11-23 12:13:58,022 INFO L273 TraceCheckUtils]: 36: Hoare triple {10414#true} assume !!(~i~1 < 40); {10414#true} is VALID [2018-11-23 12:13:58,022 INFO L273 TraceCheckUtils]: 37: Hoare triple {10414#true} assume !(~i~1 > 20); {10414#true} is VALID [2018-11-23 12:13:58,022 INFO L273 TraceCheckUtils]: 38: Hoare triple {10414#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {10414#true} is VALID [2018-11-23 12:13:58,022 INFO L273 TraceCheckUtils]: 39: Hoare triple {10414#true} assume !!(~i~1 < 40); {10414#true} is VALID [2018-11-23 12:13:58,022 INFO L273 TraceCheckUtils]: 40: Hoare triple {10414#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {10414#true} is VALID [2018-11-23 12:13:58,022 INFO L273 TraceCheckUtils]: 41: Hoare triple {10414#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {10414#true} is VALID [2018-11-23 12:13:58,022 INFO L273 TraceCheckUtils]: 42: Hoare triple {10414#true} assume !!(~i~1 < 40); {10414#true} is VALID [2018-11-23 12:13:58,023 INFO L273 TraceCheckUtils]: 43: Hoare triple {10414#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {10414#true} is VALID [2018-11-23 12:13:58,023 INFO L273 TraceCheckUtils]: 44: Hoare triple {10414#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {10414#true} is VALID [2018-11-23 12:13:58,023 INFO L273 TraceCheckUtils]: 45: Hoare triple {10414#true} assume !!(~i~1 < 40); {10414#true} is VALID [2018-11-23 12:13:58,023 INFO L273 TraceCheckUtils]: 46: Hoare triple {10414#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {10414#true} is VALID [2018-11-23 12:13:58,023 INFO L273 TraceCheckUtils]: 47: Hoare triple {10414#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {10414#true} is VALID [2018-11-23 12:13:58,023 INFO L273 TraceCheckUtils]: 48: Hoare triple {10414#true} assume !!(~i~1 < 40); {10414#true} is VALID [2018-11-23 12:13:58,023 INFO L273 TraceCheckUtils]: 49: Hoare triple {10414#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {10414#true} is VALID [2018-11-23 12:13:58,024 INFO L273 TraceCheckUtils]: 50: Hoare triple {10414#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {10414#true} is VALID [2018-11-23 12:13:58,024 INFO L273 TraceCheckUtils]: 51: Hoare triple {10414#true} assume !(~i~1 < 40); {10414#true} is VALID [2018-11-23 12:13:58,024 INFO L273 TraceCheckUtils]: 52: Hoare triple {10414#true} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {10414#true} is VALID [2018-11-23 12:13:58,024 INFO L273 TraceCheckUtils]: 53: Hoare triple {10414#true} assume true; {10414#true} is VALID [2018-11-23 12:13:58,024 INFO L268 TraceCheckUtils]: 54: Hoare quadruple {10414#true} {10414#true} #84#return; {10414#true} is VALID [2018-11-23 12:13:58,025 INFO L273 TraceCheckUtils]: 55: Hoare triple {10414#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {10414#true} is VALID [2018-11-23 12:13:58,025 INFO L256 TraceCheckUtils]: 56: Hoare triple {10414#true} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {10414#true} is VALID [2018-11-23 12:13:58,025 INFO L273 TraceCheckUtils]: 57: Hoare triple {10414#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {10414#true} is VALID [2018-11-23 12:13:58,025 INFO L273 TraceCheckUtils]: 58: Hoare triple {10414#true} assume !!(~i~1 < 40); {10414#true} is VALID [2018-11-23 12:13:58,025 INFO L273 TraceCheckUtils]: 59: Hoare triple {10414#true} assume !(~i~1 > 20); {10414#true} is VALID [2018-11-23 12:13:58,026 INFO L273 TraceCheckUtils]: 60: Hoare triple {10414#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {10414#true} is VALID [2018-11-23 12:13:58,026 INFO L273 TraceCheckUtils]: 61: Hoare triple {10414#true} assume !!(~i~1 < 40); {10414#true} is VALID [2018-11-23 12:13:58,026 INFO L273 TraceCheckUtils]: 62: Hoare triple {10414#true} assume !(~i~1 > 20); {10414#true} is VALID [2018-11-23 12:13:58,026 INFO L273 TraceCheckUtils]: 63: Hoare triple {10414#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {10414#true} is VALID [2018-11-23 12:13:58,026 INFO L273 TraceCheckUtils]: 64: Hoare triple {10414#true} assume !!(~i~1 < 40); {10414#true} is VALID [2018-11-23 12:13:58,027 INFO L273 TraceCheckUtils]: 65: Hoare triple {10414#true} assume !(~i~1 > 20); {10414#true} is VALID [2018-11-23 12:13:58,027 INFO L273 TraceCheckUtils]: 66: Hoare triple {10414#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {10414#true} is VALID [2018-11-23 12:13:58,027 INFO L273 TraceCheckUtils]: 67: Hoare triple {10414#true} assume !!(~i~1 < 40); {10414#true} is VALID [2018-11-23 12:13:58,027 INFO L273 TraceCheckUtils]: 68: Hoare triple {10414#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {10414#true} is VALID [2018-11-23 12:13:58,027 INFO L273 TraceCheckUtils]: 69: Hoare triple {10414#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {10414#true} is VALID [2018-11-23 12:13:58,028 INFO L273 TraceCheckUtils]: 70: Hoare triple {10414#true} assume !!(~i~1 < 40); {10414#true} is VALID [2018-11-23 12:13:58,028 INFO L273 TraceCheckUtils]: 71: Hoare triple {10414#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {10414#true} is VALID [2018-11-23 12:13:58,028 INFO L273 TraceCheckUtils]: 72: Hoare triple {10414#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {10414#true} is VALID [2018-11-23 12:13:58,028 INFO L273 TraceCheckUtils]: 73: Hoare triple {10414#true} assume !!(~i~1 < 40); {10414#true} is VALID [2018-11-23 12:13:58,028 INFO L273 TraceCheckUtils]: 74: Hoare triple {10414#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {10414#true} is VALID [2018-11-23 12:13:58,029 INFO L273 TraceCheckUtils]: 75: Hoare triple {10414#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {10414#true} is VALID [2018-11-23 12:13:58,029 INFO L273 TraceCheckUtils]: 76: Hoare triple {10414#true} assume !!(~i~1 < 40); {10414#true} is VALID [2018-11-23 12:13:58,029 INFO L273 TraceCheckUtils]: 77: Hoare triple {10414#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {10414#true} is VALID [2018-11-23 12:13:58,029 INFO L273 TraceCheckUtils]: 78: Hoare triple {10414#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {10414#true} is VALID [2018-11-23 12:13:58,029 INFO L273 TraceCheckUtils]: 79: Hoare triple {10414#true} assume !(~i~1 < 40); {10414#true} is VALID [2018-11-23 12:13:58,030 INFO L273 TraceCheckUtils]: 80: Hoare triple {10414#true} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {10414#true} is VALID [2018-11-23 12:13:58,030 INFO L273 TraceCheckUtils]: 81: Hoare triple {10414#true} assume true; {10414#true} is VALID [2018-11-23 12:13:58,030 INFO L268 TraceCheckUtils]: 82: Hoare quadruple {10414#true} {10414#true} #86#return; {10414#true} is VALID [2018-11-23 12:13:58,035 INFO L273 TraceCheckUtils]: 83: Hoare triple {10414#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {10668#(<= main_~i~2 0)} is VALID [2018-11-23 12:13:58,036 INFO L273 TraceCheckUtils]: 84: Hoare triple {10668#(<= main_~i~2 0)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {10668#(<= main_~i~2 0)} is VALID [2018-11-23 12:13:58,036 INFO L273 TraceCheckUtils]: 85: Hoare triple {10668#(<= main_~i~2 0)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {10675#(<= main_~i~2 1)} is VALID [2018-11-23 12:13:58,038 INFO L273 TraceCheckUtils]: 86: Hoare triple {10675#(<= main_~i~2 1)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {10675#(<= main_~i~2 1)} is VALID [2018-11-23 12:13:58,038 INFO L273 TraceCheckUtils]: 87: Hoare triple {10675#(<= main_~i~2 1)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {10682#(<= main_~i~2 2)} is VALID [2018-11-23 12:13:58,041 INFO L273 TraceCheckUtils]: 88: Hoare triple {10682#(<= main_~i~2 2)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {10682#(<= main_~i~2 2)} is VALID [2018-11-23 12:13:58,041 INFO L273 TraceCheckUtils]: 89: Hoare triple {10682#(<= main_~i~2 2)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {10689#(<= main_~i~2 3)} is VALID [2018-11-23 12:13:58,042 INFO L273 TraceCheckUtils]: 90: Hoare triple {10689#(<= main_~i~2 3)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {10689#(<= main_~i~2 3)} is VALID [2018-11-23 12:13:58,042 INFO L273 TraceCheckUtils]: 91: Hoare triple {10689#(<= main_~i~2 3)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {10696#(<= main_~i~2 4)} is VALID [2018-11-23 12:13:58,043 INFO L273 TraceCheckUtils]: 92: Hoare triple {10696#(<= main_~i~2 4)} assume !(~i~2 < 39); {10415#false} is VALID [2018-11-23 12:13:58,043 INFO L273 TraceCheckUtils]: 93: Hoare triple {10415#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {10415#false} is VALID [2018-11-23 12:13:58,043 INFO L256 TraceCheckUtils]: 94: Hoare triple {10415#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {10415#false} is VALID [2018-11-23 12:13:58,043 INFO L273 TraceCheckUtils]: 95: Hoare triple {10415#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {10415#false} is VALID [2018-11-23 12:13:58,043 INFO L273 TraceCheckUtils]: 96: Hoare triple {10415#false} assume !!(~i~1 < 40); {10415#false} is VALID [2018-11-23 12:13:58,044 INFO L273 TraceCheckUtils]: 97: Hoare triple {10415#false} assume !(~i~1 > 20); {10415#false} is VALID [2018-11-23 12:13:58,044 INFO L273 TraceCheckUtils]: 98: Hoare triple {10415#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {10415#false} is VALID [2018-11-23 12:13:58,044 INFO L273 TraceCheckUtils]: 99: Hoare triple {10415#false} assume !!(~i~1 < 40); {10415#false} is VALID [2018-11-23 12:13:58,044 INFO L273 TraceCheckUtils]: 100: Hoare triple {10415#false} assume !(~i~1 > 20); {10415#false} is VALID [2018-11-23 12:13:58,044 INFO L273 TraceCheckUtils]: 101: Hoare triple {10415#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {10415#false} is VALID [2018-11-23 12:13:58,044 INFO L273 TraceCheckUtils]: 102: Hoare triple {10415#false} assume !!(~i~1 < 40); {10415#false} is VALID [2018-11-23 12:13:58,045 INFO L273 TraceCheckUtils]: 103: Hoare triple {10415#false} assume !(~i~1 > 20); {10415#false} is VALID [2018-11-23 12:13:58,045 INFO L273 TraceCheckUtils]: 104: Hoare triple {10415#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {10415#false} is VALID [2018-11-23 12:13:58,045 INFO L273 TraceCheckUtils]: 105: Hoare triple {10415#false} assume !!(~i~1 < 40); {10415#false} is VALID [2018-11-23 12:13:58,045 INFO L273 TraceCheckUtils]: 106: Hoare triple {10415#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {10415#false} is VALID [2018-11-23 12:13:58,046 INFO L273 TraceCheckUtils]: 107: Hoare triple {10415#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {10415#false} is VALID [2018-11-23 12:13:58,046 INFO L273 TraceCheckUtils]: 108: Hoare triple {10415#false} assume !!(~i~1 < 40); {10415#false} is VALID [2018-11-23 12:13:58,046 INFO L273 TraceCheckUtils]: 109: Hoare triple {10415#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {10415#false} is VALID [2018-11-23 12:13:58,046 INFO L273 TraceCheckUtils]: 110: Hoare triple {10415#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {10415#false} is VALID [2018-11-23 12:13:58,047 INFO L273 TraceCheckUtils]: 111: Hoare triple {10415#false} assume !!(~i~1 < 40); {10415#false} is VALID [2018-11-23 12:13:58,047 INFO L273 TraceCheckUtils]: 112: Hoare triple {10415#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {10415#false} is VALID [2018-11-23 12:13:58,047 INFO L273 TraceCheckUtils]: 113: Hoare triple {10415#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {10415#false} is VALID [2018-11-23 12:13:58,047 INFO L273 TraceCheckUtils]: 114: Hoare triple {10415#false} assume !!(~i~1 < 40); {10415#false} is VALID [2018-11-23 12:13:58,047 INFO L273 TraceCheckUtils]: 115: Hoare triple {10415#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {10415#false} is VALID [2018-11-23 12:13:58,047 INFO L273 TraceCheckUtils]: 116: Hoare triple {10415#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {10415#false} is VALID [2018-11-23 12:13:58,047 INFO L273 TraceCheckUtils]: 117: Hoare triple {10415#false} assume !(~i~1 < 40); {10415#false} is VALID [2018-11-23 12:13:58,048 INFO L273 TraceCheckUtils]: 118: Hoare triple {10415#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {10415#false} is VALID [2018-11-23 12:13:58,048 INFO L273 TraceCheckUtils]: 119: Hoare triple {10415#false} assume true; {10415#false} is VALID [2018-11-23 12:13:58,048 INFO L268 TraceCheckUtils]: 120: Hoare quadruple {10415#false} {10415#false} #88#return; {10415#false} is VALID [2018-11-23 12:13:58,048 INFO L273 TraceCheckUtils]: 121: Hoare triple {10415#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {10415#false} is VALID [2018-11-23 12:13:58,048 INFO L273 TraceCheckUtils]: 122: Hoare triple {10415#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {10415#false} is VALID [2018-11-23 12:13:58,048 INFO L273 TraceCheckUtils]: 123: Hoare triple {10415#false} assume !false; {10415#false} is VALID [2018-11-23 12:13:58,061 INFO L134 CoverageAnalysis]: Checked inductivity of 788 backedges. 332 proven. 16 refuted. 0 times theorem prover too weak. 440 trivial. 0 not checked. [2018-11-23 12:13:58,081 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:13:58,081 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [7] total 7 [2018-11-23 12:13:58,081 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 124 [2018-11-23 12:13:58,082 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:13:58,082 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states. [2018-11-23 12:13:58,138 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-23 12:13:58,138 INFO L459 AbstractCegarLoop]: Interpolant automaton has 7 states [2018-11-23 12:13:58,139 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2018-11-23 12:13:58,139 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=21, Unknown=0, NotChecked=0, Total=42 [2018-11-23 12:13:58,139 INFO L87 Difference]: Start difference. First operand 73 states and 82 transitions. Second operand 7 states. [2018-11-23 12:13:58,324 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:58,324 INFO L93 Difference]: Finished difference Result 108 states and 123 transitions. [2018-11-23 12:13:58,324 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2018-11-23 12:13:58,324 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 124 [2018-11-23 12:13:58,325 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:13:58,325 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2018-11-23 12:13:58,326 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 64 transitions. [2018-11-23 12:13:58,326 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2018-11-23 12:13:58,327 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 64 transitions. [2018-11-23 12:13:58,327 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 64 transitions. [2018-11-23 12:13:58,403 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 64 edges. 64 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:13:58,405 INFO L225 Difference]: With dead ends: 108 [2018-11-23 12:13:58,405 INFO L226 Difference]: Without dead ends: 76 [2018-11-23 12:13:58,406 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 123 GetRequests, 118 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=21, Invalid=21, Unknown=0, NotChecked=0, Total=42 [2018-11-23 12:13:58,406 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 76 states. [2018-11-23 12:13:58,435 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 76 to 75. [2018-11-23 12:13:58,435 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:13:58,436 INFO L82 GeneralOperation]: Start isEquivalent. First operand 76 states. Second operand 75 states. [2018-11-23 12:13:58,436 INFO L74 IsIncluded]: Start isIncluded. First operand 76 states. Second operand 75 states. [2018-11-23 12:13:58,436 INFO L87 Difference]: Start difference. First operand 76 states. Second operand 75 states. [2018-11-23 12:13:58,438 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:58,438 INFO L93 Difference]: Finished difference Result 76 states and 85 transitions. [2018-11-23 12:13:58,438 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 85 transitions. [2018-11-23 12:13:58,438 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:13:58,439 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:13:58,439 INFO L74 IsIncluded]: Start isIncluded. First operand 75 states. Second operand 76 states. [2018-11-23 12:13:58,439 INFO L87 Difference]: Start difference. First operand 75 states. Second operand 76 states. [2018-11-23 12:13:58,441 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:58,441 INFO L93 Difference]: Finished difference Result 76 states and 85 transitions. [2018-11-23 12:13:58,441 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 85 transitions. [2018-11-23 12:13:58,441 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:13:58,441 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:13:58,442 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:13:58,442 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:13:58,442 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 75 states. [2018-11-23 12:13:58,443 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 75 states to 75 states and 84 transitions. [2018-11-23 12:13:58,444 INFO L78 Accepts]: Start accepts. Automaton has 75 states and 84 transitions. Word has length 124 [2018-11-23 12:13:58,444 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:13:58,444 INFO L480 AbstractCegarLoop]: Abstraction has 75 states and 84 transitions. [2018-11-23 12:13:58,444 INFO L481 AbstractCegarLoop]: Interpolant automaton has 7 states. [2018-11-23 12:13:58,445 INFO L276 IsEmpty]: Start isEmpty. Operand 75 states and 84 transitions. [2018-11-23 12:13:58,445 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 127 [2018-11-23 12:13:58,445 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:13:58,446 INFO L402 BasicCegarLoop]: trace histogram [21, 21, 12, 9, 8, 8, 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, 1, 1, 1, 1, 1] [2018-11-23 12:13:58,446 INFO L423 AbstractCegarLoop]: === Iteration 21 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:13:58,446 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:13:58,447 INFO L82 PathProgramCache]: Analyzing trace with hash -1563058114, now seen corresponding path program 16 times [2018-11-23 12:13:58,447 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:13:58,447 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:13:58,448 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:13:58,448 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:13:58,448 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:13:58,461 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:13:58,462 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:13:58,462 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 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 22 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:13:58,484 INFO L103 rtionOrderModulation]: Keeping assertion order TERMS_WITH_SMALL_CONSTANTS_FIRST [2018-11-23 12:13:58,561 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2018-11-23 12:13:58,561 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:13:58,593 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:13:58,594 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:13:58,902 INFO L256 TraceCheckUtils]: 0: Hoare triple {11203#true} call ULTIMATE.init(); {11203#true} is VALID [2018-11-23 12:13:58,902 INFO L273 TraceCheckUtils]: 1: Hoare triple {11203#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {11203#true} is VALID [2018-11-23 12:13:58,902 INFO L273 TraceCheckUtils]: 2: Hoare triple {11203#true} assume true; {11203#true} is VALID [2018-11-23 12:13:58,902 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {11203#true} {11203#true} #78#return; {11203#true} is VALID [2018-11-23 12:13:58,903 INFO L256 TraceCheckUtils]: 4: Hoare triple {11203#true} call #t~ret12 := main(); {11203#true} is VALID [2018-11-23 12:13:58,903 INFO L273 TraceCheckUtils]: 5: Hoare triple {11203#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {11203#true} is VALID [2018-11-23 12:13:58,903 INFO L256 TraceCheckUtils]: 6: Hoare triple {11203#true} call init_nondet(~#x~0.base, ~#x~0.offset); {11203#true} is VALID [2018-11-23 12:13:58,905 INFO L273 TraceCheckUtils]: 7: Hoare triple {11203#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {11229#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:13:58,905 INFO L273 TraceCheckUtils]: 8: Hoare triple {11229#(<= init_nondet_~i~0 0)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {11229#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:13:58,907 INFO L273 TraceCheckUtils]: 9: Hoare triple {11229#(<= init_nondet_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {11236#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:13:58,907 INFO L273 TraceCheckUtils]: 10: Hoare triple {11236#(<= init_nondet_~i~0 1)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {11236#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:13:58,910 INFO L273 TraceCheckUtils]: 11: Hoare triple {11236#(<= init_nondet_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {11243#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:13:58,910 INFO L273 TraceCheckUtils]: 12: Hoare triple {11243#(<= init_nondet_~i~0 2)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {11243#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:13:58,913 INFO L273 TraceCheckUtils]: 13: Hoare triple {11243#(<= init_nondet_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {11250#(<= init_nondet_~i~0 3)} is VALID [2018-11-23 12:13:58,913 INFO L273 TraceCheckUtils]: 14: Hoare triple {11250#(<= init_nondet_~i~0 3)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {11250#(<= init_nondet_~i~0 3)} is VALID [2018-11-23 12:13:58,916 INFO L273 TraceCheckUtils]: 15: Hoare triple {11250#(<= init_nondet_~i~0 3)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {11257#(<= init_nondet_~i~0 4)} is VALID [2018-11-23 12:13:58,916 INFO L273 TraceCheckUtils]: 16: Hoare triple {11257#(<= init_nondet_~i~0 4)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {11257#(<= init_nondet_~i~0 4)} is VALID [2018-11-23 12:13:58,919 INFO L273 TraceCheckUtils]: 17: Hoare triple {11257#(<= init_nondet_~i~0 4)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {11264#(<= init_nondet_~i~0 5)} is VALID [2018-11-23 12:13:58,919 INFO L273 TraceCheckUtils]: 18: Hoare triple {11264#(<= init_nondet_~i~0 5)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {11264#(<= init_nondet_~i~0 5)} is VALID [2018-11-23 12:13:58,922 INFO L273 TraceCheckUtils]: 19: Hoare triple {11264#(<= init_nondet_~i~0 5)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {11271#(<= init_nondet_~i~0 6)} is VALID [2018-11-23 12:13:58,922 INFO L273 TraceCheckUtils]: 20: Hoare triple {11271#(<= init_nondet_~i~0 6)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {11271#(<= init_nondet_~i~0 6)} is VALID [2018-11-23 12:13:58,925 INFO L273 TraceCheckUtils]: 21: Hoare triple {11271#(<= init_nondet_~i~0 6)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {11278#(<= init_nondet_~i~0 7)} is VALID [2018-11-23 12:13:58,925 INFO L273 TraceCheckUtils]: 22: Hoare triple {11278#(<= init_nondet_~i~0 7)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {11278#(<= init_nondet_~i~0 7)} is VALID [2018-11-23 12:13:58,928 INFO L273 TraceCheckUtils]: 23: Hoare triple {11278#(<= init_nondet_~i~0 7)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {11285#(<= init_nondet_~i~0 8)} is VALID [2018-11-23 12:13:58,928 INFO L273 TraceCheckUtils]: 24: Hoare triple {11285#(<= init_nondet_~i~0 8)} assume !(~i~0 < 40); {11204#false} is VALID [2018-11-23 12:13:58,928 INFO L273 TraceCheckUtils]: 25: Hoare triple {11204#false} assume true; {11204#false} is VALID [2018-11-23 12:13:58,928 INFO L268 TraceCheckUtils]: 26: Hoare quadruple {11204#false} {11203#true} #82#return; {11204#false} is VALID [2018-11-23 12:13:58,928 INFO L273 TraceCheckUtils]: 27: Hoare triple {11204#false} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {11204#false} is VALID [2018-11-23 12:13:58,929 INFO L256 TraceCheckUtils]: 28: Hoare triple {11204#false} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {11204#false} is VALID [2018-11-23 12:13:58,929 INFO L273 TraceCheckUtils]: 29: Hoare triple {11204#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {11204#false} is VALID [2018-11-23 12:13:58,929 INFO L273 TraceCheckUtils]: 30: Hoare triple {11204#false} assume !!(~i~1 < 40); {11204#false} is VALID [2018-11-23 12:13:58,929 INFO L273 TraceCheckUtils]: 31: Hoare triple {11204#false} assume !(~i~1 > 20); {11204#false} is VALID [2018-11-23 12:13:58,929 INFO L273 TraceCheckUtils]: 32: Hoare triple {11204#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {11204#false} is VALID [2018-11-23 12:13:58,929 INFO L273 TraceCheckUtils]: 33: Hoare triple {11204#false} assume !!(~i~1 < 40); {11204#false} is VALID [2018-11-23 12:13:58,929 INFO L273 TraceCheckUtils]: 34: Hoare triple {11204#false} assume !(~i~1 > 20); {11204#false} is VALID [2018-11-23 12:13:58,929 INFO L273 TraceCheckUtils]: 35: Hoare triple {11204#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {11204#false} is VALID [2018-11-23 12:13:58,930 INFO L273 TraceCheckUtils]: 36: Hoare triple {11204#false} assume !!(~i~1 < 40); {11204#false} is VALID [2018-11-23 12:13:58,930 INFO L273 TraceCheckUtils]: 37: Hoare triple {11204#false} assume !(~i~1 > 20); {11204#false} is VALID [2018-11-23 12:13:58,930 INFO L273 TraceCheckUtils]: 38: Hoare triple {11204#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {11204#false} is VALID [2018-11-23 12:13:58,930 INFO L273 TraceCheckUtils]: 39: Hoare triple {11204#false} assume !!(~i~1 < 40); {11204#false} is VALID [2018-11-23 12:13:58,930 INFO L273 TraceCheckUtils]: 40: Hoare triple {11204#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {11204#false} is VALID [2018-11-23 12:13:58,930 INFO L273 TraceCheckUtils]: 41: Hoare triple {11204#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {11204#false} is VALID [2018-11-23 12:13:58,930 INFO L273 TraceCheckUtils]: 42: Hoare triple {11204#false} assume !!(~i~1 < 40); {11204#false} is VALID [2018-11-23 12:13:58,930 INFO L273 TraceCheckUtils]: 43: Hoare triple {11204#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {11204#false} is VALID [2018-11-23 12:13:58,930 INFO L273 TraceCheckUtils]: 44: Hoare triple {11204#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {11204#false} is VALID [2018-11-23 12:13:58,931 INFO L273 TraceCheckUtils]: 45: Hoare triple {11204#false} assume !!(~i~1 < 40); {11204#false} is VALID [2018-11-23 12:13:58,931 INFO L273 TraceCheckUtils]: 46: Hoare triple {11204#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {11204#false} is VALID [2018-11-23 12:13:58,931 INFO L273 TraceCheckUtils]: 47: Hoare triple {11204#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {11204#false} is VALID [2018-11-23 12:13:58,931 INFO L273 TraceCheckUtils]: 48: Hoare triple {11204#false} assume !!(~i~1 < 40); {11204#false} is VALID [2018-11-23 12:13:58,931 INFO L273 TraceCheckUtils]: 49: Hoare triple {11204#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {11204#false} is VALID [2018-11-23 12:13:58,931 INFO L273 TraceCheckUtils]: 50: Hoare triple {11204#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {11204#false} is VALID [2018-11-23 12:13:58,931 INFO L273 TraceCheckUtils]: 51: Hoare triple {11204#false} assume !(~i~1 < 40); {11204#false} is VALID [2018-11-23 12:13:58,931 INFO L273 TraceCheckUtils]: 52: Hoare triple {11204#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {11204#false} is VALID [2018-11-23 12:13:58,932 INFO L273 TraceCheckUtils]: 53: Hoare triple {11204#false} assume true; {11204#false} is VALID [2018-11-23 12:13:58,932 INFO L268 TraceCheckUtils]: 54: Hoare quadruple {11204#false} {11204#false} #84#return; {11204#false} is VALID [2018-11-23 12:13:58,932 INFO L273 TraceCheckUtils]: 55: Hoare triple {11204#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {11204#false} is VALID [2018-11-23 12:13:58,932 INFO L256 TraceCheckUtils]: 56: Hoare triple {11204#false} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {11204#false} is VALID [2018-11-23 12:13:58,932 INFO L273 TraceCheckUtils]: 57: Hoare triple {11204#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {11204#false} is VALID [2018-11-23 12:13:58,932 INFO L273 TraceCheckUtils]: 58: Hoare triple {11204#false} assume !!(~i~1 < 40); {11204#false} is VALID [2018-11-23 12:13:58,932 INFO L273 TraceCheckUtils]: 59: Hoare triple {11204#false} assume !(~i~1 > 20); {11204#false} is VALID [2018-11-23 12:13:58,932 INFO L273 TraceCheckUtils]: 60: Hoare triple {11204#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {11204#false} is VALID [2018-11-23 12:13:58,932 INFO L273 TraceCheckUtils]: 61: Hoare triple {11204#false} assume !!(~i~1 < 40); {11204#false} is VALID [2018-11-23 12:13:58,933 INFO L273 TraceCheckUtils]: 62: Hoare triple {11204#false} assume !(~i~1 > 20); {11204#false} is VALID [2018-11-23 12:13:58,933 INFO L273 TraceCheckUtils]: 63: Hoare triple {11204#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {11204#false} is VALID [2018-11-23 12:13:58,933 INFO L273 TraceCheckUtils]: 64: Hoare triple {11204#false} assume !!(~i~1 < 40); {11204#false} is VALID [2018-11-23 12:13:58,933 INFO L273 TraceCheckUtils]: 65: Hoare triple {11204#false} assume !(~i~1 > 20); {11204#false} is VALID [2018-11-23 12:13:58,933 INFO L273 TraceCheckUtils]: 66: Hoare triple {11204#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {11204#false} is VALID [2018-11-23 12:13:58,933 INFO L273 TraceCheckUtils]: 67: Hoare triple {11204#false} assume !!(~i~1 < 40); {11204#false} is VALID [2018-11-23 12:13:58,933 INFO L273 TraceCheckUtils]: 68: Hoare triple {11204#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {11204#false} is VALID [2018-11-23 12:13:58,933 INFO L273 TraceCheckUtils]: 69: Hoare triple {11204#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {11204#false} is VALID [2018-11-23 12:13:58,933 INFO L273 TraceCheckUtils]: 70: Hoare triple {11204#false} assume !!(~i~1 < 40); {11204#false} is VALID [2018-11-23 12:13:58,934 INFO L273 TraceCheckUtils]: 71: Hoare triple {11204#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {11204#false} is VALID [2018-11-23 12:13:58,934 INFO L273 TraceCheckUtils]: 72: Hoare triple {11204#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {11204#false} is VALID [2018-11-23 12:13:58,934 INFO L273 TraceCheckUtils]: 73: Hoare triple {11204#false} assume !!(~i~1 < 40); {11204#false} is VALID [2018-11-23 12:13:58,934 INFO L273 TraceCheckUtils]: 74: Hoare triple {11204#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {11204#false} is VALID [2018-11-23 12:13:58,934 INFO L273 TraceCheckUtils]: 75: Hoare triple {11204#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {11204#false} is VALID [2018-11-23 12:13:58,934 INFO L273 TraceCheckUtils]: 76: Hoare triple {11204#false} assume !!(~i~1 < 40); {11204#false} is VALID [2018-11-23 12:13:58,934 INFO L273 TraceCheckUtils]: 77: Hoare triple {11204#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {11204#false} is VALID [2018-11-23 12:13:58,934 INFO L273 TraceCheckUtils]: 78: Hoare triple {11204#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {11204#false} is VALID [2018-11-23 12:13:58,935 INFO L273 TraceCheckUtils]: 79: Hoare triple {11204#false} assume !(~i~1 < 40); {11204#false} is VALID [2018-11-23 12:13:58,935 INFO L273 TraceCheckUtils]: 80: Hoare triple {11204#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {11204#false} is VALID [2018-11-23 12:13:58,935 INFO L273 TraceCheckUtils]: 81: Hoare triple {11204#false} assume true; {11204#false} is VALID [2018-11-23 12:13:58,935 INFO L268 TraceCheckUtils]: 82: Hoare quadruple {11204#false} {11204#false} #86#return; {11204#false} is VALID [2018-11-23 12:13:58,935 INFO L273 TraceCheckUtils]: 83: Hoare triple {11204#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {11204#false} is VALID [2018-11-23 12:13:58,935 INFO L273 TraceCheckUtils]: 84: Hoare triple {11204#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {11204#false} is VALID [2018-11-23 12:13:58,935 INFO L273 TraceCheckUtils]: 85: Hoare triple {11204#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {11204#false} is VALID [2018-11-23 12:13:58,935 INFO L273 TraceCheckUtils]: 86: Hoare triple {11204#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {11204#false} is VALID [2018-11-23 12:13:58,935 INFO L273 TraceCheckUtils]: 87: Hoare triple {11204#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {11204#false} is VALID [2018-11-23 12:13:58,936 INFO L273 TraceCheckUtils]: 88: Hoare triple {11204#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {11204#false} is VALID [2018-11-23 12:13:58,936 INFO L273 TraceCheckUtils]: 89: Hoare triple {11204#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {11204#false} is VALID [2018-11-23 12:13:58,936 INFO L273 TraceCheckUtils]: 90: Hoare triple {11204#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {11204#false} is VALID [2018-11-23 12:13:58,936 INFO L273 TraceCheckUtils]: 91: Hoare triple {11204#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {11204#false} is VALID [2018-11-23 12:13:58,936 INFO L273 TraceCheckUtils]: 92: Hoare triple {11204#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {11204#false} is VALID [2018-11-23 12:13:58,936 INFO L273 TraceCheckUtils]: 93: Hoare triple {11204#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {11204#false} is VALID [2018-11-23 12:13:58,936 INFO L273 TraceCheckUtils]: 94: Hoare triple {11204#false} assume !(~i~2 < 39); {11204#false} is VALID [2018-11-23 12:13:58,936 INFO L273 TraceCheckUtils]: 95: Hoare triple {11204#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {11204#false} is VALID [2018-11-23 12:13:58,937 INFO L256 TraceCheckUtils]: 96: Hoare triple {11204#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {11204#false} is VALID [2018-11-23 12:13:58,937 INFO L273 TraceCheckUtils]: 97: Hoare triple {11204#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {11204#false} is VALID [2018-11-23 12:13:58,937 INFO L273 TraceCheckUtils]: 98: Hoare triple {11204#false} assume !!(~i~1 < 40); {11204#false} is VALID [2018-11-23 12:13:58,937 INFO L273 TraceCheckUtils]: 99: Hoare triple {11204#false} assume !(~i~1 > 20); {11204#false} is VALID [2018-11-23 12:13:58,937 INFO L273 TraceCheckUtils]: 100: Hoare triple {11204#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {11204#false} is VALID [2018-11-23 12:13:58,937 INFO L273 TraceCheckUtils]: 101: Hoare triple {11204#false} assume !!(~i~1 < 40); {11204#false} is VALID [2018-11-23 12:13:58,937 INFO L273 TraceCheckUtils]: 102: Hoare triple {11204#false} assume !(~i~1 > 20); {11204#false} is VALID [2018-11-23 12:13:58,937 INFO L273 TraceCheckUtils]: 103: Hoare triple {11204#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {11204#false} is VALID [2018-11-23 12:13:58,937 INFO L273 TraceCheckUtils]: 104: Hoare triple {11204#false} assume !!(~i~1 < 40); {11204#false} is VALID [2018-11-23 12:13:58,938 INFO L273 TraceCheckUtils]: 105: Hoare triple {11204#false} assume !(~i~1 > 20); {11204#false} is VALID [2018-11-23 12:13:58,938 INFO L273 TraceCheckUtils]: 106: Hoare triple {11204#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {11204#false} is VALID [2018-11-23 12:13:58,938 INFO L273 TraceCheckUtils]: 107: Hoare triple {11204#false} assume !!(~i~1 < 40); {11204#false} is VALID [2018-11-23 12:13:58,938 INFO L273 TraceCheckUtils]: 108: Hoare triple {11204#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {11204#false} is VALID [2018-11-23 12:13:58,938 INFO L273 TraceCheckUtils]: 109: Hoare triple {11204#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {11204#false} is VALID [2018-11-23 12:13:58,938 INFO L273 TraceCheckUtils]: 110: Hoare triple {11204#false} assume !!(~i~1 < 40); {11204#false} is VALID [2018-11-23 12:13:58,938 INFO L273 TraceCheckUtils]: 111: Hoare triple {11204#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {11204#false} is VALID [2018-11-23 12:13:58,938 INFO L273 TraceCheckUtils]: 112: Hoare triple {11204#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {11204#false} is VALID [2018-11-23 12:13:58,939 INFO L273 TraceCheckUtils]: 113: Hoare triple {11204#false} assume !!(~i~1 < 40); {11204#false} is VALID [2018-11-23 12:13:58,939 INFO L273 TraceCheckUtils]: 114: Hoare triple {11204#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {11204#false} is VALID [2018-11-23 12:13:58,939 INFO L273 TraceCheckUtils]: 115: Hoare triple {11204#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {11204#false} is VALID [2018-11-23 12:13:58,939 INFO L273 TraceCheckUtils]: 116: Hoare triple {11204#false} assume !!(~i~1 < 40); {11204#false} is VALID [2018-11-23 12:13:58,939 INFO L273 TraceCheckUtils]: 117: Hoare triple {11204#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {11204#false} is VALID [2018-11-23 12:13:58,939 INFO L273 TraceCheckUtils]: 118: Hoare triple {11204#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {11204#false} is VALID [2018-11-23 12:13:58,939 INFO L273 TraceCheckUtils]: 119: Hoare triple {11204#false} assume !(~i~1 < 40); {11204#false} is VALID [2018-11-23 12:13:58,939 INFO L273 TraceCheckUtils]: 120: Hoare triple {11204#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {11204#false} is VALID [2018-11-23 12:13:58,939 INFO L273 TraceCheckUtils]: 121: Hoare triple {11204#false} assume true; {11204#false} is VALID [2018-11-23 12:13:58,940 INFO L268 TraceCheckUtils]: 122: Hoare quadruple {11204#false} {11204#false} #88#return; {11204#false} is VALID [2018-11-23 12:13:58,940 INFO L273 TraceCheckUtils]: 123: Hoare triple {11204#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {11204#false} is VALID [2018-11-23 12:13:58,940 INFO L273 TraceCheckUtils]: 124: Hoare triple {11204#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {11204#false} is VALID [2018-11-23 12:13:58,940 INFO L273 TraceCheckUtils]: 125: Hoare triple {11204#false} assume !false; {11204#false} is VALID [2018-11-23 12:13:58,946 INFO L134 CoverageAnalysis]: Checked inductivity of 797 backedges. 0 proven. 64 refuted. 0 times theorem prover too weak. 733 trivial. 0 not checked. [2018-11-23 12:13:58,964 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:13:58,965 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [11] total 11 [2018-11-23 12:13:58,965 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 126 [2018-11-23 12:13:58,965 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:13:58,966 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states. [2018-11-23 12:13:59,206 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-23 12:13:59,206 INFO L459 AbstractCegarLoop]: Interpolant automaton has 11 states [2018-11-23 12:13:59,206 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2018-11-23 12:13:59,206 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=55, Invalid=55, Unknown=0, NotChecked=0, Total=110 [2018-11-23 12:13:59,207 INFO L87 Difference]: Start difference. First operand 75 states and 84 transitions. Second operand 11 states. [2018-11-23 12:13:59,380 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:59,381 INFO L93 Difference]: Finished difference Result 128 states and 146 transitions. [2018-11-23 12:13:59,381 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2018-11-23 12:13:59,381 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 126 [2018-11-23 12:13:59,381 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:13:59,381 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2018-11-23 12:13:59,382 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 84 transitions. [2018-11-23 12:13:59,382 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2018-11-23 12:13:59,383 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 84 transitions. [2018-11-23 12:13:59,383 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 84 transitions. [2018-11-23 12:13:59,465 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-23 12:13:59,466 INFO L225 Difference]: With dead ends: 128 [2018-11-23 12:13:59,467 INFO L226 Difference]: Without dead ends: 78 [2018-11-23 12:13:59,467 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 125 GetRequests, 116 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=55, Invalid=55, Unknown=0, NotChecked=0, Total=110 [2018-11-23 12:13:59,468 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 78 states. [2018-11-23 12:13:59,490 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 78 to 77. [2018-11-23 12:13:59,491 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:13:59,491 INFO L82 GeneralOperation]: Start isEquivalent. First operand 78 states. Second operand 77 states. [2018-11-23 12:13:59,491 INFO L74 IsIncluded]: Start isIncluded. First operand 78 states. Second operand 77 states. [2018-11-23 12:13:59,491 INFO L87 Difference]: Start difference. First operand 78 states. Second operand 77 states. [2018-11-23 12:13:59,493 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:59,493 INFO L93 Difference]: Finished difference Result 78 states and 87 transitions. [2018-11-23 12:13:59,493 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 87 transitions. [2018-11-23 12:13:59,494 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:13:59,494 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:13:59,494 INFO L74 IsIncluded]: Start isIncluded. First operand 77 states. Second operand 78 states. [2018-11-23 12:13:59,494 INFO L87 Difference]: Start difference. First operand 77 states. Second operand 78 states. [2018-11-23 12:13:59,496 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:13:59,496 INFO L93 Difference]: Finished difference Result 78 states and 87 transitions. [2018-11-23 12:13:59,496 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 87 transitions. [2018-11-23 12:13:59,497 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:13:59,497 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:13:59,497 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:13:59,497 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:13:59,497 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 77 states. [2018-11-23 12:13:59,498 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 77 states to 77 states and 86 transitions. [2018-11-23 12:13:59,499 INFO L78 Accepts]: Start accepts. Automaton has 77 states and 86 transitions. Word has length 126 [2018-11-23 12:13:59,499 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:13:59,499 INFO L480 AbstractCegarLoop]: Abstraction has 77 states and 86 transitions. [2018-11-23 12:13:59,499 INFO L481 AbstractCegarLoop]: Interpolant automaton has 11 states. [2018-11-23 12:13:59,499 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states and 86 transitions. [2018-11-23 12:13:59,500 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 129 [2018-11-23 12:13:59,500 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:13:59,500 INFO L402 BasicCegarLoop]: trace histogram [21, 21, 12, 9, 9, 9, 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, 1, 1, 1, 1, 1] [2018-11-23 12:13:59,501 INFO L423 AbstractCegarLoop]: === Iteration 22 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:13:59,501 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:13:59,501 INFO L82 PathProgramCache]: Analyzing trace with hash 698677888, now seen corresponding path program 17 times [2018-11-23 12:13:59,501 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:13:59,501 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:13:59,502 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:13:59,502 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:13:59,502 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:13:59,516 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:13:59,516 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:13:59,516 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 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 23 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:13:59,527 INFO L103 rtionOrderModulation]: Keeping assertion order INSIDE_LOOP_FIRST1 [2018-11-23 12:13:59,959 INFO L249 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 7 check-sat command(s) [2018-11-23 12:13:59,959 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:13:59,991 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:13:59,992 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:14:00,154 INFO L256 TraceCheckUtils]: 0: Hoare triple {12038#true} call ULTIMATE.init(); {12038#true} is VALID [2018-11-23 12:14:00,154 INFO L273 TraceCheckUtils]: 1: Hoare triple {12038#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {12038#true} is VALID [2018-11-23 12:14:00,154 INFO L273 TraceCheckUtils]: 2: Hoare triple {12038#true} assume true; {12038#true} is VALID [2018-11-23 12:14:00,155 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {12038#true} {12038#true} #78#return; {12038#true} is VALID [2018-11-23 12:14:00,155 INFO L256 TraceCheckUtils]: 4: Hoare triple {12038#true} call #t~ret12 := main(); {12038#true} is VALID [2018-11-23 12:14:00,155 INFO L273 TraceCheckUtils]: 5: Hoare triple {12038#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {12038#true} is VALID [2018-11-23 12:14:00,155 INFO L256 TraceCheckUtils]: 6: Hoare triple {12038#true} call init_nondet(~#x~0.base, ~#x~0.offset); {12038#true} is VALID [2018-11-23 12:14:00,155 INFO L273 TraceCheckUtils]: 7: Hoare triple {12038#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {12038#true} is VALID [2018-11-23 12:14:00,156 INFO L273 TraceCheckUtils]: 8: Hoare triple {12038#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {12038#true} is VALID [2018-11-23 12:14:00,156 INFO L273 TraceCheckUtils]: 9: Hoare triple {12038#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12038#true} is VALID [2018-11-23 12:14:00,156 INFO L273 TraceCheckUtils]: 10: Hoare triple {12038#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {12038#true} is VALID [2018-11-23 12:14:00,156 INFO L273 TraceCheckUtils]: 11: Hoare triple {12038#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12038#true} is VALID [2018-11-23 12:14:00,156 INFO L273 TraceCheckUtils]: 12: Hoare triple {12038#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {12038#true} is VALID [2018-11-23 12:14:00,156 INFO L273 TraceCheckUtils]: 13: Hoare triple {12038#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12038#true} is VALID [2018-11-23 12:14:00,157 INFO L273 TraceCheckUtils]: 14: Hoare triple {12038#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {12038#true} is VALID [2018-11-23 12:14:00,157 INFO L273 TraceCheckUtils]: 15: Hoare triple {12038#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12038#true} is VALID [2018-11-23 12:14:00,157 INFO L273 TraceCheckUtils]: 16: Hoare triple {12038#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {12038#true} is VALID [2018-11-23 12:14:00,157 INFO L273 TraceCheckUtils]: 17: Hoare triple {12038#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12038#true} is VALID [2018-11-23 12:14:00,157 INFO L273 TraceCheckUtils]: 18: Hoare triple {12038#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {12038#true} is VALID [2018-11-23 12:14:00,157 INFO L273 TraceCheckUtils]: 19: Hoare triple {12038#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12038#true} is VALID [2018-11-23 12:14:00,157 INFO L273 TraceCheckUtils]: 20: Hoare triple {12038#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {12038#true} is VALID [2018-11-23 12:14:00,157 INFO L273 TraceCheckUtils]: 21: Hoare triple {12038#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12038#true} is VALID [2018-11-23 12:14:00,157 INFO L273 TraceCheckUtils]: 22: Hoare triple {12038#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {12038#true} is VALID [2018-11-23 12:14:00,158 INFO L273 TraceCheckUtils]: 23: Hoare triple {12038#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12038#true} is VALID [2018-11-23 12:14:00,158 INFO L273 TraceCheckUtils]: 24: Hoare triple {12038#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {12038#true} is VALID [2018-11-23 12:14:00,158 INFO L273 TraceCheckUtils]: 25: Hoare triple {12038#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12038#true} is VALID [2018-11-23 12:14:00,158 INFO L273 TraceCheckUtils]: 26: Hoare triple {12038#true} assume !(~i~0 < 40); {12038#true} is VALID [2018-11-23 12:14:00,158 INFO L273 TraceCheckUtils]: 27: Hoare triple {12038#true} assume true; {12038#true} is VALID [2018-11-23 12:14:00,158 INFO L268 TraceCheckUtils]: 28: Hoare quadruple {12038#true} {12038#true} #82#return; {12038#true} is VALID [2018-11-23 12:14:00,158 INFO L273 TraceCheckUtils]: 29: Hoare triple {12038#true} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {12038#true} is VALID [2018-11-23 12:14:00,158 INFO L256 TraceCheckUtils]: 30: Hoare triple {12038#true} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {12038#true} is VALID [2018-11-23 12:14:00,159 INFO L273 TraceCheckUtils]: 31: Hoare triple {12038#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {12038#true} is VALID [2018-11-23 12:14:00,159 INFO L273 TraceCheckUtils]: 32: Hoare triple {12038#true} assume !!(~i~1 < 40); {12038#true} is VALID [2018-11-23 12:14:00,159 INFO L273 TraceCheckUtils]: 33: Hoare triple {12038#true} assume !(~i~1 > 20); {12038#true} is VALID [2018-11-23 12:14:00,159 INFO L273 TraceCheckUtils]: 34: Hoare triple {12038#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {12038#true} is VALID [2018-11-23 12:14:00,159 INFO L273 TraceCheckUtils]: 35: Hoare triple {12038#true} assume !!(~i~1 < 40); {12038#true} is VALID [2018-11-23 12:14:00,159 INFO L273 TraceCheckUtils]: 36: Hoare triple {12038#true} assume !(~i~1 > 20); {12038#true} is VALID [2018-11-23 12:14:00,159 INFO L273 TraceCheckUtils]: 37: Hoare triple {12038#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {12038#true} is VALID [2018-11-23 12:14:00,159 INFO L273 TraceCheckUtils]: 38: Hoare triple {12038#true} assume !!(~i~1 < 40); {12038#true} is VALID [2018-11-23 12:14:00,160 INFO L273 TraceCheckUtils]: 39: Hoare triple {12038#true} assume !(~i~1 > 20); {12160#(<= rangesum_~i~1 20)} is VALID [2018-11-23 12:14:00,160 INFO L273 TraceCheckUtils]: 40: Hoare triple {12160#(<= rangesum_~i~1 20)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {12164#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:14:00,161 INFO L273 TraceCheckUtils]: 41: Hoare triple {12164#(<= rangesum_~i~1 21)} assume !!(~i~1 < 40); {12164#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:14:00,161 INFO L273 TraceCheckUtils]: 42: Hoare triple {12164#(<= rangesum_~i~1 21)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {12164#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:14:00,161 INFO L273 TraceCheckUtils]: 43: Hoare triple {12164#(<= rangesum_~i~1 21)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {12174#(<= rangesum_~i~1 22)} is VALID [2018-11-23 12:14:00,162 INFO L273 TraceCheckUtils]: 44: Hoare triple {12174#(<= rangesum_~i~1 22)} assume !!(~i~1 < 40); {12174#(<= rangesum_~i~1 22)} is VALID [2018-11-23 12:14:00,162 INFO L273 TraceCheckUtils]: 45: Hoare triple {12174#(<= rangesum_~i~1 22)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {12174#(<= rangesum_~i~1 22)} is VALID [2018-11-23 12:14:00,162 INFO L273 TraceCheckUtils]: 46: Hoare triple {12174#(<= rangesum_~i~1 22)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {12184#(<= rangesum_~i~1 23)} is VALID [2018-11-23 12:14:00,163 INFO L273 TraceCheckUtils]: 47: Hoare triple {12184#(<= rangesum_~i~1 23)} assume !!(~i~1 < 40); {12184#(<= rangesum_~i~1 23)} is VALID [2018-11-23 12:14:00,163 INFO L273 TraceCheckUtils]: 48: Hoare triple {12184#(<= rangesum_~i~1 23)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {12184#(<= rangesum_~i~1 23)} is VALID [2018-11-23 12:14:00,164 INFO L273 TraceCheckUtils]: 49: Hoare triple {12184#(<= rangesum_~i~1 23)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {12194#(<= rangesum_~i~1 24)} is VALID [2018-11-23 12:14:00,164 INFO L273 TraceCheckUtils]: 50: Hoare triple {12194#(<= rangesum_~i~1 24)} assume !!(~i~1 < 40); {12194#(<= rangesum_~i~1 24)} is VALID [2018-11-23 12:14:00,164 INFO L273 TraceCheckUtils]: 51: Hoare triple {12194#(<= rangesum_~i~1 24)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {12194#(<= rangesum_~i~1 24)} is VALID [2018-11-23 12:14:00,165 INFO L273 TraceCheckUtils]: 52: Hoare triple {12194#(<= rangesum_~i~1 24)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {12204#(<= rangesum_~i~1 25)} is VALID [2018-11-23 12:14:00,165 INFO L273 TraceCheckUtils]: 53: Hoare triple {12204#(<= rangesum_~i~1 25)} assume !(~i~1 < 40); {12039#false} is VALID [2018-11-23 12:14:00,166 INFO L273 TraceCheckUtils]: 54: Hoare triple {12039#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {12039#false} is VALID [2018-11-23 12:14:00,166 INFO L273 TraceCheckUtils]: 55: Hoare triple {12039#false} assume true; {12039#false} is VALID [2018-11-23 12:14:00,166 INFO L268 TraceCheckUtils]: 56: Hoare quadruple {12039#false} {12038#true} #84#return; {12039#false} is VALID [2018-11-23 12:14:00,166 INFO L273 TraceCheckUtils]: 57: Hoare triple {12039#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {12039#false} is VALID [2018-11-23 12:14:00,166 INFO L256 TraceCheckUtils]: 58: Hoare triple {12039#false} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {12039#false} is VALID [2018-11-23 12:14:00,167 INFO L273 TraceCheckUtils]: 59: Hoare triple {12039#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {12039#false} is VALID [2018-11-23 12:14:00,167 INFO L273 TraceCheckUtils]: 60: Hoare triple {12039#false} assume !!(~i~1 < 40); {12039#false} is VALID [2018-11-23 12:14:00,167 INFO L273 TraceCheckUtils]: 61: Hoare triple {12039#false} assume !(~i~1 > 20); {12039#false} is VALID [2018-11-23 12:14:00,167 INFO L273 TraceCheckUtils]: 62: Hoare triple {12039#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {12039#false} is VALID [2018-11-23 12:14:00,167 INFO L273 TraceCheckUtils]: 63: Hoare triple {12039#false} assume !!(~i~1 < 40); {12039#false} is VALID [2018-11-23 12:14:00,168 INFO L273 TraceCheckUtils]: 64: Hoare triple {12039#false} assume !(~i~1 > 20); {12039#false} is VALID [2018-11-23 12:14:00,168 INFO L273 TraceCheckUtils]: 65: Hoare triple {12039#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {12039#false} is VALID [2018-11-23 12:14:00,168 INFO L273 TraceCheckUtils]: 66: Hoare triple {12039#false} assume !!(~i~1 < 40); {12039#false} is VALID [2018-11-23 12:14:00,168 INFO L273 TraceCheckUtils]: 67: Hoare triple {12039#false} assume !(~i~1 > 20); {12039#false} is VALID [2018-11-23 12:14:00,168 INFO L273 TraceCheckUtils]: 68: Hoare triple {12039#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {12039#false} is VALID [2018-11-23 12:14:00,169 INFO L273 TraceCheckUtils]: 69: Hoare triple {12039#false} assume !!(~i~1 < 40); {12039#false} is VALID [2018-11-23 12:14:00,169 INFO L273 TraceCheckUtils]: 70: Hoare triple {12039#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {12039#false} is VALID [2018-11-23 12:14:00,169 INFO L273 TraceCheckUtils]: 71: Hoare triple {12039#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {12039#false} is VALID [2018-11-23 12:14:00,169 INFO L273 TraceCheckUtils]: 72: Hoare triple {12039#false} assume !!(~i~1 < 40); {12039#false} is VALID [2018-11-23 12:14:00,169 INFO L273 TraceCheckUtils]: 73: Hoare triple {12039#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {12039#false} is VALID [2018-11-23 12:14:00,169 INFO L273 TraceCheckUtils]: 74: Hoare triple {12039#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {12039#false} is VALID [2018-11-23 12:14:00,170 INFO L273 TraceCheckUtils]: 75: Hoare triple {12039#false} assume !!(~i~1 < 40); {12039#false} is VALID [2018-11-23 12:14:00,170 INFO L273 TraceCheckUtils]: 76: Hoare triple {12039#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {12039#false} is VALID [2018-11-23 12:14:00,170 INFO L273 TraceCheckUtils]: 77: Hoare triple {12039#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {12039#false} is VALID [2018-11-23 12:14:00,170 INFO L273 TraceCheckUtils]: 78: Hoare triple {12039#false} assume !!(~i~1 < 40); {12039#false} is VALID [2018-11-23 12:14:00,170 INFO L273 TraceCheckUtils]: 79: Hoare triple {12039#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {12039#false} is VALID [2018-11-23 12:14:00,170 INFO L273 TraceCheckUtils]: 80: Hoare triple {12039#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {12039#false} is VALID [2018-11-23 12:14:00,171 INFO L273 TraceCheckUtils]: 81: Hoare triple {12039#false} assume !(~i~1 < 40); {12039#false} is VALID [2018-11-23 12:14:00,171 INFO L273 TraceCheckUtils]: 82: Hoare triple {12039#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {12039#false} is VALID [2018-11-23 12:14:00,171 INFO L273 TraceCheckUtils]: 83: Hoare triple {12039#false} assume true; {12039#false} is VALID [2018-11-23 12:14:00,171 INFO L268 TraceCheckUtils]: 84: Hoare quadruple {12039#false} {12039#false} #86#return; {12039#false} is VALID [2018-11-23 12:14:00,171 INFO L273 TraceCheckUtils]: 85: Hoare triple {12039#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {12039#false} is VALID [2018-11-23 12:14:00,171 INFO L273 TraceCheckUtils]: 86: Hoare triple {12039#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {12039#false} is VALID [2018-11-23 12:14:00,171 INFO L273 TraceCheckUtils]: 87: Hoare triple {12039#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {12039#false} is VALID [2018-11-23 12:14:00,171 INFO L273 TraceCheckUtils]: 88: Hoare triple {12039#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {12039#false} is VALID [2018-11-23 12:14:00,172 INFO L273 TraceCheckUtils]: 89: Hoare triple {12039#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {12039#false} is VALID [2018-11-23 12:14:00,172 INFO L273 TraceCheckUtils]: 90: Hoare triple {12039#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {12039#false} is VALID [2018-11-23 12:14:00,172 INFO L273 TraceCheckUtils]: 91: Hoare triple {12039#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {12039#false} is VALID [2018-11-23 12:14:00,172 INFO L273 TraceCheckUtils]: 92: Hoare triple {12039#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {12039#false} is VALID [2018-11-23 12:14:00,172 INFO L273 TraceCheckUtils]: 93: Hoare triple {12039#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {12039#false} is VALID [2018-11-23 12:14:00,172 INFO L273 TraceCheckUtils]: 94: Hoare triple {12039#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {12039#false} is VALID [2018-11-23 12:14:00,172 INFO L273 TraceCheckUtils]: 95: Hoare triple {12039#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {12039#false} is VALID [2018-11-23 12:14:00,172 INFO L273 TraceCheckUtils]: 96: Hoare triple {12039#false} assume !(~i~2 < 39); {12039#false} is VALID [2018-11-23 12:14:00,172 INFO L273 TraceCheckUtils]: 97: Hoare triple {12039#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {12039#false} is VALID [2018-11-23 12:14:00,173 INFO L256 TraceCheckUtils]: 98: Hoare triple {12039#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {12039#false} is VALID [2018-11-23 12:14:00,173 INFO L273 TraceCheckUtils]: 99: Hoare triple {12039#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {12039#false} is VALID [2018-11-23 12:14:00,173 INFO L273 TraceCheckUtils]: 100: Hoare triple {12039#false} assume !!(~i~1 < 40); {12039#false} is VALID [2018-11-23 12:14:00,173 INFO L273 TraceCheckUtils]: 101: Hoare triple {12039#false} assume !(~i~1 > 20); {12039#false} is VALID [2018-11-23 12:14:00,173 INFO L273 TraceCheckUtils]: 102: Hoare triple {12039#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {12039#false} is VALID [2018-11-23 12:14:00,173 INFO L273 TraceCheckUtils]: 103: Hoare triple {12039#false} assume !!(~i~1 < 40); {12039#false} is VALID [2018-11-23 12:14:00,173 INFO L273 TraceCheckUtils]: 104: Hoare triple {12039#false} assume !(~i~1 > 20); {12039#false} is VALID [2018-11-23 12:14:00,173 INFO L273 TraceCheckUtils]: 105: Hoare triple {12039#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {12039#false} is VALID [2018-11-23 12:14:00,173 INFO L273 TraceCheckUtils]: 106: Hoare triple {12039#false} assume !!(~i~1 < 40); {12039#false} is VALID [2018-11-23 12:14:00,174 INFO L273 TraceCheckUtils]: 107: Hoare triple {12039#false} assume !(~i~1 > 20); {12039#false} is VALID [2018-11-23 12:14:00,174 INFO L273 TraceCheckUtils]: 108: Hoare triple {12039#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {12039#false} is VALID [2018-11-23 12:14:00,174 INFO L273 TraceCheckUtils]: 109: Hoare triple {12039#false} assume !!(~i~1 < 40); {12039#false} is VALID [2018-11-23 12:14:00,174 INFO L273 TraceCheckUtils]: 110: Hoare triple {12039#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {12039#false} is VALID [2018-11-23 12:14:00,174 INFO L273 TraceCheckUtils]: 111: Hoare triple {12039#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {12039#false} is VALID [2018-11-23 12:14:00,174 INFO L273 TraceCheckUtils]: 112: Hoare triple {12039#false} assume !!(~i~1 < 40); {12039#false} is VALID [2018-11-23 12:14:00,174 INFO L273 TraceCheckUtils]: 113: Hoare triple {12039#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {12039#false} is VALID [2018-11-23 12:14:00,174 INFO L273 TraceCheckUtils]: 114: Hoare triple {12039#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {12039#false} is VALID [2018-11-23 12:14:00,175 INFO L273 TraceCheckUtils]: 115: Hoare triple {12039#false} assume !!(~i~1 < 40); {12039#false} is VALID [2018-11-23 12:14:00,175 INFO L273 TraceCheckUtils]: 116: Hoare triple {12039#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {12039#false} is VALID [2018-11-23 12:14:00,175 INFO L273 TraceCheckUtils]: 117: Hoare triple {12039#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {12039#false} is VALID [2018-11-23 12:14:00,175 INFO L273 TraceCheckUtils]: 118: Hoare triple {12039#false} assume !!(~i~1 < 40); {12039#false} is VALID [2018-11-23 12:14:00,175 INFO L273 TraceCheckUtils]: 119: Hoare triple {12039#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {12039#false} is VALID [2018-11-23 12:14:00,175 INFO L273 TraceCheckUtils]: 120: Hoare triple {12039#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {12039#false} is VALID [2018-11-23 12:14:00,175 INFO L273 TraceCheckUtils]: 121: Hoare triple {12039#false} assume !(~i~1 < 40); {12039#false} is VALID [2018-11-23 12:14:00,175 INFO L273 TraceCheckUtils]: 122: Hoare triple {12039#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {12039#false} is VALID [2018-11-23 12:14:00,175 INFO L273 TraceCheckUtils]: 123: Hoare triple {12039#false} assume true; {12039#false} is VALID [2018-11-23 12:14:00,176 INFO L268 TraceCheckUtils]: 124: Hoare quadruple {12039#false} {12039#false} #88#return; {12039#false} is VALID [2018-11-23 12:14:00,176 INFO L273 TraceCheckUtils]: 125: Hoare triple {12039#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {12039#false} is VALID [2018-11-23 12:14:00,176 INFO L273 TraceCheckUtils]: 126: Hoare triple {12039#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {12039#false} is VALID [2018-11-23 12:14:00,176 INFO L273 TraceCheckUtils]: 127: Hoare triple {12039#false} assume !false; {12039#false} is VALID [2018-11-23 12:14:00,182 INFO L134 CoverageAnalysis]: Checked inductivity of 814 backedges. 363 proven. 26 refuted. 0 times theorem prover too weak. 425 trivial. 0 not checked. [2018-11-23 12:14:00,201 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:14:00,201 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [8] total 8 [2018-11-23 12:14:00,202 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 128 [2018-11-23 12:14:00,202 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:14:00,202 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states. [2018-11-23 12:14:00,251 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 56 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:14:00,252 INFO L459 AbstractCegarLoop]: Interpolant automaton has 8 states [2018-11-23 12:14:00,252 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2018-11-23 12:14:00,252 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=28, Invalid=28, Unknown=0, NotChecked=0, Total=56 [2018-11-23 12:14:00,253 INFO L87 Difference]: Start difference. First operand 77 states and 86 transitions. Second operand 8 states. [2018-11-23 12:14:00,441 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:00,441 INFO L93 Difference]: Finished difference Result 128 states and 150 transitions. [2018-11-23 12:14:00,441 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2018-11-23 12:14:00,442 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 128 [2018-11-23 12:14:00,442 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:14:00,442 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2018-11-23 12:14:00,443 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 87 transitions. [2018-11-23 12:14:00,443 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2018-11-23 12:14:00,444 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 87 transitions. [2018-11-23 12:14:00,444 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 87 transitions. [2018-11-23 12:14:00,536 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 87 edges. 87 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:14:00,538 INFO L225 Difference]: With dead ends: 128 [2018-11-23 12:14:00,538 INFO L226 Difference]: Without dead ends: 82 [2018-11-23 12:14:00,539 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 127 GetRequests, 121 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=28, Invalid=28, Unknown=0, NotChecked=0, Total=56 [2018-11-23 12:14:00,540 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 82 states. [2018-11-23 12:14:00,589 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 82 to 80. [2018-11-23 12:14:00,590 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:14:00,590 INFO L82 GeneralOperation]: Start isEquivalent. First operand 82 states. Second operand 80 states. [2018-11-23 12:14:00,590 INFO L74 IsIncluded]: Start isIncluded. First operand 82 states. Second operand 80 states. [2018-11-23 12:14:00,590 INFO L87 Difference]: Start difference. First operand 82 states. Second operand 80 states. [2018-11-23 12:14:00,591 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:00,592 INFO L93 Difference]: Finished difference Result 82 states and 93 transitions. [2018-11-23 12:14:00,592 INFO L276 IsEmpty]: Start isEmpty. Operand 82 states and 93 transitions. [2018-11-23 12:14:00,592 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:14:00,593 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:14:00,593 INFO L74 IsIncluded]: Start isIncluded. First operand 80 states. Second operand 82 states. [2018-11-23 12:14:00,593 INFO L87 Difference]: Start difference. First operand 80 states. Second operand 82 states. [2018-11-23 12:14:00,594 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:00,595 INFO L93 Difference]: Finished difference Result 82 states and 93 transitions. [2018-11-23 12:14:00,595 INFO L276 IsEmpty]: Start isEmpty. Operand 82 states and 93 transitions. [2018-11-23 12:14:00,595 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:14:00,595 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:14:00,595 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:14:00,595 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:14:00,595 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 80 states. [2018-11-23 12:14:00,596 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 80 states to 80 states and 90 transitions. [2018-11-23 12:14:00,597 INFO L78 Accepts]: Start accepts. Automaton has 80 states and 90 transitions. Word has length 128 [2018-11-23 12:14:00,597 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:14:00,597 INFO L480 AbstractCegarLoop]: Abstraction has 80 states and 90 transitions. [2018-11-23 12:14:00,597 INFO L481 AbstractCegarLoop]: Interpolant automaton has 8 states. [2018-11-23 12:14:00,597 INFO L276 IsEmpty]: Start isEmpty. Operand 80 states and 90 transitions. [2018-11-23 12:14:00,598 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 138 [2018-11-23 12:14:00,598 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:14:00,598 INFO L402 BasicCegarLoop]: trace histogram [24, 24, 15, 9, 9, 9, 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, 1, 1, 1, 1, 1] [2018-11-23 12:14:00,599 INFO L423 AbstractCegarLoop]: === Iteration 23 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:14:00,599 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:14:00,599 INFO L82 PathProgramCache]: Analyzing trace with hash 1750883546, now seen corresponding path program 18 times [2018-11-23 12:14:00,599 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:14:00,599 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:14:00,600 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:14:00,600 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:14:00,600 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:14:00,613 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:14:00,614 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:14:00,614 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 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 24 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:14:00,625 INFO L103 rtionOrderModulation]: Keeping assertion order MIX_INSIDE_OUTSIDE [2018-11-23 12:14:08,294 INFO L249 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 13 check-sat command(s) [2018-11-23 12:14:08,295 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:14:08,319 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:14:08,321 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:14:08,522 INFO L256 TraceCheckUtils]: 0: Hoare triple {12888#true} call ULTIMATE.init(); {12888#true} is VALID [2018-11-23 12:14:08,522 INFO L273 TraceCheckUtils]: 1: Hoare triple {12888#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {12888#true} is VALID [2018-11-23 12:14:08,523 INFO L273 TraceCheckUtils]: 2: Hoare triple {12888#true} assume true; {12888#true} is VALID [2018-11-23 12:14:08,523 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {12888#true} {12888#true} #78#return; {12888#true} is VALID [2018-11-23 12:14:08,523 INFO L256 TraceCheckUtils]: 4: Hoare triple {12888#true} call #t~ret12 := main(); {12888#true} is VALID [2018-11-23 12:14:08,523 INFO L273 TraceCheckUtils]: 5: Hoare triple {12888#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {12888#true} is VALID [2018-11-23 12:14:08,523 INFO L256 TraceCheckUtils]: 6: Hoare triple {12888#true} call init_nondet(~#x~0.base, ~#x~0.offset); {12888#true} is VALID [2018-11-23 12:14:08,524 INFO L273 TraceCheckUtils]: 7: Hoare triple {12888#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {12888#true} is VALID [2018-11-23 12:14:08,524 INFO L273 TraceCheckUtils]: 8: Hoare triple {12888#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {12888#true} is VALID [2018-11-23 12:14:08,524 INFO L273 TraceCheckUtils]: 9: Hoare triple {12888#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12888#true} is VALID [2018-11-23 12:14:08,524 INFO L273 TraceCheckUtils]: 10: Hoare triple {12888#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {12888#true} is VALID [2018-11-23 12:14:08,524 INFO L273 TraceCheckUtils]: 11: Hoare triple {12888#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12888#true} is VALID [2018-11-23 12:14:08,524 INFO L273 TraceCheckUtils]: 12: Hoare triple {12888#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {12888#true} is VALID [2018-11-23 12:14:08,524 INFO L273 TraceCheckUtils]: 13: Hoare triple {12888#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12888#true} is VALID [2018-11-23 12:14:08,525 INFO L273 TraceCheckUtils]: 14: Hoare triple {12888#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {12888#true} is VALID [2018-11-23 12:14:08,525 INFO L273 TraceCheckUtils]: 15: Hoare triple {12888#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12888#true} is VALID [2018-11-23 12:14:08,525 INFO L273 TraceCheckUtils]: 16: Hoare triple {12888#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {12888#true} is VALID [2018-11-23 12:14:08,525 INFO L273 TraceCheckUtils]: 17: Hoare triple {12888#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12888#true} is VALID [2018-11-23 12:14:08,525 INFO L273 TraceCheckUtils]: 18: Hoare triple {12888#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {12888#true} is VALID [2018-11-23 12:14:08,525 INFO L273 TraceCheckUtils]: 19: Hoare triple {12888#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12888#true} is VALID [2018-11-23 12:14:08,525 INFO L273 TraceCheckUtils]: 20: Hoare triple {12888#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {12888#true} is VALID [2018-11-23 12:14:08,525 INFO L273 TraceCheckUtils]: 21: Hoare triple {12888#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12888#true} is VALID [2018-11-23 12:14:08,526 INFO L273 TraceCheckUtils]: 22: Hoare triple {12888#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {12888#true} is VALID [2018-11-23 12:14:08,526 INFO L273 TraceCheckUtils]: 23: Hoare triple {12888#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12888#true} is VALID [2018-11-23 12:14:08,526 INFO L273 TraceCheckUtils]: 24: Hoare triple {12888#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {12888#true} is VALID [2018-11-23 12:14:08,526 INFO L273 TraceCheckUtils]: 25: Hoare triple {12888#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12888#true} is VALID [2018-11-23 12:14:08,526 INFO L273 TraceCheckUtils]: 26: Hoare triple {12888#true} assume !(~i~0 < 40); {12888#true} is VALID [2018-11-23 12:14:08,526 INFO L273 TraceCheckUtils]: 27: Hoare triple {12888#true} assume true; {12888#true} is VALID [2018-11-23 12:14:08,526 INFO L268 TraceCheckUtils]: 28: Hoare quadruple {12888#true} {12888#true} #82#return; {12888#true} is VALID [2018-11-23 12:14:08,526 INFO L273 TraceCheckUtils]: 29: Hoare triple {12888#true} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {12888#true} is VALID [2018-11-23 12:14:08,526 INFO L256 TraceCheckUtils]: 30: Hoare triple {12888#true} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {12888#true} is VALID [2018-11-23 12:14:08,527 INFO L273 TraceCheckUtils]: 31: Hoare triple {12888#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {12888#true} is VALID [2018-11-23 12:14:08,527 INFO L273 TraceCheckUtils]: 32: Hoare triple {12888#true} assume !!(~i~1 < 40); {12888#true} is VALID [2018-11-23 12:14:08,527 INFO L273 TraceCheckUtils]: 33: Hoare triple {12888#true} assume !(~i~1 > 20); {12888#true} is VALID [2018-11-23 12:14:08,527 INFO L273 TraceCheckUtils]: 34: Hoare triple {12888#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {12888#true} is VALID [2018-11-23 12:14:08,527 INFO L273 TraceCheckUtils]: 35: Hoare triple {12888#true} assume !!(~i~1 < 40); {12888#true} is VALID [2018-11-23 12:14:08,527 INFO L273 TraceCheckUtils]: 36: Hoare triple {12888#true} assume !(~i~1 > 20); {12888#true} is VALID [2018-11-23 12:14:08,527 INFO L273 TraceCheckUtils]: 37: Hoare triple {12888#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {12888#true} is VALID [2018-11-23 12:14:08,527 INFO L273 TraceCheckUtils]: 38: Hoare triple {12888#true} assume !!(~i~1 < 40); {12888#true} is VALID [2018-11-23 12:14:08,528 INFO L273 TraceCheckUtils]: 39: Hoare triple {12888#true} assume !(~i~1 > 20); {12888#true} is VALID [2018-11-23 12:14:08,528 INFO L273 TraceCheckUtils]: 40: Hoare triple {12888#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {12888#true} is VALID [2018-11-23 12:14:08,528 INFO L273 TraceCheckUtils]: 41: Hoare triple {12888#true} assume !!(~i~1 < 40); {12888#true} is VALID [2018-11-23 12:14:08,528 INFO L273 TraceCheckUtils]: 42: Hoare triple {12888#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {12888#true} is VALID [2018-11-23 12:14:08,528 INFO L273 TraceCheckUtils]: 43: Hoare triple {12888#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {12888#true} is VALID [2018-11-23 12:14:08,528 INFO L273 TraceCheckUtils]: 44: Hoare triple {12888#true} assume !!(~i~1 < 40); {12888#true} is VALID [2018-11-23 12:14:08,528 INFO L273 TraceCheckUtils]: 45: Hoare triple {12888#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {12888#true} is VALID [2018-11-23 12:14:08,528 INFO L273 TraceCheckUtils]: 46: Hoare triple {12888#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {12888#true} is VALID [2018-11-23 12:14:08,528 INFO L273 TraceCheckUtils]: 47: Hoare triple {12888#true} assume !!(~i~1 < 40); {12888#true} is VALID [2018-11-23 12:14:08,529 INFO L273 TraceCheckUtils]: 48: Hoare triple {12888#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {12888#true} is VALID [2018-11-23 12:14:08,529 INFO L273 TraceCheckUtils]: 49: Hoare triple {12888#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {12888#true} is VALID [2018-11-23 12:14:08,529 INFO L273 TraceCheckUtils]: 50: Hoare triple {12888#true} assume !!(~i~1 < 40); {12888#true} is VALID [2018-11-23 12:14:08,529 INFO L273 TraceCheckUtils]: 51: Hoare triple {12888#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {12888#true} is VALID [2018-11-23 12:14:08,529 INFO L273 TraceCheckUtils]: 52: Hoare triple {12888#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {12888#true} is VALID [2018-11-23 12:14:08,529 INFO L273 TraceCheckUtils]: 53: Hoare triple {12888#true} assume !!(~i~1 < 40); {12888#true} is VALID [2018-11-23 12:14:08,529 INFO L273 TraceCheckUtils]: 54: Hoare triple {12888#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {12888#true} is VALID [2018-11-23 12:14:08,529 INFO L273 TraceCheckUtils]: 55: Hoare triple {12888#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {12888#true} is VALID [2018-11-23 12:14:08,529 INFO L273 TraceCheckUtils]: 56: Hoare triple {12888#true} assume !(~i~1 < 40); {12888#true} is VALID [2018-11-23 12:14:08,530 INFO L273 TraceCheckUtils]: 57: Hoare triple {12888#true} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {12888#true} is VALID [2018-11-23 12:14:08,530 INFO L273 TraceCheckUtils]: 58: Hoare triple {12888#true} assume true; {12888#true} is VALID [2018-11-23 12:14:08,530 INFO L268 TraceCheckUtils]: 59: Hoare quadruple {12888#true} {12888#true} #84#return; {12888#true} is VALID [2018-11-23 12:14:08,530 INFO L273 TraceCheckUtils]: 60: Hoare triple {12888#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {12888#true} is VALID [2018-11-23 12:14:08,530 INFO L256 TraceCheckUtils]: 61: Hoare triple {12888#true} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {12888#true} is VALID [2018-11-23 12:14:08,530 INFO L273 TraceCheckUtils]: 62: Hoare triple {12888#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {12888#true} is VALID [2018-11-23 12:14:08,530 INFO L273 TraceCheckUtils]: 63: Hoare triple {12888#true} assume !!(~i~1 < 40); {12888#true} is VALID [2018-11-23 12:14:08,530 INFO L273 TraceCheckUtils]: 64: Hoare triple {12888#true} assume !(~i~1 > 20); {12888#true} is VALID [2018-11-23 12:14:08,531 INFO L273 TraceCheckUtils]: 65: Hoare triple {12888#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {12888#true} is VALID [2018-11-23 12:14:08,531 INFO L273 TraceCheckUtils]: 66: Hoare triple {12888#true} assume !!(~i~1 < 40); {12888#true} is VALID [2018-11-23 12:14:08,531 INFO L273 TraceCheckUtils]: 67: Hoare triple {12888#true} assume !(~i~1 > 20); {12888#true} is VALID [2018-11-23 12:14:08,531 INFO L273 TraceCheckUtils]: 68: Hoare triple {12888#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {12888#true} is VALID [2018-11-23 12:14:08,531 INFO L273 TraceCheckUtils]: 69: Hoare triple {12888#true} assume !!(~i~1 < 40); {12888#true} is VALID [2018-11-23 12:14:08,531 INFO L273 TraceCheckUtils]: 70: Hoare triple {12888#true} assume !(~i~1 > 20); {12888#true} is VALID [2018-11-23 12:14:08,531 INFO L273 TraceCheckUtils]: 71: Hoare triple {12888#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {12888#true} is VALID [2018-11-23 12:14:08,531 INFO L273 TraceCheckUtils]: 72: Hoare triple {12888#true} assume !!(~i~1 < 40); {12888#true} is VALID [2018-11-23 12:14:08,531 INFO L273 TraceCheckUtils]: 73: Hoare triple {12888#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {12888#true} is VALID [2018-11-23 12:14:08,532 INFO L273 TraceCheckUtils]: 74: Hoare triple {12888#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {12888#true} is VALID [2018-11-23 12:14:08,532 INFO L273 TraceCheckUtils]: 75: Hoare triple {12888#true} assume !!(~i~1 < 40); {12888#true} is VALID [2018-11-23 12:14:08,532 INFO L273 TraceCheckUtils]: 76: Hoare triple {12888#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {12888#true} is VALID [2018-11-23 12:14:08,532 INFO L273 TraceCheckUtils]: 77: Hoare triple {12888#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {12888#true} is VALID [2018-11-23 12:14:08,532 INFO L273 TraceCheckUtils]: 78: Hoare triple {12888#true} assume !!(~i~1 < 40); {12888#true} is VALID [2018-11-23 12:14:08,532 INFO L273 TraceCheckUtils]: 79: Hoare triple {12888#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {12888#true} is VALID [2018-11-23 12:14:08,532 INFO L273 TraceCheckUtils]: 80: Hoare triple {12888#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {12888#true} is VALID [2018-11-23 12:14:08,532 INFO L273 TraceCheckUtils]: 81: Hoare triple {12888#true} assume !!(~i~1 < 40); {12888#true} is VALID [2018-11-23 12:14:08,532 INFO L273 TraceCheckUtils]: 82: Hoare triple {12888#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {12888#true} is VALID [2018-11-23 12:14:08,533 INFO L273 TraceCheckUtils]: 83: Hoare triple {12888#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {12888#true} is VALID [2018-11-23 12:14:08,533 INFO L273 TraceCheckUtils]: 84: Hoare triple {12888#true} assume !!(~i~1 < 40); {12888#true} is VALID [2018-11-23 12:14:08,533 INFO L273 TraceCheckUtils]: 85: Hoare triple {12888#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {12888#true} is VALID [2018-11-23 12:14:08,533 INFO L273 TraceCheckUtils]: 86: Hoare triple {12888#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {12888#true} is VALID [2018-11-23 12:14:08,533 INFO L273 TraceCheckUtils]: 87: Hoare triple {12888#true} assume !(~i~1 < 40); {12888#true} is VALID [2018-11-23 12:14:08,533 INFO L273 TraceCheckUtils]: 88: Hoare triple {12888#true} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {12888#true} is VALID [2018-11-23 12:14:08,533 INFO L273 TraceCheckUtils]: 89: Hoare triple {12888#true} assume true; {12888#true} is VALID [2018-11-23 12:14:08,533 INFO L268 TraceCheckUtils]: 90: Hoare quadruple {12888#true} {12888#true} #86#return; {12888#true} is VALID [2018-11-23 12:14:08,534 INFO L273 TraceCheckUtils]: 91: Hoare triple {12888#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {13166#(<= main_~i~2 0)} is VALID [2018-11-23 12:14:08,534 INFO L273 TraceCheckUtils]: 92: Hoare triple {13166#(<= main_~i~2 0)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {13166#(<= main_~i~2 0)} is VALID [2018-11-23 12:14:08,535 INFO L273 TraceCheckUtils]: 93: Hoare triple {13166#(<= main_~i~2 0)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {13173#(<= main_~i~2 1)} is VALID [2018-11-23 12:14:08,535 INFO L273 TraceCheckUtils]: 94: Hoare triple {13173#(<= main_~i~2 1)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {13173#(<= main_~i~2 1)} is VALID [2018-11-23 12:14:08,535 INFO L273 TraceCheckUtils]: 95: Hoare triple {13173#(<= main_~i~2 1)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {13180#(<= main_~i~2 2)} is VALID [2018-11-23 12:14:08,536 INFO L273 TraceCheckUtils]: 96: Hoare triple {13180#(<= main_~i~2 2)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {13180#(<= main_~i~2 2)} is VALID [2018-11-23 12:14:08,536 INFO L273 TraceCheckUtils]: 97: Hoare triple {13180#(<= main_~i~2 2)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {13187#(<= main_~i~2 3)} is VALID [2018-11-23 12:14:08,536 INFO L273 TraceCheckUtils]: 98: Hoare triple {13187#(<= main_~i~2 3)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {13187#(<= main_~i~2 3)} is VALID [2018-11-23 12:14:08,537 INFO L273 TraceCheckUtils]: 99: Hoare triple {13187#(<= main_~i~2 3)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {13194#(<= main_~i~2 4)} is VALID [2018-11-23 12:14:08,540 INFO L273 TraceCheckUtils]: 100: Hoare triple {13194#(<= main_~i~2 4)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {13194#(<= main_~i~2 4)} is VALID [2018-11-23 12:14:08,540 INFO L273 TraceCheckUtils]: 101: Hoare triple {13194#(<= main_~i~2 4)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {13201#(<= main_~i~2 5)} is VALID [2018-11-23 12:14:08,541 INFO L273 TraceCheckUtils]: 102: Hoare triple {13201#(<= main_~i~2 5)} assume !(~i~2 < 39); {12889#false} is VALID [2018-11-23 12:14:08,541 INFO L273 TraceCheckUtils]: 103: Hoare triple {12889#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {12889#false} is VALID [2018-11-23 12:14:08,541 INFO L256 TraceCheckUtils]: 104: Hoare triple {12889#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {12889#false} is VALID [2018-11-23 12:14:08,541 INFO L273 TraceCheckUtils]: 105: Hoare triple {12889#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {12889#false} is VALID [2018-11-23 12:14:08,541 INFO L273 TraceCheckUtils]: 106: Hoare triple {12889#false} assume !!(~i~1 < 40); {12889#false} is VALID [2018-11-23 12:14:08,541 INFO L273 TraceCheckUtils]: 107: Hoare triple {12889#false} assume !(~i~1 > 20); {12889#false} is VALID [2018-11-23 12:14:08,541 INFO L273 TraceCheckUtils]: 108: Hoare triple {12889#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {12889#false} is VALID [2018-11-23 12:14:08,542 INFO L273 TraceCheckUtils]: 109: Hoare triple {12889#false} assume !!(~i~1 < 40); {12889#false} is VALID [2018-11-23 12:14:08,542 INFO L273 TraceCheckUtils]: 110: Hoare triple {12889#false} assume !(~i~1 > 20); {12889#false} is VALID [2018-11-23 12:14:08,542 INFO L273 TraceCheckUtils]: 111: Hoare triple {12889#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {12889#false} is VALID [2018-11-23 12:14:08,542 INFO L273 TraceCheckUtils]: 112: Hoare triple {12889#false} assume !!(~i~1 < 40); {12889#false} is VALID [2018-11-23 12:14:08,542 INFO L273 TraceCheckUtils]: 113: Hoare triple {12889#false} assume !(~i~1 > 20); {12889#false} is VALID [2018-11-23 12:14:08,542 INFO L273 TraceCheckUtils]: 114: Hoare triple {12889#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {12889#false} is VALID [2018-11-23 12:14:08,542 INFO L273 TraceCheckUtils]: 115: Hoare triple {12889#false} assume !!(~i~1 < 40); {12889#false} is VALID [2018-11-23 12:14:08,542 INFO L273 TraceCheckUtils]: 116: Hoare triple {12889#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {12889#false} is VALID [2018-11-23 12:14:08,543 INFO L273 TraceCheckUtils]: 117: Hoare triple {12889#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {12889#false} is VALID [2018-11-23 12:14:08,543 INFO L273 TraceCheckUtils]: 118: Hoare triple {12889#false} assume !!(~i~1 < 40); {12889#false} is VALID [2018-11-23 12:14:08,543 INFO L273 TraceCheckUtils]: 119: Hoare triple {12889#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {12889#false} is VALID [2018-11-23 12:14:08,543 INFO L273 TraceCheckUtils]: 120: Hoare triple {12889#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {12889#false} is VALID [2018-11-23 12:14:08,543 INFO L273 TraceCheckUtils]: 121: Hoare triple {12889#false} assume !!(~i~1 < 40); {12889#false} is VALID [2018-11-23 12:14:08,543 INFO L273 TraceCheckUtils]: 122: Hoare triple {12889#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {12889#false} is VALID [2018-11-23 12:14:08,543 INFO L273 TraceCheckUtils]: 123: Hoare triple {12889#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {12889#false} is VALID [2018-11-23 12:14:08,543 INFO L273 TraceCheckUtils]: 124: Hoare triple {12889#false} assume !!(~i~1 < 40); {12889#false} is VALID [2018-11-23 12:14:08,543 INFO L273 TraceCheckUtils]: 125: Hoare triple {12889#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {12889#false} is VALID [2018-11-23 12:14:08,544 INFO L273 TraceCheckUtils]: 126: Hoare triple {12889#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {12889#false} is VALID [2018-11-23 12:14:08,544 INFO L273 TraceCheckUtils]: 127: Hoare triple {12889#false} assume !!(~i~1 < 40); {12889#false} is VALID [2018-11-23 12:14:08,544 INFO L273 TraceCheckUtils]: 128: Hoare triple {12889#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {12889#false} is VALID [2018-11-23 12:14:08,544 INFO L273 TraceCheckUtils]: 129: Hoare triple {12889#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {12889#false} is VALID [2018-11-23 12:14:08,544 INFO L273 TraceCheckUtils]: 130: Hoare triple {12889#false} assume !(~i~1 < 40); {12889#false} is VALID [2018-11-23 12:14:08,544 INFO L273 TraceCheckUtils]: 131: Hoare triple {12889#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {12889#false} is VALID [2018-11-23 12:14:08,544 INFO L273 TraceCheckUtils]: 132: Hoare triple {12889#false} assume true; {12889#false} is VALID [2018-11-23 12:14:08,544 INFO L268 TraceCheckUtils]: 133: Hoare quadruple {12889#false} {12889#false} #88#return; {12889#false} is VALID [2018-11-23 12:14:08,545 INFO L273 TraceCheckUtils]: 134: Hoare triple {12889#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {12889#false} is VALID [2018-11-23 12:14:08,545 INFO L273 TraceCheckUtils]: 135: Hoare triple {12889#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {12889#false} is VALID [2018-11-23 12:14:08,545 INFO L273 TraceCheckUtils]: 136: Hoare triple {12889#false} assume !false; {12889#false} is VALID [2018-11-23 12:14:08,552 INFO L134 CoverageAnalysis]: Checked inductivity of 1021 backedges. 426 proven. 25 refuted. 0 times theorem prover too weak. 570 trivial. 0 not checked. [2018-11-23 12:14:08,571 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:14:08,572 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [8] total 8 [2018-11-23 12:14:08,572 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 137 [2018-11-23 12:14:08,572 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:14:08,572 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states. [2018-11-23 12:14:08,620 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 53 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:14:08,620 INFO L459 AbstractCegarLoop]: Interpolant automaton has 8 states [2018-11-23 12:14:08,620 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2018-11-23 12:14:08,620 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=28, Invalid=28, Unknown=0, NotChecked=0, Total=56 [2018-11-23 12:14:08,621 INFO L87 Difference]: Start difference. First operand 80 states and 90 transitions. Second operand 8 states. [2018-11-23 12:14:08,737 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:08,738 INFO L93 Difference]: Finished difference Result 118 states and 135 transitions. [2018-11-23 12:14:08,738 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2018-11-23 12:14:08,738 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 137 [2018-11-23 12:14:08,738 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:14:08,738 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2018-11-23 12:14:08,739 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 66 transitions. [2018-11-23 12:14:08,739 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2018-11-23 12:14:08,739 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 66 transitions. [2018-11-23 12:14:08,739 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 66 transitions. [2018-11-23 12:14:08,795 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-23 12:14:08,797 INFO L225 Difference]: With dead ends: 118 [2018-11-23 12:14:08,797 INFO L226 Difference]: Without dead ends: 83 [2018-11-23 12:14:08,797 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 136 GetRequests, 130 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=28, Invalid=28, Unknown=0, NotChecked=0, Total=56 [2018-11-23 12:14:08,798 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 83 states. [2018-11-23 12:14:08,825 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 83 to 82. [2018-11-23 12:14:08,826 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:14:08,826 INFO L82 GeneralOperation]: Start isEquivalent. First operand 83 states. Second operand 82 states. [2018-11-23 12:14:08,826 INFO L74 IsIncluded]: Start isIncluded. First operand 83 states. Second operand 82 states. [2018-11-23 12:14:08,826 INFO L87 Difference]: Start difference. First operand 83 states. Second operand 82 states. [2018-11-23 12:14:08,828 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:08,828 INFO L93 Difference]: Finished difference Result 83 states and 93 transitions. [2018-11-23 12:14:08,828 INFO L276 IsEmpty]: Start isEmpty. Operand 83 states and 93 transitions. [2018-11-23 12:14:08,828 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:14:08,829 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:14:08,829 INFO L74 IsIncluded]: Start isIncluded. First operand 82 states. Second operand 83 states. [2018-11-23 12:14:08,829 INFO L87 Difference]: Start difference. First operand 82 states. Second operand 83 states. [2018-11-23 12:14:08,830 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:08,830 INFO L93 Difference]: Finished difference Result 83 states and 93 transitions. [2018-11-23 12:14:08,830 INFO L276 IsEmpty]: Start isEmpty. Operand 83 states and 93 transitions. [2018-11-23 12:14:08,831 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:14:08,831 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:14:08,831 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:14:08,831 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:14:08,831 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 82 states. [2018-11-23 12:14:08,833 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 82 states to 82 states and 92 transitions. [2018-11-23 12:14:08,833 INFO L78 Accepts]: Start accepts. Automaton has 82 states and 92 transitions. Word has length 137 [2018-11-23 12:14:08,833 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:14:08,833 INFO L480 AbstractCegarLoop]: Abstraction has 82 states and 92 transitions. [2018-11-23 12:14:08,833 INFO L481 AbstractCegarLoop]: Interpolant automaton has 8 states. [2018-11-23 12:14:08,834 INFO L276 IsEmpty]: Start isEmpty. Operand 82 states and 92 transitions. [2018-11-23 12:14:08,834 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 140 [2018-11-23 12:14:08,834 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:14:08,835 INFO L402 BasicCegarLoop]: trace histogram [24, 24, 15, 9, 9, 9, 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, 1, 1, 1, 1, 1] [2018-11-23 12:14:08,835 INFO L423 AbstractCegarLoop]: === Iteration 24 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:14:08,835 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:14:08,835 INFO L82 PathProgramCache]: Analyzing trace with hash 1336918776, now seen corresponding path program 19 times [2018-11-23 12:14:08,835 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:14:08,836 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:14:08,836 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:14:08,836 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:14:08,837 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:14:08,849 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:14:08,849 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:14:08,849 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 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 25 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:14:08,864 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:14:08,920 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:14:08,954 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:14:08,956 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:14:09,423 INFO L256 TraceCheckUtils]: 0: Hoare triple {13755#true} call ULTIMATE.init(); {13755#true} is VALID [2018-11-23 12:14:09,424 INFO L273 TraceCheckUtils]: 1: Hoare triple {13755#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {13755#true} is VALID [2018-11-23 12:14:09,424 INFO L273 TraceCheckUtils]: 2: Hoare triple {13755#true} assume true; {13755#true} is VALID [2018-11-23 12:14:09,424 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {13755#true} {13755#true} #78#return; {13755#true} is VALID [2018-11-23 12:14:09,424 INFO L256 TraceCheckUtils]: 4: Hoare triple {13755#true} call #t~ret12 := main(); {13755#true} is VALID [2018-11-23 12:14:09,424 INFO L273 TraceCheckUtils]: 5: Hoare triple {13755#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {13755#true} is VALID [2018-11-23 12:14:09,425 INFO L256 TraceCheckUtils]: 6: Hoare triple {13755#true} call init_nondet(~#x~0.base, ~#x~0.offset); {13755#true} is VALID [2018-11-23 12:14:09,425 INFO L273 TraceCheckUtils]: 7: Hoare triple {13755#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {13781#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:14:09,426 INFO L273 TraceCheckUtils]: 8: Hoare triple {13781#(<= init_nondet_~i~0 0)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {13781#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:14:09,426 INFO L273 TraceCheckUtils]: 9: Hoare triple {13781#(<= init_nondet_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {13788#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:14:09,427 INFO L273 TraceCheckUtils]: 10: Hoare triple {13788#(<= init_nondet_~i~0 1)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {13788#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:14:09,427 INFO L273 TraceCheckUtils]: 11: Hoare triple {13788#(<= init_nondet_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {13795#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:14:09,427 INFO L273 TraceCheckUtils]: 12: Hoare triple {13795#(<= init_nondet_~i~0 2)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {13795#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:14:09,428 INFO L273 TraceCheckUtils]: 13: Hoare triple {13795#(<= init_nondet_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {13802#(<= init_nondet_~i~0 3)} is VALID [2018-11-23 12:14:09,428 INFO L273 TraceCheckUtils]: 14: Hoare triple {13802#(<= init_nondet_~i~0 3)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {13802#(<= init_nondet_~i~0 3)} is VALID [2018-11-23 12:14:09,429 INFO L273 TraceCheckUtils]: 15: Hoare triple {13802#(<= init_nondet_~i~0 3)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {13809#(<= init_nondet_~i~0 4)} is VALID [2018-11-23 12:14:09,430 INFO L273 TraceCheckUtils]: 16: Hoare triple {13809#(<= init_nondet_~i~0 4)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {13809#(<= init_nondet_~i~0 4)} is VALID [2018-11-23 12:14:09,430 INFO L273 TraceCheckUtils]: 17: Hoare triple {13809#(<= init_nondet_~i~0 4)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {13816#(<= init_nondet_~i~0 5)} is VALID [2018-11-23 12:14:09,431 INFO L273 TraceCheckUtils]: 18: Hoare triple {13816#(<= init_nondet_~i~0 5)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {13816#(<= init_nondet_~i~0 5)} is VALID [2018-11-23 12:14:09,431 INFO L273 TraceCheckUtils]: 19: Hoare triple {13816#(<= init_nondet_~i~0 5)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {13823#(<= init_nondet_~i~0 6)} is VALID [2018-11-23 12:14:09,432 INFO L273 TraceCheckUtils]: 20: Hoare triple {13823#(<= init_nondet_~i~0 6)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {13823#(<= init_nondet_~i~0 6)} is VALID [2018-11-23 12:14:09,433 INFO L273 TraceCheckUtils]: 21: Hoare triple {13823#(<= init_nondet_~i~0 6)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {13830#(<= init_nondet_~i~0 7)} is VALID [2018-11-23 12:14:09,433 INFO L273 TraceCheckUtils]: 22: Hoare triple {13830#(<= init_nondet_~i~0 7)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {13830#(<= init_nondet_~i~0 7)} is VALID [2018-11-23 12:14:09,434 INFO L273 TraceCheckUtils]: 23: Hoare triple {13830#(<= init_nondet_~i~0 7)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {13837#(<= init_nondet_~i~0 8)} is VALID [2018-11-23 12:14:09,434 INFO L273 TraceCheckUtils]: 24: Hoare triple {13837#(<= init_nondet_~i~0 8)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {13837#(<= init_nondet_~i~0 8)} is VALID [2018-11-23 12:14:09,435 INFO L273 TraceCheckUtils]: 25: Hoare triple {13837#(<= init_nondet_~i~0 8)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {13844#(<= init_nondet_~i~0 9)} is VALID [2018-11-23 12:14:09,436 INFO L273 TraceCheckUtils]: 26: Hoare triple {13844#(<= init_nondet_~i~0 9)} assume !(~i~0 < 40); {13756#false} is VALID [2018-11-23 12:14:09,436 INFO L273 TraceCheckUtils]: 27: Hoare triple {13756#false} assume true; {13756#false} is VALID [2018-11-23 12:14:09,436 INFO L268 TraceCheckUtils]: 28: Hoare quadruple {13756#false} {13755#true} #82#return; {13756#false} is VALID [2018-11-23 12:14:09,436 INFO L273 TraceCheckUtils]: 29: Hoare triple {13756#false} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {13756#false} is VALID [2018-11-23 12:14:09,437 INFO L256 TraceCheckUtils]: 30: Hoare triple {13756#false} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {13756#false} is VALID [2018-11-23 12:14:09,437 INFO L273 TraceCheckUtils]: 31: Hoare triple {13756#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {13756#false} is VALID [2018-11-23 12:14:09,437 INFO L273 TraceCheckUtils]: 32: Hoare triple {13756#false} assume !!(~i~1 < 40); {13756#false} is VALID [2018-11-23 12:14:09,437 INFO L273 TraceCheckUtils]: 33: Hoare triple {13756#false} assume !(~i~1 > 20); {13756#false} is VALID [2018-11-23 12:14:09,437 INFO L273 TraceCheckUtils]: 34: Hoare triple {13756#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {13756#false} is VALID [2018-11-23 12:14:09,438 INFO L273 TraceCheckUtils]: 35: Hoare triple {13756#false} assume !!(~i~1 < 40); {13756#false} is VALID [2018-11-23 12:14:09,438 INFO L273 TraceCheckUtils]: 36: Hoare triple {13756#false} assume !(~i~1 > 20); {13756#false} is VALID [2018-11-23 12:14:09,438 INFO L273 TraceCheckUtils]: 37: Hoare triple {13756#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {13756#false} is VALID [2018-11-23 12:14:09,438 INFO L273 TraceCheckUtils]: 38: Hoare triple {13756#false} assume !!(~i~1 < 40); {13756#false} is VALID [2018-11-23 12:14:09,438 INFO L273 TraceCheckUtils]: 39: Hoare triple {13756#false} assume !(~i~1 > 20); {13756#false} is VALID [2018-11-23 12:14:09,439 INFO L273 TraceCheckUtils]: 40: Hoare triple {13756#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {13756#false} is VALID [2018-11-23 12:14:09,439 INFO L273 TraceCheckUtils]: 41: Hoare triple {13756#false} assume !!(~i~1 < 40); {13756#false} is VALID [2018-11-23 12:14:09,439 INFO L273 TraceCheckUtils]: 42: Hoare triple {13756#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {13756#false} is VALID [2018-11-23 12:14:09,439 INFO L273 TraceCheckUtils]: 43: Hoare triple {13756#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {13756#false} is VALID [2018-11-23 12:14:09,439 INFO L273 TraceCheckUtils]: 44: Hoare triple {13756#false} assume !!(~i~1 < 40); {13756#false} is VALID [2018-11-23 12:14:09,439 INFO L273 TraceCheckUtils]: 45: Hoare triple {13756#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {13756#false} is VALID [2018-11-23 12:14:09,440 INFO L273 TraceCheckUtils]: 46: Hoare triple {13756#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {13756#false} is VALID [2018-11-23 12:14:09,440 INFO L273 TraceCheckUtils]: 47: Hoare triple {13756#false} assume !!(~i~1 < 40); {13756#false} is VALID [2018-11-23 12:14:09,440 INFO L273 TraceCheckUtils]: 48: Hoare triple {13756#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {13756#false} is VALID [2018-11-23 12:14:09,440 INFO L273 TraceCheckUtils]: 49: Hoare triple {13756#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {13756#false} is VALID [2018-11-23 12:14:09,440 INFO L273 TraceCheckUtils]: 50: Hoare triple {13756#false} assume !!(~i~1 < 40); {13756#false} is VALID [2018-11-23 12:14:09,441 INFO L273 TraceCheckUtils]: 51: Hoare triple {13756#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {13756#false} is VALID [2018-11-23 12:14:09,441 INFO L273 TraceCheckUtils]: 52: Hoare triple {13756#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {13756#false} is VALID [2018-11-23 12:14:09,441 INFO L273 TraceCheckUtils]: 53: Hoare triple {13756#false} assume !!(~i~1 < 40); {13756#false} is VALID [2018-11-23 12:14:09,441 INFO L273 TraceCheckUtils]: 54: Hoare triple {13756#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {13756#false} is VALID [2018-11-23 12:14:09,441 INFO L273 TraceCheckUtils]: 55: Hoare triple {13756#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {13756#false} is VALID [2018-11-23 12:14:09,441 INFO L273 TraceCheckUtils]: 56: Hoare triple {13756#false} assume !(~i~1 < 40); {13756#false} is VALID [2018-11-23 12:14:09,441 INFO L273 TraceCheckUtils]: 57: Hoare triple {13756#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {13756#false} is VALID [2018-11-23 12:14:09,442 INFO L273 TraceCheckUtils]: 58: Hoare triple {13756#false} assume true; {13756#false} is VALID [2018-11-23 12:14:09,442 INFO L268 TraceCheckUtils]: 59: Hoare quadruple {13756#false} {13756#false} #84#return; {13756#false} is VALID [2018-11-23 12:14:09,442 INFO L273 TraceCheckUtils]: 60: Hoare triple {13756#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {13756#false} is VALID [2018-11-23 12:14:09,442 INFO L256 TraceCheckUtils]: 61: Hoare triple {13756#false} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {13756#false} is VALID [2018-11-23 12:14:09,442 INFO L273 TraceCheckUtils]: 62: Hoare triple {13756#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {13756#false} is VALID [2018-11-23 12:14:09,442 INFO L273 TraceCheckUtils]: 63: Hoare triple {13756#false} assume !!(~i~1 < 40); {13756#false} is VALID [2018-11-23 12:14:09,442 INFO L273 TraceCheckUtils]: 64: Hoare triple {13756#false} assume !(~i~1 > 20); {13756#false} is VALID [2018-11-23 12:14:09,442 INFO L273 TraceCheckUtils]: 65: Hoare triple {13756#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {13756#false} is VALID [2018-11-23 12:14:09,442 INFO L273 TraceCheckUtils]: 66: Hoare triple {13756#false} assume !!(~i~1 < 40); {13756#false} is VALID [2018-11-23 12:14:09,443 INFO L273 TraceCheckUtils]: 67: Hoare triple {13756#false} assume !(~i~1 > 20); {13756#false} is VALID [2018-11-23 12:14:09,443 INFO L273 TraceCheckUtils]: 68: Hoare triple {13756#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {13756#false} is VALID [2018-11-23 12:14:09,443 INFO L273 TraceCheckUtils]: 69: Hoare triple {13756#false} assume !!(~i~1 < 40); {13756#false} is VALID [2018-11-23 12:14:09,443 INFO L273 TraceCheckUtils]: 70: Hoare triple {13756#false} assume !(~i~1 > 20); {13756#false} is VALID [2018-11-23 12:14:09,443 INFO L273 TraceCheckUtils]: 71: Hoare triple {13756#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {13756#false} is VALID [2018-11-23 12:14:09,443 INFO L273 TraceCheckUtils]: 72: Hoare triple {13756#false} assume !!(~i~1 < 40); {13756#false} is VALID [2018-11-23 12:14:09,443 INFO L273 TraceCheckUtils]: 73: Hoare triple {13756#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {13756#false} is VALID [2018-11-23 12:14:09,443 INFO L273 TraceCheckUtils]: 74: Hoare triple {13756#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {13756#false} is VALID [2018-11-23 12:14:09,443 INFO L273 TraceCheckUtils]: 75: Hoare triple {13756#false} assume !!(~i~1 < 40); {13756#false} is VALID [2018-11-23 12:14:09,444 INFO L273 TraceCheckUtils]: 76: Hoare triple {13756#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {13756#false} is VALID [2018-11-23 12:14:09,444 INFO L273 TraceCheckUtils]: 77: Hoare triple {13756#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {13756#false} is VALID [2018-11-23 12:14:09,444 INFO L273 TraceCheckUtils]: 78: Hoare triple {13756#false} assume !!(~i~1 < 40); {13756#false} is VALID [2018-11-23 12:14:09,444 INFO L273 TraceCheckUtils]: 79: Hoare triple {13756#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {13756#false} is VALID [2018-11-23 12:14:09,444 INFO L273 TraceCheckUtils]: 80: Hoare triple {13756#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {13756#false} is VALID [2018-11-23 12:14:09,444 INFO L273 TraceCheckUtils]: 81: Hoare triple {13756#false} assume !!(~i~1 < 40); {13756#false} is VALID [2018-11-23 12:14:09,444 INFO L273 TraceCheckUtils]: 82: Hoare triple {13756#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {13756#false} is VALID [2018-11-23 12:14:09,444 INFO L273 TraceCheckUtils]: 83: Hoare triple {13756#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {13756#false} is VALID [2018-11-23 12:14:09,445 INFO L273 TraceCheckUtils]: 84: Hoare triple {13756#false} assume !!(~i~1 < 40); {13756#false} is VALID [2018-11-23 12:14:09,445 INFO L273 TraceCheckUtils]: 85: Hoare triple {13756#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {13756#false} is VALID [2018-11-23 12:14:09,445 INFO L273 TraceCheckUtils]: 86: Hoare triple {13756#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {13756#false} is VALID [2018-11-23 12:14:09,445 INFO L273 TraceCheckUtils]: 87: Hoare triple {13756#false} assume !(~i~1 < 40); {13756#false} is VALID [2018-11-23 12:14:09,445 INFO L273 TraceCheckUtils]: 88: Hoare triple {13756#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {13756#false} is VALID [2018-11-23 12:14:09,445 INFO L273 TraceCheckUtils]: 89: Hoare triple {13756#false} assume true; {13756#false} is VALID [2018-11-23 12:14:09,445 INFO L268 TraceCheckUtils]: 90: Hoare quadruple {13756#false} {13756#false} #86#return; {13756#false} is VALID [2018-11-23 12:14:09,445 INFO L273 TraceCheckUtils]: 91: Hoare triple {13756#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {13756#false} is VALID [2018-11-23 12:14:09,446 INFO L273 TraceCheckUtils]: 92: Hoare triple {13756#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {13756#false} is VALID [2018-11-23 12:14:09,446 INFO L273 TraceCheckUtils]: 93: Hoare triple {13756#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {13756#false} is VALID [2018-11-23 12:14:09,446 INFO L273 TraceCheckUtils]: 94: Hoare triple {13756#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {13756#false} is VALID [2018-11-23 12:14:09,446 INFO L273 TraceCheckUtils]: 95: Hoare triple {13756#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {13756#false} is VALID [2018-11-23 12:14:09,446 INFO L273 TraceCheckUtils]: 96: Hoare triple {13756#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {13756#false} is VALID [2018-11-23 12:14:09,446 INFO L273 TraceCheckUtils]: 97: Hoare triple {13756#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {13756#false} is VALID [2018-11-23 12:14:09,446 INFO L273 TraceCheckUtils]: 98: Hoare triple {13756#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {13756#false} is VALID [2018-11-23 12:14:09,446 INFO L273 TraceCheckUtils]: 99: Hoare triple {13756#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {13756#false} is VALID [2018-11-23 12:14:09,446 INFO L273 TraceCheckUtils]: 100: Hoare triple {13756#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {13756#false} is VALID [2018-11-23 12:14:09,447 INFO L273 TraceCheckUtils]: 101: Hoare triple {13756#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {13756#false} is VALID [2018-11-23 12:14:09,447 INFO L273 TraceCheckUtils]: 102: Hoare triple {13756#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {13756#false} is VALID [2018-11-23 12:14:09,447 INFO L273 TraceCheckUtils]: 103: Hoare triple {13756#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {13756#false} is VALID [2018-11-23 12:14:09,447 INFO L273 TraceCheckUtils]: 104: Hoare triple {13756#false} assume !(~i~2 < 39); {13756#false} is VALID [2018-11-23 12:14:09,447 INFO L273 TraceCheckUtils]: 105: Hoare triple {13756#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {13756#false} is VALID [2018-11-23 12:14:09,447 INFO L256 TraceCheckUtils]: 106: Hoare triple {13756#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {13756#false} is VALID [2018-11-23 12:14:09,447 INFO L273 TraceCheckUtils]: 107: Hoare triple {13756#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {13756#false} is VALID [2018-11-23 12:14:09,447 INFO L273 TraceCheckUtils]: 108: Hoare triple {13756#false} assume !!(~i~1 < 40); {13756#false} is VALID [2018-11-23 12:14:09,448 INFO L273 TraceCheckUtils]: 109: Hoare triple {13756#false} assume !(~i~1 > 20); {13756#false} is VALID [2018-11-23 12:14:09,448 INFO L273 TraceCheckUtils]: 110: Hoare triple {13756#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {13756#false} is VALID [2018-11-23 12:14:09,448 INFO L273 TraceCheckUtils]: 111: Hoare triple {13756#false} assume !!(~i~1 < 40); {13756#false} is VALID [2018-11-23 12:14:09,448 INFO L273 TraceCheckUtils]: 112: Hoare triple {13756#false} assume !(~i~1 > 20); {13756#false} is VALID [2018-11-23 12:14:09,448 INFO L273 TraceCheckUtils]: 113: Hoare triple {13756#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {13756#false} is VALID [2018-11-23 12:14:09,448 INFO L273 TraceCheckUtils]: 114: Hoare triple {13756#false} assume !!(~i~1 < 40); {13756#false} is VALID [2018-11-23 12:14:09,448 INFO L273 TraceCheckUtils]: 115: Hoare triple {13756#false} assume !(~i~1 > 20); {13756#false} is VALID [2018-11-23 12:14:09,448 INFO L273 TraceCheckUtils]: 116: Hoare triple {13756#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {13756#false} is VALID [2018-11-23 12:14:09,448 INFO L273 TraceCheckUtils]: 117: Hoare triple {13756#false} assume !!(~i~1 < 40); {13756#false} is VALID [2018-11-23 12:14:09,449 INFO L273 TraceCheckUtils]: 118: Hoare triple {13756#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {13756#false} is VALID [2018-11-23 12:14:09,449 INFO L273 TraceCheckUtils]: 119: Hoare triple {13756#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {13756#false} is VALID [2018-11-23 12:14:09,449 INFO L273 TraceCheckUtils]: 120: Hoare triple {13756#false} assume !!(~i~1 < 40); {13756#false} is VALID [2018-11-23 12:14:09,449 INFO L273 TraceCheckUtils]: 121: Hoare triple {13756#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {13756#false} is VALID [2018-11-23 12:14:09,449 INFO L273 TraceCheckUtils]: 122: Hoare triple {13756#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {13756#false} is VALID [2018-11-23 12:14:09,449 INFO L273 TraceCheckUtils]: 123: Hoare triple {13756#false} assume !!(~i~1 < 40); {13756#false} is VALID [2018-11-23 12:14:09,449 INFO L273 TraceCheckUtils]: 124: Hoare triple {13756#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {13756#false} is VALID [2018-11-23 12:14:09,449 INFO L273 TraceCheckUtils]: 125: Hoare triple {13756#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {13756#false} is VALID [2018-11-23 12:14:09,450 INFO L273 TraceCheckUtils]: 126: Hoare triple {13756#false} assume !!(~i~1 < 40); {13756#false} is VALID [2018-11-23 12:14:09,450 INFO L273 TraceCheckUtils]: 127: Hoare triple {13756#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {13756#false} is VALID [2018-11-23 12:14:09,450 INFO L273 TraceCheckUtils]: 128: Hoare triple {13756#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {13756#false} is VALID [2018-11-23 12:14:09,450 INFO L273 TraceCheckUtils]: 129: Hoare triple {13756#false} assume !!(~i~1 < 40); {13756#false} is VALID [2018-11-23 12:14:09,450 INFO L273 TraceCheckUtils]: 130: Hoare triple {13756#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {13756#false} is VALID [2018-11-23 12:14:09,450 INFO L273 TraceCheckUtils]: 131: Hoare triple {13756#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {13756#false} is VALID [2018-11-23 12:14:09,451 INFO L273 TraceCheckUtils]: 132: Hoare triple {13756#false} assume !(~i~1 < 40); {13756#false} is VALID [2018-11-23 12:14:09,451 INFO L273 TraceCheckUtils]: 133: Hoare triple {13756#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {13756#false} is VALID [2018-11-23 12:14:09,451 INFO L273 TraceCheckUtils]: 134: Hoare triple {13756#false} assume true; {13756#false} is VALID [2018-11-23 12:14:09,451 INFO L268 TraceCheckUtils]: 135: Hoare quadruple {13756#false} {13756#false} #88#return; {13756#false} is VALID [2018-11-23 12:14:09,451 INFO L273 TraceCheckUtils]: 136: Hoare triple {13756#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {13756#false} is VALID [2018-11-23 12:14:09,452 INFO L273 TraceCheckUtils]: 137: Hoare triple {13756#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {13756#false} is VALID [2018-11-23 12:14:09,452 INFO L273 TraceCheckUtils]: 138: Hoare triple {13756#false} assume !false; {13756#false} is VALID [2018-11-23 12:14:09,461 INFO L134 CoverageAnalysis]: Checked inductivity of 1032 backedges. 0 proven. 81 refuted. 0 times theorem prover too weak. 951 trivial. 0 not checked. [2018-11-23 12:14:09,483 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:14:09,483 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [12] total 12 [2018-11-23 12:14:09,484 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 139 [2018-11-23 12:14:09,484 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:14:09,484 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states. [2018-11-23 12:14:09,533 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 53 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:14:09,534 INFO L459 AbstractCegarLoop]: Interpolant automaton has 12 states [2018-11-23 12:14:09,534 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2018-11-23 12:14:09,534 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=66, Invalid=66, Unknown=0, NotChecked=0, Total=132 [2018-11-23 12:14:09,534 INFO L87 Difference]: Start difference. First operand 82 states and 92 transitions. Second operand 12 states. [2018-11-23 12:14:10,211 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:10,211 INFO L93 Difference]: Finished difference Result 140 states and 160 transitions. [2018-11-23 12:14:10,211 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2018-11-23 12:14:10,211 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 139 [2018-11-23 12:14:10,211 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:14:10,211 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2018-11-23 12:14:10,212 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 86 transitions. [2018-11-23 12:14:10,212 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2018-11-23 12:14:10,213 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 86 transitions. [2018-11-23 12:14:10,213 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states and 86 transitions. [2018-11-23 12:14:10,290 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 86 edges. 86 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:14:10,292 INFO L225 Difference]: With dead ends: 140 [2018-11-23 12:14:10,292 INFO L226 Difference]: Without dead ends: 85 [2018-11-23 12:14:10,293 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 138 GetRequests, 128 SyntacticMatches, 0 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=66, Invalid=66, Unknown=0, NotChecked=0, Total=132 [2018-11-23 12:14:10,293 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 85 states. [2018-11-23 12:14:10,327 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 85 to 84. [2018-11-23 12:14:10,327 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:14:10,328 INFO L82 GeneralOperation]: Start isEquivalent. First operand 85 states. Second operand 84 states. [2018-11-23 12:14:10,328 INFO L74 IsIncluded]: Start isIncluded. First operand 85 states. Second operand 84 states. [2018-11-23 12:14:10,328 INFO L87 Difference]: Start difference. First operand 85 states. Second operand 84 states. [2018-11-23 12:14:10,330 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:10,331 INFO L93 Difference]: Finished difference Result 85 states and 95 transitions. [2018-11-23 12:14:10,331 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 95 transitions. [2018-11-23 12:14:10,332 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:14:10,332 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:14:10,332 INFO L74 IsIncluded]: Start isIncluded. First operand 84 states. Second operand 85 states. [2018-11-23 12:14:10,333 INFO L87 Difference]: Start difference. First operand 84 states. Second operand 85 states. [2018-11-23 12:14:10,334 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:10,334 INFO L93 Difference]: Finished difference Result 85 states and 95 transitions. [2018-11-23 12:14:10,335 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 95 transitions. [2018-11-23 12:14:10,335 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:14:10,335 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:14:10,335 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:14:10,335 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:14:10,336 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 84 states. [2018-11-23 12:14:10,337 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 84 states to 84 states and 94 transitions. [2018-11-23 12:14:10,337 INFO L78 Accepts]: Start accepts. Automaton has 84 states and 94 transitions. Word has length 139 [2018-11-23 12:14:10,338 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:14:10,338 INFO L480 AbstractCegarLoop]: Abstraction has 84 states and 94 transitions. [2018-11-23 12:14:10,338 INFO L481 AbstractCegarLoop]: Interpolant automaton has 12 states. [2018-11-23 12:14:10,338 INFO L276 IsEmpty]: Start isEmpty. Operand 84 states and 94 transitions. [2018-11-23 12:14:10,339 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 142 [2018-11-23 12:14:10,339 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:14:10,339 INFO L402 BasicCegarLoop]: trace histogram [24, 24, 15, 10, 10, 9, 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, 1, 1, 1, 1, 1] [2018-11-23 12:14:10,339 INFO L423 AbstractCegarLoop]: === Iteration 25 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:14:10,340 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:14:10,340 INFO L82 PathProgramCache]: Analyzing trace with hash -984570890, now seen corresponding path program 20 times [2018-11-23 12:14:10,340 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:14:10,340 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:14:10,341 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:14:10,341 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:14:10,341 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:14:10,354 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:14:10,354 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:14:10,354 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 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 26 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:14:10,370 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-23 12:14:10,427 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-23 12:14:10,427 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:14:10,467 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:14:10,468 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:14:10,771 INFO L256 TraceCheckUtils]: 0: Hoare triple {14671#true} call ULTIMATE.init(); {14671#true} is VALID [2018-11-23 12:14:10,772 INFO L273 TraceCheckUtils]: 1: Hoare triple {14671#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {14671#true} is VALID [2018-11-23 12:14:10,772 INFO L273 TraceCheckUtils]: 2: Hoare triple {14671#true} assume true; {14671#true} is VALID [2018-11-23 12:14:10,772 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {14671#true} {14671#true} #78#return; {14671#true} is VALID [2018-11-23 12:14:10,773 INFO L256 TraceCheckUtils]: 4: Hoare triple {14671#true} call #t~ret12 := main(); {14671#true} is VALID [2018-11-23 12:14:10,773 INFO L273 TraceCheckUtils]: 5: Hoare triple {14671#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {14671#true} is VALID [2018-11-23 12:14:10,773 INFO L256 TraceCheckUtils]: 6: Hoare triple {14671#true} call init_nondet(~#x~0.base, ~#x~0.offset); {14671#true} is VALID [2018-11-23 12:14:10,774 INFO L273 TraceCheckUtils]: 7: Hoare triple {14671#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {14697#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:14:10,774 INFO L273 TraceCheckUtils]: 8: Hoare triple {14697#(<= init_nondet_~i~0 0)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {14697#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:14:10,775 INFO L273 TraceCheckUtils]: 9: Hoare triple {14697#(<= init_nondet_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14704#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:14:10,775 INFO L273 TraceCheckUtils]: 10: Hoare triple {14704#(<= init_nondet_~i~0 1)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {14704#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:14:10,775 INFO L273 TraceCheckUtils]: 11: Hoare triple {14704#(<= init_nondet_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14711#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:14:10,776 INFO L273 TraceCheckUtils]: 12: Hoare triple {14711#(<= init_nondet_~i~0 2)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {14711#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:14:10,776 INFO L273 TraceCheckUtils]: 13: Hoare triple {14711#(<= init_nondet_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14718#(<= init_nondet_~i~0 3)} is VALID [2018-11-23 12:14:10,777 INFO L273 TraceCheckUtils]: 14: Hoare triple {14718#(<= init_nondet_~i~0 3)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {14718#(<= init_nondet_~i~0 3)} is VALID [2018-11-23 12:14:10,777 INFO L273 TraceCheckUtils]: 15: Hoare triple {14718#(<= init_nondet_~i~0 3)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14725#(<= init_nondet_~i~0 4)} is VALID [2018-11-23 12:14:10,778 INFO L273 TraceCheckUtils]: 16: Hoare triple {14725#(<= init_nondet_~i~0 4)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {14725#(<= init_nondet_~i~0 4)} is VALID [2018-11-23 12:14:10,779 INFO L273 TraceCheckUtils]: 17: Hoare triple {14725#(<= init_nondet_~i~0 4)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14732#(<= init_nondet_~i~0 5)} is VALID [2018-11-23 12:14:10,779 INFO L273 TraceCheckUtils]: 18: Hoare triple {14732#(<= init_nondet_~i~0 5)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {14732#(<= init_nondet_~i~0 5)} is VALID [2018-11-23 12:14:10,780 INFO L273 TraceCheckUtils]: 19: Hoare triple {14732#(<= init_nondet_~i~0 5)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14739#(<= init_nondet_~i~0 6)} is VALID [2018-11-23 12:14:10,780 INFO L273 TraceCheckUtils]: 20: Hoare triple {14739#(<= init_nondet_~i~0 6)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {14739#(<= init_nondet_~i~0 6)} is VALID [2018-11-23 12:14:10,781 INFO L273 TraceCheckUtils]: 21: Hoare triple {14739#(<= init_nondet_~i~0 6)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14746#(<= init_nondet_~i~0 7)} is VALID [2018-11-23 12:14:10,782 INFO L273 TraceCheckUtils]: 22: Hoare triple {14746#(<= init_nondet_~i~0 7)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {14746#(<= init_nondet_~i~0 7)} is VALID [2018-11-23 12:14:10,782 INFO L273 TraceCheckUtils]: 23: Hoare triple {14746#(<= init_nondet_~i~0 7)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14753#(<= init_nondet_~i~0 8)} is VALID [2018-11-23 12:14:10,783 INFO L273 TraceCheckUtils]: 24: Hoare triple {14753#(<= init_nondet_~i~0 8)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {14753#(<= init_nondet_~i~0 8)} is VALID [2018-11-23 12:14:10,784 INFO L273 TraceCheckUtils]: 25: Hoare triple {14753#(<= init_nondet_~i~0 8)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14760#(<= init_nondet_~i~0 9)} is VALID [2018-11-23 12:14:10,784 INFO L273 TraceCheckUtils]: 26: Hoare triple {14760#(<= init_nondet_~i~0 9)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {14760#(<= init_nondet_~i~0 9)} is VALID [2018-11-23 12:14:10,785 INFO L273 TraceCheckUtils]: 27: Hoare triple {14760#(<= init_nondet_~i~0 9)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14767#(<= init_nondet_~i~0 10)} is VALID [2018-11-23 12:14:10,786 INFO L273 TraceCheckUtils]: 28: Hoare triple {14767#(<= init_nondet_~i~0 10)} assume !(~i~0 < 40); {14672#false} is VALID [2018-11-23 12:14:10,786 INFO L273 TraceCheckUtils]: 29: Hoare triple {14672#false} assume true; {14672#false} is VALID [2018-11-23 12:14:10,786 INFO L268 TraceCheckUtils]: 30: Hoare quadruple {14672#false} {14671#true} #82#return; {14672#false} is VALID [2018-11-23 12:14:10,786 INFO L273 TraceCheckUtils]: 31: Hoare triple {14672#false} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {14672#false} is VALID [2018-11-23 12:14:10,786 INFO L256 TraceCheckUtils]: 32: Hoare triple {14672#false} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {14672#false} is VALID [2018-11-23 12:14:10,787 INFO L273 TraceCheckUtils]: 33: Hoare triple {14672#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {14672#false} is VALID [2018-11-23 12:14:10,787 INFO L273 TraceCheckUtils]: 34: Hoare triple {14672#false} assume !!(~i~1 < 40); {14672#false} is VALID [2018-11-23 12:14:10,787 INFO L273 TraceCheckUtils]: 35: Hoare triple {14672#false} assume !(~i~1 > 20); {14672#false} is VALID [2018-11-23 12:14:10,787 INFO L273 TraceCheckUtils]: 36: Hoare triple {14672#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {14672#false} is VALID [2018-11-23 12:14:10,787 INFO L273 TraceCheckUtils]: 37: Hoare triple {14672#false} assume !!(~i~1 < 40); {14672#false} is VALID [2018-11-23 12:14:10,788 INFO L273 TraceCheckUtils]: 38: Hoare triple {14672#false} assume !(~i~1 > 20); {14672#false} is VALID [2018-11-23 12:14:10,788 INFO L273 TraceCheckUtils]: 39: Hoare triple {14672#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {14672#false} is VALID [2018-11-23 12:14:10,788 INFO L273 TraceCheckUtils]: 40: Hoare triple {14672#false} assume !!(~i~1 < 40); {14672#false} is VALID [2018-11-23 12:14:10,788 INFO L273 TraceCheckUtils]: 41: Hoare triple {14672#false} assume !(~i~1 > 20); {14672#false} is VALID [2018-11-23 12:14:10,788 INFO L273 TraceCheckUtils]: 42: Hoare triple {14672#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {14672#false} is VALID [2018-11-23 12:14:10,789 INFO L273 TraceCheckUtils]: 43: Hoare triple {14672#false} assume !!(~i~1 < 40); {14672#false} is VALID [2018-11-23 12:14:10,789 INFO L273 TraceCheckUtils]: 44: Hoare triple {14672#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {14672#false} is VALID [2018-11-23 12:14:10,789 INFO L273 TraceCheckUtils]: 45: Hoare triple {14672#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {14672#false} is VALID [2018-11-23 12:14:10,789 INFO L273 TraceCheckUtils]: 46: Hoare triple {14672#false} assume !!(~i~1 < 40); {14672#false} is VALID [2018-11-23 12:14:10,789 INFO L273 TraceCheckUtils]: 47: Hoare triple {14672#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {14672#false} is VALID [2018-11-23 12:14:10,789 INFO L273 TraceCheckUtils]: 48: Hoare triple {14672#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {14672#false} is VALID [2018-11-23 12:14:10,790 INFO L273 TraceCheckUtils]: 49: Hoare triple {14672#false} assume !!(~i~1 < 40); {14672#false} is VALID [2018-11-23 12:14:10,790 INFO L273 TraceCheckUtils]: 50: Hoare triple {14672#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {14672#false} is VALID [2018-11-23 12:14:10,790 INFO L273 TraceCheckUtils]: 51: Hoare triple {14672#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {14672#false} is VALID [2018-11-23 12:14:10,790 INFO L273 TraceCheckUtils]: 52: Hoare triple {14672#false} assume !!(~i~1 < 40); {14672#false} is VALID [2018-11-23 12:14:10,790 INFO L273 TraceCheckUtils]: 53: Hoare triple {14672#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {14672#false} is VALID [2018-11-23 12:14:10,791 INFO L273 TraceCheckUtils]: 54: Hoare triple {14672#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {14672#false} is VALID [2018-11-23 12:14:10,791 INFO L273 TraceCheckUtils]: 55: Hoare triple {14672#false} assume !!(~i~1 < 40); {14672#false} is VALID [2018-11-23 12:14:10,791 INFO L273 TraceCheckUtils]: 56: Hoare triple {14672#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {14672#false} is VALID [2018-11-23 12:14:10,791 INFO L273 TraceCheckUtils]: 57: Hoare triple {14672#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {14672#false} is VALID [2018-11-23 12:14:10,791 INFO L273 TraceCheckUtils]: 58: Hoare triple {14672#false} assume !(~i~1 < 40); {14672#false} is VALID [2018-11-23 12:14:10,791 INFO L273 TraceCheckUtils]: 59: Hoare triple {14672#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {14672#false} is VALID [2018-11-23 12:14:10,791 INFO L273 TraceCheckUtils]: 60: Hoare triple {14672#false} assume true; {14672#false} is VALID [2018-11-23 12:14:10,791 INFO L268 TraceCheckUtils]: 61: Hoare quadruple {14672#false} {14672#false} #84#return; {14672#false} is VALID [2018-11-23 12:14:10,791 INFO L273 TraceCheckUtils]: 62: Hoare triple {14672#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {14672#false} is VALID [2018-11-23 12:14:10,792 INFO L256 TraceCheckUtils]: 63: Hoare triple {14672#false} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {14672#false} is VALID [2018-11-23 12:14:10,792 INFO L273 TraceCheckUtils]: 64: Hoare triple {14672#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {14672#false} is VALID [2018-11-23 12:14:10,792 INFO L273 TraceCheckUtils]: 65: Hoare triple {14672#false} assume !!(~i~1 < 40); {14672#false} is VALID [2018-11-23 12:14:10,792 INFO L273 TraceCheckUtils]: 66: Hoare triple {14672#false} assume !(~i~1 > 20); {14672#false} is VALID [2018-11-23 12:14:10,792 INFO L273 TraceCheckUtils]: 67: Hoare triple {14672#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {14672#false} is VALID [2018-11-23 12:14:10,792 INFO L273 TraceCheckUtils]: 68: Hoare triple {14672#false} assume !!(~i~1 < 40); {14672#false} is VALID [2018-11-23 12:14:10,792 INFO L273 TraceCheckUtils]: 69: Hoare triple {14672#false} assume !(~i~1 > 20); {14672#false} is VALID [2018-11-23 12:14:10,792 INFO L273 TraceCheckUtils]: 70: Hoare triple {14672#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {14672#false} is VALID [2018-11-23 12:14:10,792 INFO L273 TraceCheckUtils]: 71: Hoare triple {14672#false} assume !!(~i~1 < 40); {14672#false} is VALID [2018-11-23 12:14:10,793 INFO L273 TraceCheckUtils]: 72: Hoare triple {14672#false} assume !(~i~1 > 20); {14672#false} is VALID [2018-11-23 12:14:10,793 INFO L273 TraceCheckUtils]: 73: Hoare triple {14672#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {14672#false} is VALID [2018-11-23 12:14:10,793 INFO L273 TraceCheckUtils]: 74: Hoare triple {14672#false} assume !!(~i~1 < 40); {14672#false} is VALID [2018-11-23 12:14:10,793 INFO L273 TraceCheckUtils]: 75: Hoare triple {14672#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {14672#false} is VALID [2018-11-23 12:14:10,793 INFO L273 TraceCheckUtils]: 76: Hoare triple {14672#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {14672#false} is VALID [2018-11-23 12:14:10,793 INFO L273 TraceCheckUtils]: 77: Hoare triple {14672#false} assume !!(~i~1 < 40); {14672#false} is VALID [2018-11-23 12:14:10,793 INFO L273 TraceCheckUtils]: 78: Hoare triple {14672#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {14672#false} is VALID [2018-11-23 12:14:10,793 INFO L273 TraceCheckUtils]: 79: Hoare triple {14672#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {14672#false} is VALID [2018-11-23 12:14:10,793 INFO L273 TraceCheckUtils]: 80: Hoare triple {14672#false} assume !!(~i~1 < 40); {14672#false} is VALID [2018-11-23 12:14:10,794 INFO L273 TraceCheckUtils]: 81: Hoare triple {14672#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {14672#false} is VALID [2018-11-23 12:14:10,794 INFO L273 TraceCheckUtils]: 82: Hoare triple {14672#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {14672#false} is VALID [2018-11-23 12:14:10,794 INFO L273 TraceCheckUtils]: 83: Hoare triple {14672#false} assume !!(~i~1 < 40); {14672#false} is VALID [2018-11-23 12:14:10,794 INFO L273 TraceCheckUtils]: 84: Hoare triple {14672#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {14672#false} is VALID [2018-11-23 12:14:10,794 INFO L273 TraceCheckUtils]: 85: Hoare triple {14672#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {14672#false} is VALID [2018-11-23 12:14:10,794 INFO L273 TraceCheckUtils]: 86: Hoare triple {14672#false} assume !!(~i~1 < 40); {14672#false} is VALID [2018-11-23 12:14:10,794 INFO L273 TraceCheckUtils]: 87: Hoare triple {14672#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {14672#false} is VALID [2018-11-23 12:14:10,794 INFO L273 TraceCheckUtils]: 88: Hoare triple {14672#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {14672#false} is VALID [2018-11-23 12:14:10,794 INFO L273 TraceCheckUtils]: 89: Hoare triple {14672#false} assume !(~i~1 < 40); {14672#false} is VALID [2018-11-23 12:14:10,795 INFO L273 TraceCheckUtils]: 90: Hoare triple {14672#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {14672#false} is VALID [2018-11-23 12:14:10,795 INFO L273 TraceCheckUtils]: 91: Hoare triple {14672#false} assume true; {14672#false} is VALID [2018-11-23 12:14:10,795 INFO L268 TraceCheckUtils]: 92: Hoare quadruple {14672#false} {14672#false} #86#return; {14672#false} is VALID [2018-11-23 12:14:10,795 INFO L273 TraceCheckUtils]: 93: Hoare triple {14672#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {14672#false} is VALID [2018-11-23 12:14:10,795 INFO L273 TraceCheckUtils]: 94: Hoare triple {14672#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {14672#false} is VALID [2018-11-23 12:14:10,795 INFO L273 TraceCheckUtils]: 95: Hoare triple {14672#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {14672#false} is VALID [2018-11-23 12:14:10,795 INFO L273 TraceCheckUtils]: 96: Hoare triple {14672#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {14672#false} is VALID [2018-11-23 12:14:10,795 INFO L273 TraceCheckUtils]: 97: Hoare triple {14672#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {14672#false} is VALID [2018-11-23 12:14:10,796 INFO L273 TraceCheckUtils]: 98: Hoare triple {14672#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {14672#false} is VALID [2018-11-23 12:14:10,796 INFO L273 TraceCheckUtils]: 99: Hoare triple {14672#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {14672#false} is VALID [2018-11-23 12:14:10,796 INFO L273 TraceCheckUtils]: 100: Hoare triple {14672#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {14672#false} is VALID [2018-11-23 12:14:10,796 INFO L273 TraceCheckUtils]: 101: Hoare triple {14672#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {14672#false} is VALID [2018-11-23 12:14:10,796 INFO L273 TraceCheckUtils]: 102: Hoare triple {14672#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {14672#false} is VALID [2018-11-23 12:14:10,796 INFO L273 TraceCheckUtils]: 103: Hoare triple {14672#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {14672#false} is VALID [2018-11-23 12:14:10,796 INFO L273 TraceCheckUtils]: 104: Hoare triple {14672#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {14672#false} is VALID [2018-11-23 12:14:10,796 INFO L273 TraceCheckUtils]: 105: Hoare triple {14672#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {14672#false} is VALID [2018-11-23 12:14:10,796 INFO L273 TraceCheckUtils]: 106: Hoare triple {14672#false} assume !(~i~2 < 39); {14672#false} is VALID [2018-11-23 12:14:10,797 INFO L273 TraceCheckUtils]: 107: Hoare triple {14672#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {14672#false} is VALID [2018-11-23 12:14:10,797 INFO L256 TraceCheckUtils]: 108: Hoare triple {14672#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {14672#false} is VALID [2018-11-23 12:14:10,797 INFO L273 TraceCheckUtils]: 109: Hoare triple {14672#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {14672#false} is VALID [2018-11-23 12:14:10,797 INFO L273 TraceCheckUtils]: 110: Hoare triple {14672#false} assume !!(~i~1 < 40); {14672#false} is VALID [2018-11-23 12:14:10,797 INFO L273 TraceCheckUtils]: 111: Hoare triple {14672#false} assume !(~i~1 > 20); {14672#false} is VALID [2018-11-23 12:14:10,797 INFO L273 TraceCheckUtils]: 112: Hoare triple {14672#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {14672#false} is VALID [2018-11-23 12:14:10,797 INFO L273 TraceCheckUtils]: 113: Hoare triple {14672#false} assume !!(~i~1 < 40); {14672#false} is VALID [2018-11-23 12:14:10,797 INFO L273 TraceCheckUtils]: 114: Hoare triple {14672#false} assume !(~i~1 > 20); {14672#false} is VALID [2018-11-23 12:14:10,797 INFO L273 TraceCheckUtils]: 115: Hoare triple {14672#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {14672#false} is VALID [2018-11-23 12:14:10,798 INFO L273 TraceCheckUtils]: 116: Hoare triple {14672#false} assume !!(~i~1 < 40); {14672#false} is VALID [2018-11-23 12:14:10,798 INFO L273 TraceCheckUtils]: 117: Hoare triple {14672#false} assume !(~i~1 > 20); {14672#false} is VALID [2018-11-23 12:14:10,798 INFO L273 TraceCheckUtils]: 118: Hoare triple {14672#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {14672#false} is VALID [2018-11-23 12:14:10,798 INFO L273 TraceCheckUtils]: 119: Hoare triple {14672#false} assume !!(~i~1 < 40); {14672#false} is VALID [2018-11-23 12:14:10,798 INFO L273 TraceCheckUtils]: 120: Hoare triple {14672#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {14672#false} is VALID [2018-11-23 12:14:10,798 INFO L273 TraceCheckUtils]: 121: Hoare triple {14672#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {14672#false} is VALID [2018-11-23 12:14:10,798 INFO L273 TraceCheckUtils]: 122: Hoare triple {14672#false} assume !!(~i~1 < 40); {14672#false} is VALID [2018-11-23 12:14:10,798 INFO L273 TraceCheckUtils]: 123: Hoare triple {14672#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {14672#false} is VALID [2018-11-23 12:14:10,798 INFO L273 TraceCheckUtils]: 124: Hoare triple {14672#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {14672#false} is VALID [2018-11-23 12:14:10,799 INFO L273 TraceCheckUtils]: 125: Hoare triple {14672#false} assume !!(~i~1 < 40); {14672#false} is VALID [2018-11-23 12:14:10,799 INFO L273 TraceCheckUtils]: 126: Hoare triple {14672#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {14672#false} is VALID [2018-11-23 12:14:10,799 INFO L273 TraceCheckUtils]: 127: Hoare triple {14672#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {14672#false} is VALID [2018-11-23 12:14:10,799 INFO L273 TraceCheckUtils]: 128: Hoare triple {14672#false} assume !!(~i~1 < 40); {14672#false} is VALID [2018-11-23 12:14:10,799 INFO L273 TraceCheckUtils]: 129: Hoare triple {14672#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {14672#false} is VALID [2018-11-23 12:14:10,799 INFO L273 TraceCheckUtils]: 130: Hoare triple {14672#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {14672#false} is VALID [2018-11-23 12:14:10,799 INFO L273 TraceCheckUtils]: 131: Hoare triple {14672#false} assume !!(~i~1 < 40); {14672#false} is VALID [2018-11-23 12:14:10,799 INFO L273 TraceCheckUtils]: 132: Hoare triple {14672#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {14672#false} is VALID [2018-11-23 12:14:10,800 INFO L273 TraceCheckUtils]: 133: Hoare triple {14672#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {14672#false} is VALID [2018-11-23 12:14:10,800 INFO L273 TraceCheckUtils]: 134: Hoare triple {14672#false} assume !(~i~1 < 40); {14672#false} is VALID [2018-11-23 12:14:10,800 INFO L273 TraceCheckUtils]: 135: Hoare triple {14672#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {14672#false} is VALID [2018-11-23 12:14:10,800 INFO L273 TraceCheckUtils]: 136: Hoare triple {14672#false} assume true; {14672#false} is VALID [2018-11-23 12:14:10,800 INFO L268 TraceCheckUtils]: 137: Hoare quadruple {14672#false} {14672#false} #88#return; {14672#false} is VALID [2018-11-23 12:14:10,800 INFO L273 TraceCheckUtils]: 138: Hoare triple {14672#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {14672#false} is VALID [2018-11-23 12:14:10,800 INFO L273 TraceCheckUtils]: 139: Hoare triple {14672#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {14672#false} is VALID [2018-11-23 12:14:10,800 INFO L273 TraceCheckUtils]: 140: Hoare triple {14672#false} assume !false; {14672#false} is VALID [2018-11-23 12:14:10,808 INFO L134 CoverageAnalysis]: Checked inductivity of 1051 backedges. 0 proven. 100 refuted. 0 times theorem prover too weak. 951 trivial. 0 not checked. [2018-11-23 12:14:10,827 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:14:10,827 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [13] total 13 [2018-11-23 12:14:10,827 INFO L78 Accepts]: Start accepts. Automaton has 13 states. Word has length 141 [2018-11-23 12:14:10,827 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:14:10,828 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states. [2018-11-23 12:14:10,878 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 55 edges. 55 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:14:10,878 INFO L459 AbstractCegarLoop]: Interpolant automaton has 13 states [2018-11-23 12:14:10,879 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2018-11-23 12:14:10,879 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=78, Invalid=78, Unknown=0, NotChecked=0, Total=156 [2018-11-23 12:14:10,879 INFO L87 Difference]: Start difference. First operand 84 states and 94 transitions. Second operand 13 states. [2018-11-23 12:14:11,099 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:11,099 INFO L93 Difference]: Finished difference Result 142 states and 162 transitions. [2018-11-23 12:14:11,099 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2018-11-23 12:14:11,099 INFO L78 Accepts]: Start accepts. Automaton has 13 states. Word has length 141 [2018-11-23 12:14:11,100 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:14:11,100 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 13 states. [2018-11-23 12:14:11,101 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 88 transitions. [2018-11-23 12:14:11,101 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 13 states. [2018-11-23 12:14:11,102 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 88 transitions. [2018-11-23 12:14:11,102 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states and 88 transitions. [2018-11-23 12:14:11,359 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-23 12:14:11,361 INFO L225 Difference]: With dead ends: 142 [2018-11-23 12:14:11,361 INFO L226 Difference]: Without dead ends: 87 [2018-11-23 12:14:11,361 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 140 GetRequests, 129 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=78, Invalid=78, Unknown=0, NotChecked=0, Total=156 [2018-11-23 12:14:11,362 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 87 states. [2018-11-23 12:14:11,410 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 87 to 86. [2018-11-23 12:14:11,410 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:14:11,411 INFO L82 GeneralOperation]: Start isEquivalent. First operand 87 states. Second operand 86 states. [2018-11-23 12:14:11,411 INFO L74 IsIncluded]: Start isIncluded. First operand 87 states. Second operand 86 states. [2018-11-23 12:14:11,411 INFO L87 Difference]: Start difference. First operand 87 states. Second operand 86 states. [2018-11-23 12:14:11,412 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:11,413 INFO L93 Difference]: Finished difference Result 87 states and 97 transitions. [2018-11-23 12:14:11,413 INFO L276 IsEmpty]: Start isEmpty. Operand 87 states and 97 transitions. [2018-11-23 12:14:11,413 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:14:11,413 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:14:11,413 INFO L74 IsIncluded]: Start isIncluded. First operand 86 states. Second operand 87 states. [2018-11-23 12:14:11,413 INFO L87 Difference]: Start difference. First operand 86 states. Second operand 87 states. [2018-11-23 12:14:11,415 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:11,415 INFO L93 Difference]: Finished difference Result 87 states and 97 transitions. [2018-11-23 12:14:11,415 INFO L276 IsEmpty]: Start isEmpty. Operand 87 states and 97 transitions. [2018-11-23 12:14:11,415 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:14:11,416 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:14:11,416 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:14:11,416 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:14:11,416 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 86 states. [2018-11-23 12:14:11,417 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 86 states to 86 states and 96 transitions. [2018-11-23 12:14:11,418 INFO L78 Accepts]: Start accepts. Automaton has 86 states and 96 transitions. Word has length 141 [2018-11-23 12:14:11,418 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:14:11,418 INFO L480 AbstractCegarLoop]: Abstraction has 86 states and 96 transitions. [2018-11-23 12:14:11,418 INFO L481 AbstractCegarLoop]: Interpolant automaton has 13 states. [2018-11-23 12:14:11,418 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 96 transitions. [2018-11-23 12:14:11,419 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 144 [2018-11-23 12:14:11,419 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:14:11,419 INFO L402 BasicCegarLoop]: trace histogram [24, 24, 15, 11, 11, 9, 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, 1, 1, 1, 1, 1] [2018-11-23 12:14:11,420 INFO L423 AbstractCegarLoop]: === Iteration 26 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:14:11,420 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:14:11,420 INFO L82 PathProgramCache]: Analyzing trace with hash 1446854004, now seen corresponding path program 21 times [2018-11-23 12:14:11,420 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:14:11,420 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:14:11,421 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:14:11,421 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:14:11,421 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:14:11,434 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:14:11,435 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:14:11,435 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 27 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 27 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:14:11,452 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-23 12:14:12,168 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 8 check-sat command(s) [2018-11-23 12:14:12,169 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:14:12,211 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:14:12,214 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:14:13,001 INFO L256 TraceCheckUtils]: 0: Hoare triple {15604#true} call ULTIMATE.init(); {15604#true} is VALID [2018-11-23 12:14:13,002 INFO L273 TraceCheckUtils]: 1: Hoare triple {15604#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {15604#true} is VALID [2018-11-23 12:14:13,002 INFO L273 TraceCheckUtils]: 2: Hoare triple {15604#true} assume true; {15604#true} is VALID [2018-11-23 12:14:13,002 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {15604#true} {15604#true} #78#return; {15604#true} is VALID [2018-11-23 12:14:13,002 INFO L256 TraceCheckUtils]: 4: Hoare triple {15604#true} call #t~ret12 := main(); {15604#true} is VALID [2018-11-23 12:14:13,003 INFO L273 TraceCheckUtils]: 5: Hoare triple {15604#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {15604#true} is VALID [2018-11-23 12:14:13,003 INFO L256 TraceCheckUtils]: 6: Hoare triple {15604#true} call init_nondet(~#x~0.base, ~#x~0.offset); {15604#true} is VALID [2018-11-23 12:14:13,003 INFO L273 TraceCheckUtils]: 7: Hoare triple {15604#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {15604#true} is VALID [2018-11-23 12:14:13,003 INFO L273 TraceCheckUtils]: 8: Hoare triple {15604#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {15604#true} is VALID [2018-11-23 12:14:13,003 INFO L273 TraceCheckUtils]: 9: Hoare triple {15604#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15604#true} is VALID [2018-11-23 12:14:13,004 INFO L273 TraceCheckUtils]: 10: Hoare triple {15604#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {15604#true} is VALID [2018-11-23 12:14:13,004 INFO L273 TraceCheckUtils]: 11: Hoare triple {15604#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15604#true} is VALID [2018-11-23 12:14:13,004 INFO L273 TraceCheckUtils]: 12: Hoare triple {15604#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {15604#true} is VALID [2018-11-23 12:14:13,004 INFO L273 TraceCheckUtils]: 13: Hoare triple {15604#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15604#true} is VALID [2018-11-23 12:14:13,004 INFO L273 TraceCheckUtils]: 14: Hoare triple {15604#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {15604#true} is VALID [2018-11-23 12:14:13,005 INFO L273 TraceCheckUtils]: 15: Hoare triple {15604#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15604#true} is VALID [2018-11-23 12:14:13,005 INFO L273 TraceCheckUtils]: 16: Hoare triple {15604#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {15604#true} is VALID [2018-11-23 12:14:13,005 INFO L273 TraceCheckUtils]: 17: Hoare triple {15604#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15604#true} is VALID [2018-11-23 12:14:13,005 INFO L273 TraceCheckUtils]: 18: Hoare triple {15604#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {15604#true} is VALID [2018-11-23 12:14:13,005 INFO L273 TraceCheckUtils]: 19: Hoare triple {15604#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15604#true} is VALID [2018-11-23 12:14:13,005 INFO L273 TraceCheckUtils]: 20: Hoare triple {15604#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {15604#true} is VALID [2018-11-23 12:14:13,005 INFO L273 TraceCheckUtils]: 21: Hoare triple {15604#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15604#true} is VALID [2018-11-23 12:14:13,005 INFO L273 TraceCheckUtils]: 22: Hoare triple {15604#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {15604#true} is VALID [2018-11-23 12:14:13,005 INFO L273 TraceCheckUtils]: 23: Hoare triple {15604#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15604#true} is VALID [2018-11-23 12:14:13,006 INFO L273 TraceCheckUtils]: 24: Hoare triple {15604#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {15604#true} is VALID [2018-11-23 12:14:13,006 INFO L273 TraceCheckUtils]: 25: Hoare triple {15604#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15604#true} is VALID [2018-11-23 12:14:13,006 INFO L273 TraceCheckUtils]: 26: Hoare triple {15604#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {15604#true} is VALID [2018-11-23 12:14:13,006 INFO L273 TraceCheckUtils]: 27: Hoare triple {15604#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15604#true} is VALID [2018-11-23 12:14:13,006 INFO L273 TraceCheckUtils]: 28: Hoare triple {15604#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {15604#true} is VALID [2018-11-23 12:14:13,006 INFO L273 TraceCheckUtils]: 29: Hoare triple {15604#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15604#true} is VALID [2018-11-23 12:14:13,006 INFO L273 TraceCheckUtils]: 30: Hoare triple {15604#true} assume !(~i~0 < 40); {15604#true} is VALID [2018-11-23 12:14:13,006 INFO L273 TraceCheckUtils]: 31: Hoare triple {15604#true} assume true; {15604#true} is VALID [2018-11-23 12:14:13,007 INFO L268 TraceCheckUtils]: 32: Hoare quadruple {15604#true} {15604#true} #82#return; {15604#true} is VALID [2018-11-23 12:14:13,007 INFO L273 TraceCheckUtils]: 33: Hoare triple {15604#true} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {15604#true} is VALID [2018-11-23 12:14:13,007 INFO L256 TraceCheckUtils]: 34: Hoare triple {15604#true} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {15604#true} is VALID [2018-11-23 12:14:13,007 INFO L273 TraceCheckUtils]: 35: Hoare triple {15604#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {15604#true} is VALID [2018-11-23 12:14:13,007 INFO L273 TraceCheckUtils]: 36: Hoare triple {15604#true} assume !!(~i~1 < 40); {15604#true} is VALID [2018-11-23 12:14:13,007 INFO L273 TraceCheckUtils]: 37: Hoare triple {15604#true} assume !(~i~1 > 20); {15604#true} is VALID [2018-11-23 12:14:13,007 INFO L273 TraceCheckUtils]: 38: Hoare triple {15604#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {15604#true} is VALID [2018-11-23 12:14:13,007 INFO L273 TraceCheckUtils]: 39: Hoare triple {15604#true} assume !!(~i~1 < 40); {15604#true} is VALID [2018-11-23 12:14:13,007 INFO L273 TraceCheckUtils]: 40: Hoare triple {15604#true} assume !(~i~1 > 20); {15604#true} is VALID [2018-11-23 12:14:13,008 INFO L273 TraceCheckUtils]: 41: Hoare triple {15604#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {15604#true} is VALID [2018-11-23 12:14:13,008 INFO L273 TraceCheckUtils]: 42: Hoare triple {15604#true} assume !!(~i~1 < 40); {15604#true} is VALID [2018-11-23 12:14:13,008 INFO L273 TraceCheckUtils]: 43: Hoare triple {15604#true} assume !(~i~1 > 20); {15604#true} is VALID [2018-11-23 12:14:13,008 INFO L273 TraceCheckUtils]: 44: Hoare triple {15604#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {15604#true} is VALID [2018-11-23 12:14:13,008 INFO L273 TraceCheckUtils]: 45: Hoare triple {15604#true} assume !!(~i~1 < 40); {15604#true} is VALID [2018-11-23 12:14:13,008 INFO L273 TraceCheckUtils]: 46: Hoare triple {15604#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {15604#true} is VALID [2018-11-23 12:14:13,008 INFO L273 TraceCheckUtils]: 47: Hoare triple {15604#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {15604#true} is VALID [2018-11-23 12:14:13,008 INFO L273 TraceCheckUtils]: 48: Hoare triple {15604#true} assume !!(~i~1 < 40); {15604#true} is VALID [2018-11-23 12:14:13,009 INFO L273 TraceCheckUtils]: 49: Hoare triple {15604#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {15604#true} is VALID [2018-11-23 12:14:13,009 INFO L273 TraceCheckUtils]: 50: Hoare triple {15604#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {15604#true} is VALID [2018-11-23 12:14:13,009 INFO L273 TraceCheckUtils]: 51: Hoare triple {15604#true} assume !!(~i~1 < 40); {15604#true} is VALID [2018-11-23 12:14:13,009 INFO L273 TraceCheckUtils]: 52: Hoare triple {15604#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {15604#true} is VALID [2018-11-23 12:14:13,009 INFO L273 TraceCheckUtils]: 53: Hoare triple {15604#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {15604#true} is VALID [2018-11-23 12:14:13,009 INFO L273 TraceCheckUtils]: 54: Hoare triple {15604#true} assume !!(~i~1 < 40); {15604#true} is VALID [2018-11-23 12:14:13,009 INFO L273 TraceCheckUtils]: 55: Hoare triple {15604#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {15604#true} is VALID [2018-11-23 12:14:13,009 INFO L273 TraceCheckUtils]: 56: Hoare triple {15604#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {15604#true} is VALID [2018-11-23 12:14:13,009 INFO L273 TraceCheckUtils]: 57: Hoare triple {15604#true} assume !!(~i~1 < 40); {15604#true} is VALID [2018-11-23 12:14:13,010 INFO L273 TraceCheckUtils]: 58: Hoare triple {15604#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {15604#true} is VALID [2018-11-23 12:14:13,010 INFO L273 TraceCheckUtils]: 59: Hoare triple {15604#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {15604#true} is VALID [2018-11-23 12:14:13,010 INFO L273 TraceCheckUtils]: 60: Hoare triple {15604#true} assume !(~i~1 < 40); {15604#true} is VALID [2018-11-23 12:14:13,010 INFO L273 TraceCheckUtils]: 61: Hoare triple {15604#true} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {15604#true} is VALID [2018-11-23 12:14:13,010 INFO L273 TraceCheckUtils]: 62: Hoare triple {15604#true} assume true; {15604#true} is VALID [2018-11-23 12:14:13,010 INFO L268 TraceCheckUtils]: 63: Hoare quadruple {15604#true} {15604#true} #84#return; {15604#true} is VALID [2018-11-23 12:14:13,010 INFO L273 TraceCheckUtils]: 64: Hoare triple {15604#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {15604#true} is VALID [2018-11-23 12:14:13,010 INFO L256 TraceCheckUtils]: 65: Hoare triple {15604#true} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {15604#true} is VALID [2018-11-23 12:14:13,010 INFO L273 TraceCheckUtils]: 66: Hoare triple {15604#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {15604#true} is VALID [2018-11-23 12:14:13,011 INFO L273 TraceCheckUtils]: 67: Hoare triple {15604#true} assume !!(~i~1 < 40); {15604#true} is VALID [2018-11-23 12:14:13,011 INFO L273 TraceCheckUtils]: 68: Hoare triple {15604#true} assume !(~i~1 > 20); {15604#true} is VALID [2018-11-23 12:14:13,011 INFO L273 TraceCheckUtils]: 69: Hoare triple {15604#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {15604#true} is VALID [2018-11-23 12:14:13,011 INFO L273 TraceCheckUtils]: 70: Hoare triple {15604#true} assume !!(~i~1 < 40); {15604#true} is VALID [2018-11-23 12:14:13,011 INFO L273 TraceCheckUtils]: 71: Hoare triple {15604#true} assume !(~i~1 > 20); {15604#true} is VALID [2018-11-23 12:14:13,011 INFO L273 TraceCheckUtils]: 72: Hoare triple {15604#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {15604#true} is VALID [2018-11-23 12:14:13,011 INFO L273 TraceCheckUtils]: 73: Hoare triple {15604#true} assume !!(~i~1 < 40); {15604#true} is VALID [2018-11-23 12:14:13,011 INFO L273 TraceCheckUtils]: 74: Hoare triple {15604#true} assume !(~i~1 > 20); {15604#true} is VALID [2018-11-23 12:14:13,012 INFO L273 TraceCheckUtils]: 75: Hoare triple {15604#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {15604#true} is VALID [2018-11-23 12:14:13,012 INFO L273 TraceCheckUtils]: 76: Hoare triple {15604#true} assume !!(~i~1 < 40); {15604#true} is VALID [2018-11-23 12:14:13,012 INFO L273 TraceCheckUtils]: 77: Hoare triple {15604#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {15604#true} is VALID [2018-11-23 12:14:13,012 INFO L273 TraceCheckUtils]: 78: Hoare triple {15604#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {15604#true} is VALID [2018-11-23 12:14:13,012 INFO L273 TraceCheckUtils]: 79: Hoare triple {15604#true} assume !!(~i~1 < 40); {15604#true} is VALID [2018-11-23 12:14:13,012 INFO L273 TraceCheckUtils]: 80: Hoare triple {15604#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {15604#true} is VALID [2018-11-23 12:14:13,012 INFO L273 TraceCheckUtils]: 81: Hoare triple {15604#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {15604#true} is VALID [2018-11-23 12:14:13,012 INFO L273 TraceCheckUtils]: 82: Hoare triple {15604#true} assume !!(~i~1 < 40); {15604#true} is VALID [2018-11-23 12:14:13,012 INFO L273 TraceCheckUtils]: 83: Hoare triple {15604#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {15604#true} is VALID [2018-11-23 12:14:13,013 INFO L273 TraceCheckUtils]: 84: Hoare triple {15604#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {15604#true} is VALID [2018-11-23 12:14:13,013 INFO L273 TraceCheckUtils]: 85: Hoare triple {15604#true} assume !!(~i~1 < 40); {15604#true} is VALID [2018-11-23 12:14:13,013 INFO L273 TraceCheckUtils]: 86: Hoare triple {15604#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {15604#true} is VALID [2018-11-23 12:14:13,013 INFO L273 TraceCheckUtils]: 87: Hoare triple {15604#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {15604#true} is VALID [2018-11-23 12:14:13,013 INFO L273 TraceCheckUtils]: 88: Hoare triple {15604#true} assume !!(~i~1 < 40); {15604#true} is VALID [2018-11-23 12:14:13,013 INFO L273 TraceCheckUtils]: 89: Hoare triple {15604#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {15604#true} is VALID [2018-11-23 12:14:13,013 INFO L273 TraceCheckUtils]: 90: Hoare triple {15604#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {15604#true} is VALID [2018-11-23 12:14:13,013 INFO L273 TraceCheckUtils]: 91: Hoare triple {15604#true} assume !(~i~1 < 40); {15604#true} is VALID [2018-11-23 12:14:13,013 INFO L273 TraceCheckUtils]: 92: Hoare triple {15604#true} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {15604#true} is VALID [2018-11-23 12:14:13,014 INFO L273 TraceCheckUtils]: 93: Hoare triple {15604#true} assume true; {15604#true} is VALID [2018-11-23 12:14:13,014 INFO L268 TraceCheckUtils]: 94: Hoare quadruple {15604#true} {15604#true} #86#return; {15604#true} is VALID [2018-11-23 12:14:13,014 INFO L273 TraceCheckUtils]: 95: Hoare triple {15604#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {15894#(<= main_~i~2 0)} is VALID [2018-11-23 12:14:13,015 INFO L273 TraceCheckUtils]: 96: Hoare triple {15894#(<= main_~i~2 0)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {15894#(<= main_~i~2 0)} is VALID [2018-11-23 12:14:13,015 INFO L273 TraceCheckUtils]: 97: Hoare triple {15894#(<= main_~i~2 0)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {15901#(<= main_~i~2 1)} is VALID [2018-11-23 12:14:13,016 INFO L273 TraceCheckUtils]: 98: Hoare triple {15901#(<= main_~i~2 1)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {15901#(<= main_~i~2 1)} is VALID [2018-11-23 12:14:13,016 INFO L273 TraceCheckUtils]: 99: Hoare triple {15901#(<= main_~i~2 1)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {15908#(<= main_~i~2 2)} is VALID [2018-11-23 12:14:13,016 INFO L273 TraceCheckUtils]: 100: Hoare triple {15908#(<= main_~i~2 2)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {15908#(<= main_~i~2 2)} is VALID [2018-11-23 12:14:13,017 INFO L273 TraceCheckUtils]: 101: Hoare triple {15908#(<= main_~i~2 2)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {15915#(<= main_~i~2 3)} is VALID [2018-11-23 12:14:13,017 INFO L273 TraceCheckUtils]: 102: Hoare triple {15915#(<= main_~i~2 3)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {15915#(<= main_~i~2 3)} is VALID [2018-11-23 12:14:13,018 INFO L273 TraceCheckUtils]: 103: Hoare triple {15915#(<= main_~i~2 3)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {15922#(<= main_~i~2 4)} is VALID [2018-11-23 12:14:13,018 INFO L273 TraceCheckUtils]: 104: Hoare triple {15922#(<= main_~i~2 4)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {15922#(<= main_~i~2 4)} is VALID [2018-11-23 12:14:13,019 INFO L273 TraceCheckUtils]: 105: Hoare triple {15922#(<= main_~i~2 4)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {15929#(<= main_~i~2 5)} is VALID [2018-11-23 12:14:13,019 INFO L273 TraceCheckUtils]: 106: Hoare triple {15929#(<= main_~i~2 5)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {15929#(<= main_~i~2 5)} is VALID [2018-11-23 12:14:13,020 INFO L273 TraceCheckUtils]: 107: Hoare triple {15929#(<= main_~i~2 5)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {15936#(<= main_~i~2 6)} is VALID [2018-11-23 12:14:13,021 INFO L273 TraceCheckUtils]: 108: Hoare triple {15936#(<= main_~i~2 6)} assume !(~i~2 < 39); {15605#false} is VALID [2018-11-23 12:14:13,021 INFO L273 TraceCheckUtils]: 109: Hoare triple {15605#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {15605#false} is VALID [2018-11-23 12:14:13,021 INFO L256 TraceCheckUtils]: 110: Hoare triple {15605#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {15605#false} is VALID [2018-11-23 12:14:13,021 INFO L273 TraceCheckUtils]: 111: Hoare triple {15605#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {15605#false} is VALID [2018-11-23 12:14:13,022 INFO L273 TraceCheckUtils]: 112: Hoare triple {15605#false} assume !!(~i~1 < 40); {15605#false} is VALID [2018-11-23 12:14:13,022 INFO L273 TraceCheckUtils]: 113: Hoare triple {15605#false} assume !(~i~1 > 20); {15605#false} is VALID [2018-11-23 12:14:13,022 INFO L273 TraceCheckUtils]: 114: Hoare triple {15605#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {15605#false} is VALID [2018-11-23 12:14:13,022 INFO L273 TraceCheckUtils]: 115: Hoare triple {15605#false} assume !!(~i~1 < 40); {15605#false} is VALID [2018-11-23 12:14:13,022 INFO L273 TraceCheckUtils]: 116: Hoare triple {15605#false} assume !(~i~1 > 20); {15605#false} is VALID [2018-11-23 12:14:13,023 INFO L273 TraceCheckUtils]: 117: Hoare triple {15605#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {15605#false} is VALID [2018-11-23 12:14:13,023 INFO L273 TraceCheckUtils]: 118: Hoare triple {15605#false} assume !!(~i~1 < 40); {15605#false} is VALID [2018-11-23 12:14:13,023 INFO L273 TraceCheckUtils]: 119: Hoare triple {15605#false} assume !(~i~1 > 20); {15605#false} is VALID [2018-11-23 12:14:13,023 INFO L273 TraceCheckUtils]: 120: Hoare triple {15605#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {15605#false} is VALID [2018-11-23 12:14:13,024 INFO L273 TraceCheckUtils]: 121: Hoare triple {15605#false} assume !!(~i~1 < 40); {15605#false} is VALID [2018-11-23 12:14:13,024 INFO L273 TraceCheckUtils]: 122: Hoare triple {15605#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {15605#false} is VALID [2018-11-23 12:14:13,024 INFO L273 TraceCheckUtils]: 123: Hoare triple {15605#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {15605#false} is VALID [2018-11-23 12:14:13,024 INFO L273 TraceCheckUtils]: 124: Hoare triple {15605#false} assume !!(~i~1 < 40); {15605#false} is VALID [2018-11-23 12:14:13,024 INFO L273 TraceCheckUtils]: 125: Hoare triple {15605#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {15605#false} is VALID [2018-11-23 12:14:13,024 INFO L273 TraceCheckUtils]: 126: Hoare triple {15605#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {15605#false} is VALID [2018-11-23 12:14:13,024 INFO L273 TraceCheckUtils]: 127: Hoare triple {15605#false} assume !!(~i~1 < 40); {15605#false} is VALID [2018-11-23 12:14:13,024 INFO L273 TraceCheckUtils]: 128: Hoare triple {15605#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {15605#false} is VALID [2018-11-23 12:14:13,024 INFO L273 TraceCheckUtils]: 129: Hoare triple {15605#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {15605#false} is VALID [2018-11-23 12:14:13,025 INFO L273 TraceCheckUtils]: 130: Hoare triple {15605#false} assume !!(~i~1 < 40); {15605#false} is VALID [2018-11-23 12:14:13,025 INFO L273 TraceCheckUtils]: 131: Hoare triple {15605#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {15605#false} is VALID [2018-11-23 12:14:13,025 INFO L273 TraceCheckUtils]: 132: Hoare triple {15605#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {15605#false} is VALID [2018-11-23 12:14:13,025 INFO L273 TraceCheckUtils]: 133: Hoare triple {15605#false} assume !!(~i~1 < 40); {15605#false} is VALID [2018-11-23 12:14:13,025 INFO L273 TraceCheckUtils]: 134: Hoare triple {15605#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {15605#false} is VALID [2018-11-23 12:14:13,025 INFO L273 TraceCheckUtils]: 135: Hoare triple {15605#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {15605#false} is VALID [2018-11-23 12:14:13,025 INFO L273 TraceCheckUtils]: 136: Hoare triple {15605#false} assume !(~i~1 < 40); {15605#false} is VALID [2018-11-23 12:14:13,025 INFO L273 TraceCheckUtils]: 137: Hoare triple {15605#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {15605#false} is VALID [2018-11-23 12:14:13,026 INFO L273 TraceCheckUtils]: 138: Hoare triple {15605#false} assume true; {15605#false} is VALID [2018-11-23 12:14:13,026 INFO L268 TraceCheckUtils]: 139: Hoare quadruple {15605#false} {15605#false} #88#return; {15605#false} is VALID [2018-11-23 12:14:13,026 INFO L273 TraceCheckUtils]: 140: Hoare triple {15605#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {15605#false} is VALID [2018-11-23 12:14:13,026 INFO L273 TraceCheckUtils]: 141: Hoare triple {15605#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {15605#false} is VALID [2018-11-23 12:14:13,026 INFO L273 TraceCheckUtils]: 142: Hoare triple {15605#false} assume !false; {15605#false} is VALID [2018-11-23 12:14:13,034 INFO L134 CoverageAnalysis]: Checked inductivity of 1072 backedges. 426 proven. 36 refuted. 0 times theorem prover too weak. 610 trivial. 0 not checked. [2018-11-23 12:14:13,054 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:14:13,054 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [9] total 9 [2018-11-23 12:14:13,054 INFO L78 Accepts]: Start accepts. Automaton has 9 states. Word has length 143 [2018-11-23 12:14:13,055 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:14:13,055 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states. [2018-11-23 12:14:13,107 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 55 edges. 55 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:14:13,107 INFO L459 AbstractCegarLoop]: Interpolant automaton has 9 states [2018-11-23 12:14:13,107 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2018-11-23 12:14:13,108 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=36, Invalid=36, Unknown=0, NotChecked=0, Total=72 [2018-11-23 12:14:13,108 INFO L87 Difference]: Start difference. First operand 86 states and 96 transitions. Second operand 9 states. [2018-11-23 12:14:13,246 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:13,246 INFO L93 Difference]: Finished difference Result 124 states and 141 transitions. [2018-11-23 12:14:13,247 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2018-11-23 12:14:13,247 INFO L78 Accepts]: Start accepts. Automaton has 9 states. Word has length 143 [2018-11-23 12:14:13,247 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:14:13,247 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 9 states. [2018-11-23 12:14:13,248 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 68 transitions. [2018-11-23 12:14:13,248 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 9 states. [2018-11-23 12:14:13,249 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 68 transitions. [2018-11-23 12:14:13,249 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states and 68 transitions. [2018-11-23 12:14:13,309 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 68 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:14:13,311 INFO L225 Difference]: With dead ends: 124 [2018-11-23 12:14:13,311 INFO L226 Difference]: Without dead ends: 89 [2018-11-23 12:14:13,312 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 142 GetRequests, 135 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=36, Invalid=36, Unknown=0, NotChecked=0, Total=72 [2018-11-23 12:14:13,312 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 89 states. [2018-11-23 12:14:13,364 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 89 to 88. [2018-11-23 12:14:13,364 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:14:13,364 INFO L82 GeneralOperation]: Start isEquivalent. First operand 89 states. Second operand 88 states. [2018-11-23 12:14:13,365 INFO L74 IsIncluded]: Start isIncluded. First operand 89 states. Second operand 88 states. [2018-11-23 12:14:13,365 INFO L87 Difference]: Start difference. First operand 89 states. Second operand 88 states. [2018-11-23 12:14:13,367 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:13,368 INFO L93 Difference]: Finished difference Result 89 states and 99 transitions. [2018-11-23 12:14:13,368 INFO L276 IsEmpty]: Start isEmpty. Operand 89 states and 99 transitions. [2018-11-23 12:14:13,368 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:14:13,368 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:14:13,368 INFO L74 IsIncluded]: Start isIncluded. First operand 88 states. Second operand 89 states. [2018-11-23 12:14:13,369 INFO L87 Difference]: Start difference. First operand 88 states. Second operand 89 states. [2018-11-23 12:14:13,370 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:13,370 INFO L93 Difference]: Finished difference Result 89 states and 99 transitions. [2018-11-23 12:14:13,370 INFO L276 IsEmpty]: Start isEmpty. Operand 89 states and 99 transitions. [2018-11-23 12:14:13,371 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:14:13,371 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:14:13,371 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:14:13,371 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:14:13,371 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 88 states. [2018-11-23 12:14:13,373 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 88 states to 88 states and 98 transitions. [2018-11-23 12:14:13,373 INFO L78 Accepts]: Start accepts. Automaton has 88 states and 98 transitions. Word has length 143 [2018-11-23 12:14:13,373 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:14:13,373 INFO L480 AbstractCegarLoop]: Abstraction has 88 states and 98 transitions. [2018-11-23 12:14:13,374 INFO L481 AbstractCegarLoop]: Interpolant automaton has 9 states. [2018-11-23 12:14:13,374 INFO L276 IsEmpty]: Start isEmpty. Operand 88 states and 98 transitions. [2018-11-23 12:14:13,374 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 146 [2018-11-23 12:14:13,375 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:14:13,376 INFO L402 BasicCegarLoop]: trace histogram [24, 24, 15, 11, 11, 9, 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, 1, 1, 1, 1, 1] [2018-11-23 12:14:13,376 INFO L423 AbstractCegarLoop]: === Iteration 27 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:14:13,376 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:14:13,376 INFO L82 PathProgramCache]: Analyzing trace with hash 1222305042, now seen corresponding path program 22 times [2018-11-23 12:14:13,376 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:14:13,376 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:14:13,377 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:14:13,377 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:14:13,377 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:14:13,394 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:14:13,394 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:14:13,394 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 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 28 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:14:13,412 INFO L103 rtionOrderModulation]: Keeping assertion order TERMS_WITH_SMALL_CONSTANTS_FIRST [2018-11-23 12:14:13,473 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2018-11-23 12:14:13,473 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:14:13,497 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:14:13,499 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:14:13,749 INFO L256 TraceCheckUtils]: 0: Hoare triple {16520#true} call ULTIMATE.init(); {16520#true} is VALID [2018-11-23 12:14:13,749 INFO L273 TraceCheckUtils]: 1: Hoare triple {16520#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {16520#true} is VALID [2018-11-23 12:14:13,749 INFO L273 TraceCheckUtils]: 2: Hoare triple {16520#true} assume true; {16520#true} is VALID [2018-11-23 12:14:13,750 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {16520#true} {16520#true} #78#return; {16520#true} is VALID [2018-11-23 12:14:13,750 INFO L256 TraceCheckUtils]: 4: Hoare triple {16520#true} call #t~ret12 := main(); {16520#true} is VALID [2018-11-23 12:14:13,750 INFO L273 TraceCheckUtils]: 5: Hoare triple {16520#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {16520#true} is VALID [2018-11-23 12:14:13,750 INFO L256 TraceCheckUtils]: 6: Hoare triple {16520#true} call init_nondet(~#x~0.base, ~#x~0.offset); {16520#true} is VALID [2018-11-23 12:14:13,751 INFO L273 TraceCheckUtils]: 7: Hoare triple {16520#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {16520#true} is VALID [2018-11-23 12:14:13,751 INFO L273 TraceCheckUtils]: 8: Hoare triple {16520#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {16520#true} is VALID [2018-11-23 12:14:13,751 INFO L273 TraceCheckUtils]: 9: Hoare triple {16520#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16520#true} is VALID [2018-11-23 12:14:13,751 INFO L273 TraceCheckUtils]: 10: Hoare triple {16520#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {16520#true} is VALID [2018-11-23 12:14:13,751 INFO L273 TraceCheckUtils]: 11: Hoare triple {16520#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16520#true} is VALID [2018-11-23 12:14:13,751 INFO L273 TraceCheckUtils]: 12: Hoare triple {16520#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {16520#true} is VALID [2018-11-23 12:14:13,751 INFO L273 TraceCheckUtils]: 13: Hoare triple {16520#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16520#true} is VALID [2018-11-23 12:14:13,752 INFO L273 TraceCheckUtils]: 14: Hoare triple {16520#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {16520#true} is VALID [2018-11-23 12:14:13,752 INFO L273 TraceCheckUtils]: 15: Hoare triple {16520#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16520#true} is VALID [2018-11-23 12:14:13,752 INFO L273 TraceCheckUtils]: 16: Hoare triple {16520#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {16520#true} is VALID [2018-11-23 12:14:13,752 INFO L273 TraceCheckUtils]: 17: Hoare triple {16520#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16520#true} is VALID [2018-11-23 12:14:13,752 INFO L273 TraceCheckUtils]: 18: Hoare triple {16520#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {16520#true} is VALID [2018-11-23 12:14:13,752 INFO L273 TraceCheckUtils]: 19: Hoare triple {16520#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16520#true} is VALID [2018-11-23 12:14:13,752 INFO L273 TraceCheckUtils]: 20: Hoare triple {16520#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {16520#true} is VALID [2018-11-23 12:14:13,752 INFO L273 TraceCheckUtils]: 21: Hoare triple {16520#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16520#true} is VALID [2018-11-23 12:14:13,752 INFO L273 TraceCheckUtils]: 22: Hoare triple {16520#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {16520#true} is VALID [2018-11-23 12:14:13,753 INFO L273 TraceCheckUtils]: 23: Hoare triple {16520#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16520#true} is VALID [2018-11-23 12:14:13,753 INFO L273 TraceCheckUtils]: 24: Hoare triple {16520#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {16520#true} is VALID [2018-11-23 12:14:13,753 INFO L273 TraceCheckUtils]: 25: Hoare triple {16520#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16520#true} is VALID [2018-11-23 12:14:13,753 INFO L273 TraceCheckUtils]: 26: Hoare triple {16520#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {16520#true} is VALID [2018-11-23 12:14:13,753 INFO L273 TraceCheckUtils]: 27: Hoare triple {16520#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16520#true} is VALID [2018-11-23 12:14:13,753 INFO L273 TraceCheckUtils]: 28: Hoare triple {16520#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {16520#true} is VALID [2018-11-23 12:14:13,753 INFO L273 TraceCheckUtils]: 29: Hoare triple {16520#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16520#true} is VALID [2018-11-23 12:14:13,753 INFO L273 TraceCheckUtils]: 30: Hoare triple {16520#true} assume !(~i~0 < 40); {16520#true} is VALID [2018-11-23 12:14:13,754 INFO L273 TraceCheckUtils]: 31: Hoare triple {16520#true} assume true; {16520#true} is VALID [2018-11-23 12:14:13,754 INFO L268 TraceCheckUtils]: 32: Hoare quadruple {16520#true} {16520#true} #82#return; {16520#true} is VALID [2018-11-23 12:14:13,754 INFO L273 TraceCheckUtils]: 33: Hoare triple {16520#true} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {16520#true} is VALID [2018-11-23 12:14:13,754 INFO L256 TraceCheckUtils]: 34: Hoare triple {16520#true} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {16520#true} is VALID [2018-11-23 12:14:13,754 INFO L273 TraceCheckUtils]: 35: Hoare triple {16520#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {16520#true} is VALID [2018-11-23 12:14:13,754 INFO L273 TraceCheckUtils]: 36: Hoare triple {16520#true} assume !!(~i~1 < 40); {16520#true} is VALID [2018-11-23 12:14:13,754 INFO L273 TraceCheckUtils]: 37: Hoare triple {16520#true} assume !(~i~1 > 20); {16520#true} is VALID [2018-11-23 12:14:13,754 INFO L273 TraceCheckUtils]: 38: Hoare triple {16520#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {16520#true} is VALID [2018-11-23 12:14:13,754 INFO L273 TraceCheckUtils]: 39: Hoare triple {16520#true} assume !!(~i~1 < 40); {16520#true} is VALID [2018-11-23 12:14:13,755 INFO L273 TraceCheckUtils]: 40: Hoare triple {16520#true} assume !(~i~1 > 20); {16520#true} is VALID [2018-11-23 12:14:13,755 INFO L273 TraceCheckUtils]: 41: Hoare triple {16520#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {16520#true} is VALID [2018-11-23 12:14:13,755 INFO L273 TraceCheckUtils]: 42: Hoare triple {16520#true} assume !!(~i~1 < 40); {16520#true} is VALID [2018-11-23 12:14:13,755 INFO L273 TraceCheckUtils]: 43: Hoare triple {16520#true} assume !(~i~1 > 20); {16520#true} is VALID [2018-11-23 12:14:13,755 INFO L273 TraceCheckUtils]: 44: Hoare triple {16520#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {16520#true} is VALID [2018-11-23 12:14:13,755 INFO L273 TraceCheckUtils]: 45: Hoare triple {16520#true} assume !!(~i~1 < 40); {16520#true} is VALID [2018-11-23 12:14:13,755 INFO L273 TraceCheckUtils]: 46: Hoare triple {16520#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {16520#true} is VALID [2018-11-23 12:14:13,755 INFO L273 TraceCheckUtils]: 47: Hoare triple {16520#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {16520#true} is VALID [2018-11-23 12:14:13,756 INFO L273 TraceCheckUtils]: 48: Hoare triple {16520#true} assume !!(~i~1 < 40); {16520#true} is VALID [2018-11-23 12:14:13,756 INFO L273 TraceCheckUtils]: 49: Hoare triple {16520#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {16520#true} is VALID [2018-11-23 12:14:13,756 INFO L273 TraceCheckUtils]: 50: Hoare triple {16520#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {16520#true} is VALID [2018-11-23 12:14:13,756 INFO L273 TraceCheckUtils]: 51: Hoare triple {16520#true} assume !!(~i~1 < 40); {16520#true} is VALID [2018-11-23 12:14:13,756 INFO L273 TraceCheckUtils]: 52: Hoare triple {16520#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {16520#true} is VALID [2018-11-23 12:14:13,756 INFO L273 TraceCheckUtils]: 53: Hoare triple {16520#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {16520#true} is VALID [2018-11-23 12:14:13,756 INFO L273 TraceCheckUtils]: 54: Hoare triple {16520#true} assume !!(~i~1 < 40); {16520#true} is VALID [2018-11-23 12:14:13,756 INFO L273 TraceCheckUtils]: 55: Hoare triple {16520#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {16520#true} is VALID [2018-11-23 12:14:13,757 INFO L273 TraceCheckUtils]: 56: Hoare triple {16520#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {16520#true} is VALID [2018-11-23 12:14:13,757 INFO L273 TraceCheckUtils]: 57: Hoare triple {16520#true} assume !!(~i~1 < 40); {16520#true} is VALID [2018-11-23 12:14:13,757 INFO L273 TraceCheckUtils]: 58: Hoare triple {16520#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {16520#true} is VALID [2018-11-23 12:14:13,757 INFO L273 TraceCheckUtils]: 59: Hoare triple {16520#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {16520#true} is VALID [2018-11-23 12:14:13,757 INFO L273 TraceCheckUtils]: 60: Hoare triple {16520#true} assume !(~i~1 < 40); {16520#true} is VALID [2018-11-23 12:14:13,757 INFO L273 TraceCheckUtils]: 61: Hoare triple {16520#true} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {16520#true} is VALID [2018-11-23 12:14:13,757 INFO L273 TraceCheckUtils]: 62: Hoare triple {16520#true} assume true; {16520#true} is VALID [2018-11-23 12:14:13,757 INFO L268 TraceCheckUtils]: 63: Hoare quadruple {16520#true} {16520#true} #84#return; {16520#true} is VALID [2018-11-23 12:14:13,758 INFO L273 TraceCheckUtils]: 64: Hoare triple {16520#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {16520#true} is VALID [2018-11-23 12:14:13,758 INFO L256 TraceCheckUtils]: 65: Hoare triple {16520#true} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {16520#true} is VALID [2018-11-23 12:14:13,758 INFO L273 TraceCheckUtils]: 66: Hoare triple {16520#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {16520#true} is VALID [2018-11-23 12:14:13,758 INFO L273 TraceCheckUtils]: 67: Hoare triple {16520#true} assume !!(~i~1 < 40); {16520#true} is VALID [2018-11-23 12:14:13,758 INFO L273 TraceCheckUtils]: 68: Hoare triple {16520#true} assume !(~i~1 > 20); {16520#true} is VALID [2018-11-23 12:14:13,758 INFO L273 TraceCheckUtils]: 69: Hoare triple {16520#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {16520#true} is VALID [2018-11-23 12:14:13,759 INFO L273 TraceCheckUtils]: 70: Hoare triple {16520#true} assume !!(~i~1 < 40); {16520#true} is VALID [2018-11-23 12:14:13,759 INFO L273 TraceCheckUtils]: 71: Hoare triple {16520#true} assume !(~i~1 > 20); {16520#true} is VALID [2018-11-23 12:14:13,759 INFO L273 TraceCheckUtils]: 72: Hoare triple {16520#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {16520#true} is VALID [2018-11-23 12:14:13,759 INFO L273 TraceCheckUtils]: 73: Hoare triple {16520#true} assume !!(~i~1 < 40); {16520#true} is VALID [2018-11-23 12:14:13,759 INFO L273 TraceCheckUtils]: 74: Hoare triple {16520#true} assume !(~i~1 > 20); {16520#true} is VALID [2018-11-23 12:14:13,759 INFO L273 TraceCheckUtils]: 75: Hoare triple {16520#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {16520#true} is VALID [2018-11-23 12:14:13,760 INFO L273 TraceCheckUtils]: 76: Hoare triple {16520#true} assume !!(~i~1 < 40); {16520#true} is VALID [2018-11-23 12:14:13,760 INFO L273 TraceCheckUtils]: 77: Hoare triple {16520#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {16520#true} is VALID [2018-11-23 12:14:13,760 INFO L273 TraceCheckUtils]: 78: Hoare triple {16520#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {16520#true} is VALID [2018-11-23 12:14:13,760 INFO L273 TraceCheckUtils]: 79: Hoare triple {16520#true} assume !!(~i~1 < 40); {16520#true} is VALID [2018-11-23 12:14:13,760 INFO L273 TraceCheckUtils]: 80: Hoare triple {16520#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {16520#true} is VALID [2018-11-23 12:14:13,761 INFO L273 TraceCheckUtils]: 81: Hoare triple {16520#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {16520#true} is VALID [2018-11-23 12:14:13,761 INFO L273 TraceCheckUtils]: 82: Hoare triple {16520#true} assume !!(~i~1 < 40); {16520#true} is VALID [2018-11-23 12:14:13,761 INFO L273 TraceCheckUtils]: 83: Hoare triple {16520#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {16520#true} is VALID [2018-11-23 12:14:13,761 INFO L273 TraceCheckUtils]: 84: Hoare triple {16520#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {16520#true} is VALID [2018-11-23 12:14:13,761 INFO L273 TraceCheckUtils]: 85: Hoare triple {16520#true} assume !!(~i~1 < 40); {16520#true} is VALID [2018-11-23 12:14:13,761 INFO L273 TraceCheckUtils]: 86: Hoare triple {16520#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {16520#true} is VALID [2018-11-23 12:14:13,762 INFO L273 TraceCheckUtils]: 87: Hoare triple {16520#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {16520#true} is VALID [2018-11-23 12:14:13,762 INFO L273 TraceCheckUtils]: 88: Hoare triple {16520#true} assume !!(~i~1 < 40); {16520#true} is VALID [2018-11-23 12:14:13,762 INFO L273 TraceCheckUtils]: 89: Hoare triple {16520#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {16520#true} is VALID [2018-11-23 12:14:13,762 INFO L273 TraceCheckUtils]: 90: Hoare triple {16520#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {16520#true} is VALID [2018-11-23 12:14:13,762 INFO L273 TraceCheckUtils]: 91: Hoare triple {16520#true} assume !(~i~1 < 40); {16520#true} is VALID [2018-11-23 12:14:13,762 INFO L273 TraceCheckUtils]: 92: Hoare triple {16520#true} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {16520#true} is VALID [2018-11-23 12:14:13,763 INFO L273 TraceCheckUtils]: 93: Hoare triple {16520#true} assume true; {16520#true} is VALID [2018-11-23 12:14:13,763 INFO L268 TraceCheckUtils]: 94: Hoare quadruple {16520#true} {16520#true} #86#return; {16520#true} is VALID [2018-11-23 12:14:13,763 INFO L273 TraceCheckUtils]: 95: Hoare triple {16520#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {16520#true} is VALID [2018-11-23 12:14:13,763 INFO L273 TraceCheckUtils]: 96: Hoare triple {16520#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {16520#true} is VALID [2018-11-23 12:14:13,763 INFO L273 TraceCheckUtils]: 97: Hoare triple {16520#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {16520#true} is VALID [2018-11-23 12:14:13,763 INFO L273 TraceCheckUtils]: 98: Hoare triple {16520#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {16520#true} is VALID [2018-11-23 12:14:13,764 INFO L273 TraceCheckUtils]: 99: Hoare triple {16520#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {16520#true} is VALID [2018-11-23 12:14:13,764 INFO L273 TraceCheckUtils]: 100: Hoare triple {16520#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {16520#true} is VALID [2018-11-23 12:14:13,764 INFO L273 TraceCheckUtils]: 101: Hoare triple {16520#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {16520#true} is VALID [2018-11-23 12:14:13,764 INFO L273 TraceCheckUtils]: 102: Hoare triple {16520#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {16520#true} is VALID [2018-11-23 12:14:13,764 INFO L273 TraceCheckUtils]: 103: Hoare triple {16520#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {16520#true} is VALID [2018-11-23 12:14:13,764 INFO L273 TraceCheckUtils]: 104: Hoare triple {16520#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {16520#true} is VALID [2018-11-23 12:14:13,765 INFO L273 TraceCheckUtils]: 105: Hoare triple {16520#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {16520#true} is VALID [2018-11-23 12:14:13,765 INFO L273 TraceCheckUtils]: 106: Hoare triple {16520#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {16520#true} is VALID [2018-11-23 12:14:13,765 INFO L273 TraceCheckUtils]: 107: Hoare triple {16520#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {16520#true} is VALID [2018-11-23 12:14:13,765 INFO L273 TraceCheckUtils]: 108: Hoare triple {16520#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {16520#true} is VALID [2018-11-23 12:14:13,765 INFO L273 TraceCheckUtils]: 109: Hoare triple {16520#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {16520#true} is VALID [2018-11-23 12:14:13,765 INFO L273 TraceCheckUtils]: 110: Hoare triple {16520#true} assume !(~i~2 < 39); {16520#true} is VALID [2018-11-23 12:14:13,766 INFO L273 TraceCheckUtils]: 111: Hoare triple {16520#true} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {16520#true} is VALID [2018-11-23 12:14:13,766 INFO L256 TraceCheckUtils]: 112: Hoare triple {16520#true} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {16520#true} is VALID [2018-11-23 12:14:13,780 INFO L273 TraceCheckUtils]: 113: Hoare triple {16520#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {16864#(<= rangesum_~i~1 0)} is VALID [2018-11-23 12:14:13,789 INFO L273 TraceCheckUtils]: 114: Hoare triple {16864#(<= rangesum_~i~1 0)} assume !!(~i~1 < 40); {16864#(<= rangesum_~i~1 0)} is VALID [2018-11-23 12:14:13,792 INFO L273 TraceCheckUtils]: 115: Hoare triple {16864#(<= rangesum_~i~1 0)} assume !(~i~1 > 20); {16864#(<= rangesum_~i~1 0)} is VALID [2018-11-23 12:14:13,794 INFO L273 TraceCheckUtils]: 116: Hoare triple {16864#(<= rangesum_~i~1 0)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {16874#(<= rangesum_~i~1 1)} is VALID [2018-11-23 12:14:13,794 INFO L273 TraceCheckUtils]: 117: Hoare triple {16874#(<= rangesum_~i~1 1)} assume !!(~i~1 < 40); {16874#(<= rangesum_~i~1 1)} is VALID [2018-11-23 12:14:13,797 INFO L273 TraceCheckUtils]: 118: Hoare triple {16874#(<= rangesum_~i~1 1)} assume !(~i~1 > 20); {16874#(<= rangesum_~i~1 1)} is VALID [2018-11-23 12:14:13,797 INFO L273 TraceCheckUtils]: 119: Hoare triple {16874#(<= rangesum_~i~1 1)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {16884#(<= rangesum_~i~1 2)} is VALID [2018-11-23 12:14:13,801 INFO L273 TraceCheckUtils]: 120: Hoare triple {16884#(<= rangesum_~i~1 2)} assume !!(~i~1 < 40); {16884#(<= rangesum_~i~1 2)} is VALID [2018-11-23 12:14:13,801 INFO L273 TraceCheckUtils]: 121: Hoare triple {16884#(<= rangesum_~i~1 2)} assume !(~i~1 > 20); {16884#(<= rangesum_~i~1 2)} is VALID [2018-11-23 12:14:13,801 INFO L273 TraceCheckUtils]: 122: Hoare triple {16884#(<= rangesum_~i~1 2)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {16894#(<= rangesum_~i~1 3)} is VALID [2018-11-23 12:14:13,802 INFO L273 TraceCheckUtils]: 123: Hoare triple {16894#(<= rangesum_~i~1 3)} assume !!(~i~1 < 40); {16894#(<= rangesum_~i~1 3)} is VALID [2018-11-23 12:14:13,802 INFO L273 TraceCheckUtils]: 124: Hoare triple {16894#(<= rangesum_~i~1 3)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {16894#(<= rangesum_~i~1 3)} is VALID [2018-11-23 12:14:13,803 INFO L273 TraceCheckUtils]: 125: Hoare triple {16894#(<= rangesum_~i~1 3)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {16904#(<= rangesum_~i~1 4)} is VALID [2018-11-23 12:14:13,803 INFO L273 TraceCheckUtils]: 126: Hoare triple {16904#(<= rangesum_~i~1 4)} assume !!(~i~1 < 40); {16904#(<= rangesum_~i~1 4)} is VALID [2018-11-23 12:14:13,804 INFO L273 TraceCheckUtils]: 127: Hoare triple {16904#(<= rangesum_~i~1 4)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {16521#false} is VALID [2018-11-23 12:14:13,804 INFO L273 TraceCheckUtils]: 128: Hoare triple {16521#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {16521#false} is VALID [2018-11-23 12:14:13,804 INFO L273 TraceCheckUtils]: 129: Hoare triple {16521#false} assume !!(~i~1 < 40); {16521#false} is VALID [2018-11-23 12:14:13,804 INFO L273 TraceCheckUtils]: 130: Hoare triple {16521#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {16521#false} is VALID [2018-11-23 12:14:13,804 INFO L273 TraceCheckUtils]: 131: Hoare triple {16521#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {16521#false} is VALID [2018-11-23 12:14:13,804 INFO L273 TraceCheckUtils]: 132: Hoare triple {16521#false} assume !!(~i~1 < 40); {16521#false} is VALID [2018-11-23 12:14:13,804 INFO L273 TraceCheckUtils]: 133: Hoare triple {16521#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {16521#false} is VALID [2018-11-23 12:14:13,804 INFO L273 TraceCheckUtils]: 134: Hoare triple {16521#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {16521#false} is VALID [2018-11-23 12:14:13,805 INFO L273 TraceCheckUtils]: 135: Hoare triple {16521#false} assume !!(~i~1 < 40); {16521#false} is VALID [2018-11-23 12:14:13,805 INFO L273 TraceCheckUtils]: 136: Hoare triple {16521#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {16521#false} is VALID [2018-11-23 12:14:13,805 INFO L273 TraceCheckUtils]: 137: Hoare triple {16521#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {16521#false} is VALID [2018-11-23 12:14:13,805 INFO L273 TraceCheckUtils]: 138: Hoare triple {16521#false} assume !(~i~1 < 40); {16521#false} is VALID [2018-11-23 12:14:13,805 INFO L273 TraceCheckUtils]: 139: Hoare triple {16521#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {16521#false} is VALID [2018-11-23 12:14:13,805 INFO L273 TraceCheckUtils]: 140: Hoare triple {16521#false} assume true; {16521#false} is VALID [2018-11-23 12:14:13,805 INFO L268 TraceCheckUtils]: 141: Hoare quadruple {16521#false} {16520#true} #88#return; {16521#false} is VALID [2018-11-23 12:14:13,805 INFO L273 TraceCheckUtils]: 142: Hoare triple {16521#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {16521#false} is VALID [2018-11-23 12:14:13,805 INFO L273 TraceCheckUtils]: 143: Hoare triple {16521#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {16521#false} is VALID [2018-11-23 12:14:13,806 INFO L273 TraceCheckUtils]: 144: Hoare triple {16521#false} assume !false; {16521#false} is VALID [2018-11-23 12:14:13,814 INFO L134 CoverageAnalysis]: Checked inductivity of 1085 backedges. 475 proven. 26 refuted. 0 times theorem prover too weak. 584 trivial. 0 not checked. [2018-11-23 12:14:13,832 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:14:13,832 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [7] total 7 [2018-11-23 12:14:13,833 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 145 [2018-11-23 12:14:13,833 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:14:13,833 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states. [2018-11-23 12:14:13,885 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 58 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:14:13,885 INFO L459 AbstractCegarLoop]: Interpolant automaton has 7 states [2018-11-23 12:14:13,886 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2018-11-23 12:14:13,886 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=21, Unknown=0, NotChecked=0, Total=42 [2018-11-23 12:14:13,886 INFO L87 Difference]: Start difference. First operand 88 states and 98 transitions. Second operand 7 states. [2018-11-23 12:14:14,286 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:14,286 INFO L93 Difference]: Finished difference Result 148 states and 171 transitions. [2018-11-23 12:14:14,287 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2018-11-23 12:14:14,287 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 145 [2018-11-23 12:14:14,287 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:14:14,287 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2018-11-23 12:14:14,288 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 80 transitions. [2018-11-23 12:14:14,288 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2018-11-23 12:14:14,289 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 80 transitions. [2018-11-23 12:14:14,289 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 80 transitions. [2018-11-23 12:14:14,410 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 80 edges. 80 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:14:14,412 INFO L225 Difference]: With dead ends: 148 [2018-11-23 12:14:14,412 INFO L226 Difference]: Without dead ends: 95 [2018-11-23 12:14:14,412 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 144 GetRequests, 139 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=21, Invalid=21, Unknown=0, NotChecked=0, Total=42 [2018-11-23 12:14:14,413 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 95 states. [2018-11-23 12:14:14,505 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 95 to 94. [2018-11-23 12:14:14,505 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:14:14,505 INFO L82 GeneralOperation]: Start isEquivalent. First operand 95 states. Second operand 94 states. [2018-11-23 12:14:14,505 INFO L74 IsIncluded]: Start isIncluded. First operand 95 states. Second operand 94 states. [2018-11-23 12:14:14,506 INFO L87 Difference]: Start difference. First operand 95 states. Second operand 94 states. [2018-11-23 12:14:14,508 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:14,508 INFO L93 Difference]: Finished difference Result 95 states and 105 transitions. [2018-11-23 12:14:14,508 INFO L276 IsEmpty]: Start isEmpty. Operand 95 states and 105 transitions. [2018-11-23 12:14:14,508 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:14:14,508 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:14:14,508 INFO L74 IsIncluded]: Start isIncluded. First operand 94 states. Second operand 95 states. [2018-11-23 12:14:14,509 INFO L87 Difference]: Start difference. First operand 94 states. Second operand 95 states. [2018-11-23 12:14:14,510 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:14,510 INFO L93 Difference]: Finished difference Result 95 states and 105 transitions. [2018-11-23 12:14:14,510 INFO L276 IsEmpty]: Start isEmpty. Operand 95 states and 105 transitions. [2018-11-23 12:14:14,510 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:14:14,510 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:14:14,511 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:14:14,511 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:14:14,511 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 94 states. [2018-11-23 12:14:14,512 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 94 states to 94 states and 104 transitions. [2018-11-23 12:14:14,512 INFO L78 Accepts]: Start accepts. Automaton has 94 states and 104 transitions. Word has length 145 [2018-11-23 12:14:14,512 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:14:14,512 INFO L480 AbstractCegarLoop]: Abstraction has 94 states and 104 transitions. [2018-11-23 12:14:14,512 INFO L481 AbstractCegarLoop]: Interpolant automaton has 7 states. [2018-11-23 12:14:14,512 INFO L276 IsEmpty]: Start isEmpty. Operand 94 states and 104 transitions. [2018-11-23 12:14:14,513 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 164 [2018-11-23 12:14:14,513 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:14:14,513 INFO L402 BasicCegarLoop]: trace histogram [30, 30, 15, 15, 11, 11, 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, 1, 1, 1, 1, 1] [2018-11-23 12:14:14,514 INFO L423 AbstractCegarLoop]: === Iteration 28 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:14:14,514 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:14:14,514 INFO L82 PathProgramCache]: Analyzing trace with hash -2039261422, now seen corresponding path program 23 times [2018-11-23 12:14:14,514 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:14:14,514 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:14:14,515 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:14:14,515 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:14:14,515 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:14:14,527 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:14:14,527 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:14:14,527 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 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 29 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:14:14,544 INFO L103 rtionOrderModulation]: Keeping assertion order INSIDE_LOOP_FIRST1 [2018-11-23 12:14:14,580 INFO L249 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 7 check-sat command(s) [2018-11-23 12:14:14,580 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:14:14,606 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:14:14,608 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:14:14,801 INFO L256 TraceCheckUtils]: 0: Hoare triple {17495#true} call ULTIMATE.init(); {17495#true} is VALID [2018-11-23 12:14:14,801 INFO L273 TraceCheckUtils]: 1: Hoare triple {17495#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {17495#true} is VALID [2018-11-23 12:14:14,801 INFO L273 TraceCheckUtils]: 2: Hoare triple {17495#true} assume true; {17495#true} is VALID [2018-11-23 12:14:14,801 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {17495#true} {17495#true} #78#return; {17495#true} is VALID [2018-11-23 12:14:14,802 INFO L256 TraceCheckUtils]: 4: Hoare triple {17495#true} call #t~ret12 := main(); {17495#true} is VALID [2018-11-23 12:14:14,802 INFO L273 TraceCheckUtils]: 5: Hoare triple {17495#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {17495#true} is VALID [2018-11-23 12:14:14,802 INFO L256 TraceCheckUtils]: 6: Hoare triple {17495#true} call init_nondet(~#x~0.base, ~#x~0.offset); {17495#true} is VALID [2018-11-23 12:14:14,802 INFO L273 TraceCheckUtils]: 7: Hoare triple {17495#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {17495#true} is VALID [2018-11-23 12:14:14,802 INFO L273 TraceCheckUtils]: 8: Hoare triple {17495#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {17495#true} is VALID [2018-11-23 12:14:14,803 INFO L273 TraceCheckUtils]: 9: Hoare triple {17495#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {17495#true} is VALID [2018-11-23 12:14:14,803 INFO L273 TraceCheckUtils]: 10: Hoare triple {17495#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {17495#true} is VALID [2018-11-23 12:14:14,803 INFO L273 TraceCheckUtils]: 11: Hoare triple {17495#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {17495#true} is VALID [2018-11-23 12:14:14,803 INFO L273 TraceCheckUtils]: 12: Hoare triple {17495#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {17495#true} is VALID [2018-11-23 12:14:14,803 INFO L273 TraceCheckUtils]: 13: Hoare triple {17495#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {17495#true} is VALID [2018-11-23 12:14:14,803 INFO L273 TraceCheckUtils]: 14: Hoare triple {17495#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {17495#true} is VALID [2018-11-23 12:14:14,803 INFO L273 TraceCheckUtils]: 15: Hoare triple {17495#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {17495#true} is VALID [2018-11-23 12:14:14,803 INFO L273 TraceCheckUtils]: 16: Hoare triple {17495#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {17495#true} is VALID [2018-11-23 12:14:14,804 INFO L273 TraceCheckUtils]: 17: Hoare triple {17495#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {17495#true} is VALID [2018-11-23 12:14:14,804 INFO L273 TraceCheckUtils]: 18: Hoare triple {17495#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {17495#true} is VALID [2018-11-23 12:14:14,804 INFO L273 TraceCheckUtils]: 19: Hoare triple {17495#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {17495#true} is VALID [2018-11-23 12:14:14,804 INFO L273 TraceCheckUtils]: 20: Hoare triple {17495#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {17495#true} is VALID [2018-11-23 12:14:14,804 INFO L273 TraceCheckUtils]: 21: Hoare triple {17495#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {17495#true} is VALID [2018-11-23 12:14:14,804 INFO L273 TraceCheckUtils]: 22: Hoare triple {17495#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {17495#true} is VALID [2018-11-23 12:14:14,804 INFO L273 TraceCheckUtils]: 23: Hoare triple {17495#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {17495#true} is VALID [2018-11-23 12:14:14,804 INFO L273 TraceCheckUtils]: 24: Hoare triple {17495#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {17495#true} is VALID [2018-11-23 12:14:14,805 INFO L273 TraceCheckUtils]: 25: Hoare triple {17495#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {17495#true} is VALID [2018-11-23 12:14:14,805 INFO L273 TraceCheckUtils]: 26: Hoare triple {17495#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {17495#true} is VALID [2018-11-23 12:14:14,805 INFO L273 TraceCheckUtils]: 27: Hoare triple {17495#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {17495#true} is VALID [2018-11-23 12:14:14,805 INFO L273 TraceCheckUtils]: 28: Hoare triple {17495#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {17495#true} is VALID [2018-11-23 12:14:14,805 INFO L273 TraceCheckUtils]: 29: Hoare triple {17495#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {17495#true} is VALID [2018-11-23 12:14:14,805 INFO L273 TraceCheckUtils]: 30: Hoare triple {17495#true} assume !(~i~0 < 40); {17495#true} is VALID [2018-11-23 12:14:14,805 INFO L273 TraceCheckUtils]: 31: Hoare triple {17495#true} assume true; {17495#true} is VALID [2018-11-23 12:14:14,805 INFO L268 TraceCheckUtils]: 32: Hoare quadruple {17495#true} {17495#true} #82#return; {17495#true} is VALID [2018-11-23 12:14:14,805 INFO L273 TraceCheckUtils]: 33: Hoare triple {17495#true} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {17495#true} is VALID [2018-11-23 12:14:14,806 INFO L256 TraceCheckUtils]: 34: Hoare triple {17495#true} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {17495#true} is VALID [2018-11-23 12:14:14,806 INFO L273 TraceCheckUtils]: 35: Hoare triple {17495#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {17495#true} is VALID [2018-11-23 12:14:14,806 INFO L273 TraceCheckUtils]: 36: Hoare triple {17495#true} assume !!(~i~1 < 40); {17495#true} is VALID [2018-11-23 12:14:14,806 INFO L273 TraceCheckUtils]: 37: Hoare triple {17495#true} assume !(~i~1 > 20); {17495#true} is VALID [2018-11-23 12:14:14,806 INFO L273 TraceCheckUtils]: 38: Hoare triple {17495#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {17495#true} is VALID [2018-11-23 12:14:14,806 INFO L273 TraceCheckUtils]: 39: Hoare triple {17495#true} assume !!(~i~1 < 40); {17495#true} is VALID [2018-11-23 12:14:14,806 INFO L273 TraceCheckUtils]: 40: Hoare triple {17495#true} assume !(~i~1 > 20); {17495#true} is VALID [2018-11-23 12:14:14,806 INFO L273 TraceCheckUtils]: 41: Hoare triple {17495#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {17495#true} is VALID [2018-11-23 12:14:14,807 INFO L273 TraceCheckUtils]: 42: Hoare triple {17495#true} assume !!(~i~1 < 40); {17495#true} is VALID [2018-11-23 12:14:14,807 INFO L273 TraceCheckUtils]: 43: Hoare triple {17495#true} assume !(~i~1 > 20); {17495#true} is VALID [2018-11-23 12:14:14,807 INFO L273 TraceCheckUtils]: 44: Hoare triple {17495#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {17495#true} is VALID [2018-11-23 12:14:14,807 INFO L273 TraceCheckUtils]: 45: Hoare triple {17495#true} assume !!(~i~1 < 40); {17495#true} is VALID [2018-11-23 12:14:14,807 INFO L273 TraceCheckUtils]: 46: Hoare triple {17495#true} assume !(~i~1 > 20); {17495#true} is VALID [2018-11-23 12:14:14,807 INFO L273 TraceCheckUtils]: 47: Hoare triple {17495#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {17495#true} is VALID [2018-11-23 12:14:14,807 INFO L273 TraceCheckUtils]: 48: Hoare triple {17495#true} assume !!(~i~1 < 40); {17495#true} is VALID [2018-11-23 12:14:14,808 INFO L273 TraceCheckUtils]: 49: Hoare triple {17495#true} assume !(~i~1 > 20); {17647#(<= rangesum_~i~1 20)} is VALID [2018-11-23 12:14:14,808 INFO L273 TraceCheckUtils]: 50: Hoare triple {17647#(<= rangesum_~i~1 20)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {17651#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:14:14,808 INFO L273 TraceCheckUtils]: 51: Hoare triple {17651#(<= rangesum_~i~1 21)} assume !!(~i~1 < 40); {17651#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:14:14,809 INFO L273 TraceCheckUtils]: 52: Hoare triple {17651#(<= rangesum_~i~1 21)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {17651#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:14:14,811 INFO L273 TraceCheckUtils]: 53: Hoare triple {17651#(<= rangesum_~i~1 21)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {17661#(<= rangesum_~i~1 22)} is VALID [2018-11-23 12:14:14,811 INFO L273 TraceCheckUtils]: 54: Hoare triple {17661#(<= rangesum_~i~1 22)} assume !!(~i~1 < 40); {17661#(<= rangesum_~i~1 22)} is VALID [2018-11-23 12:14:14,812 INFO L273 TraceCheckUtils]: 55: Hoare triple {17661#(<= rangesum_~i~1 22)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {17661#(<= rangesum_~i~1 22)} is VALID [2018-11-23 12:14:14,813 INFO L273 TraceCheckUtils]: 56: Hoare triple {17661#(<= rangesum_~i~1 22)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {17671#(<= rangesum_~i~1 23)} is VALID [2018-11-23 12:14:14,813 INFO L273 TraceCheckUtils]: 57: Hoare triple {17671#(<= rangesum_~i~1 23)} assume !!(~i~1 < 40); {17671#(<= rangesum_~i~1 23)} is VALID [2018-11-23 12:14:14,813 INFO L273 TraceCheckUtils]: 58: Hoare triple {17671#(<= rangesum_~i~1 23)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {17671#(<= rangesum_~i~1 23)} is VALID [2018-11-23 12:14:14,814 INFO L273 TraceCheckUtils]: 59: Hoare triple {17671#(<= rangesum_~i~1 23)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {17681#(<= rangesum_~i~1 24)} is VALID [2018-11-23 12:14:14,814 INFO L273 TraceCheckUtils]: 60: Hoare triple {17681#(<= rangesum_~i~1 24)} assume !!(~i~1 < 40); {17681#(<= rangesum_~i~1 24)} is VALID [2018-11-23 12:14:14,815 INFO L273 TraceCheckUtils]: 61: Hoare triple {17681#(<= rangesum_~i~1 24)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {17681#(<= rangesum_~i~1 24)} is VALID [2018-11-23 12:14:14,816 INFO L273 TraceCheckUtils]: 62: Hoare triple {17681#(<= rangesum_~i~1 24)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {17691#(<= rangesum_~i~1 25)} is VALID [2018-11-23 12:14:14,816 INFO L273 TraceCheckUtils]: 63: Hoare triple {17691#(<= rangesum_~i~1 25)} assume !!(~i~1 < 40); {17691#(<= rangesum_~i~1 25)} is VALID [2018-11-23 12:14:14,817 INFO L273 TraceCheckUtils]: 64: Hoare triple {17691#(<= rangesum_~i~1 25)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {17691#(<= rangesum_~i~1 25)} is VALID [2018-11-23 12:14:14,817 INFO L273 TraceCheckUtils]: 65: Hoare triple {17691#(<= rangesum_~i~1 25)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {17701#(<= rangesum_~i~1 26)} is VALID [2018-11-23 12:14:14,818 INFO L273 TraceCheckUtils]: 66: Hoare triple {17701#(<= rangesum_~i~1 26)} assume !(~i~1 < 40); {17496#false} is VALID [2018-11-23 12:14:14,818 INFO L273 TraceCheckUtils]: 67: Hoare triple {17496#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {17496#false} is VALID [2018-11-23 12:14:14,819 INFO L273 TraceCheckUtils]: 68: Hoare triple {17496#false} assume true; {17496#false} is VALID [2018-11-23 12:14:14,819 INFO L268 TraceCheckUtils]: 69: Hoare quadruple {17496#false} {17495#true} #84#return; {17496#false} is VALID [2018-11-23 12:14:14,819 INFO L273 TraceCheckUtils]: 70: Hoare triple {17496#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {17496#false} is VALID [2018-11-23 12:14:14,819 INFO L256 TraceCheckUtils]: 71: Hoare triple {17496#false} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {17496#false} is VALID [2018-11-23 12:14:14,820 INFO L273 TraceCheckUtils]: 72: Hoare triple {17496#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {17496#false} is VALID [2018-11-23 12:14:14,820 INFO L273 TraceCheckUtils]: 73: Hoare triple {17496#false} assume !!(~i~1 < 40); {17496#false} is VALID [2018-11-23 12:14:14,820 INFO L273 TraceCheckUtils]: 74: Hoare triple {17496#false} assume !(~i~1 > 20); {17496#false} is VALID [2018-11-23 12:14:14,821 INFO L273 TraceCheckUtils]: 75: Hoare triple {17496#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {17496#false} is VALID [2018-11-23 12:14:14,821 INFO L273 TraceCheckUtils]: 76: Hoare triple {17496#false} assume !!(~i~1 < 40); {17496#false} is VALID [2018-11-23 12:14:14,821 INFO L273 TraceCheckUtils]: 77: Hoare triple {17496#false} assume !(~i~1 > 20); {17496#false} is VALID [2018-11-23 12:14:14,821 INFO L273 TraceCheckUtils]: 78: Hoare triple {17496#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {17496#false} is VALID [2018-11-23 12:14:14,821 INFO L273 TraceCheckUtils]: 79: Hoare triple {17496#false} assume !!(~i~1 < 40); {17496#false} is VALID [2018-11-23 12:14:14,822 INFO L273 TraceCheckUtils]: 80: Hoare triple {17496#false} assume !(~i~1 > 20); {17496#false} is VALID [2018-11-23 12:14:14,822 INFO L273 TraceCheckUtils]: 81: Hoare triple {17496#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {17496#false} is VALID [2018-11-23 12:14:14,822 INFO L273 TraceCheckUtils]: 82: Hoare triple {17496#false} assume !!(~i~1 < 40); {17496#false} is VALID [2018-11-23 12:14:14,822 INFO L273 TraceCheckUtils]: 83: Hoare triple {17496#false} assume !(~i~1 > 20); {17496#false} is VALID [2018-11-23 12:14:14,822 INFO L273 TraceCheckUtils]: 84: Hoare triple {17496#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {17496#false} is VALID [2018-11-23 12:14:14,822 INFO L273 TraceCheckUtils]: 85: Hoare triple {17496#false} assume !!(~i~1 < 40); {17496#false} is VALID [2018-11-23 12:14:14,822 INFO L273 TraceCheckUtils]: 86: Hoare triple {17496#false} assume !(~i~1 > 20); {17496#false} is VALID [2018-11-23 12:14:14,822 INFO L273 TraceCheckUtils]: 87: Hoare triple {17496#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {17496#false} is VALID [2018-11-23 12:14:14,823 INFO L273 TraceCheckUtils]: 88: Hoare triple {17496#false} assume !!(~i~1 < 40); {17496#false} is VALID [2018-11-23 12:14:14,823 INFO L273 TraceCheckUtils]: 89: Hoare triple {17496#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {17496#false} is VALID [2018-11-23 12:14:14,823 INFO L273 TraceCheckUtils]: 90: Hoare triple {17496#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {17496#false} is VALID [2018-11-23 12:14:14,823 INFO L273 TraceCheckUtils]: 91: Hoare triple {17496#false} assume !!(~i~1 < 40); {17496#false} is VALID [2018-11-23 12:14:14,823 INFO L273 TraceCheckUtils]: 92: Hoare triple {17496#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {17496#false} is VALID [2018-11-23 12:14:14,823 INFO L273 TraceCheckUtils]: 93: Hoare triple {17496#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {17496#false} is VALID [2018-11-23 12:14:14,823 INFO L273 TraceCheckUtils]: 94: Hoare triple {17496#false} assume !!(~i~1 < 40); {17496#false} is VALID [2018-11-23 12:14:14,823 INFO L273 TraceCheckUtils]: 95: Hoare triple {17496#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {17496#false} is VALID [2018-11-23 12:14:14,823 INFO L273 TraceCheckUtils]: 96: Hoare triple {17496#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {17496#false} is VALID [2018-11-23 12:14:14,824 INFO L273 TraceCheckUtils]: 97: Hoare triple {17496#false} assume !!(~i~1 < 40); {17496#false} is VALID [2018-11-23 12:14:14,824 INFO L273 TraceCheckUtils]: 98: Hoare triple {17496#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {17496#false} is VALID [2018-11-23 12:14:14,824 INFO L273 TraceCheckUtils]: 99: Hoare triple {17496#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {17496#false} is VALID [2018-11-23 12:14:14,824 INFO L273 TraceCheckUtils]: 100: Hoare triple {17496#false} assume !!(~i~1 < 40); {17496#false} is VALID [2018-11-23 12:14:14,824 INFO L273 TraceCheckUtils]: 101: Hoare triple {17496#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {17496#false} is VALID [2018-11-23 12:14:14,824 INFO L273 TraceCheckUtils]: 102: Hoare triple {17496#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {17496#false} is VALID [2018-11-23 12:14:14,824 INFO L273 TraceCheckUtils]: 103: Hoare triple {17496#false} assume !(~i~1 < 40); {17496#false} is VALID [2018-11-23 12:14:14,824 INFO L273 TraceCheckUtils]: 104: Hoare triple {17496#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {17496#false} is VALID [2018-11-23 12:14:14,824 INFO L273 TraceCheckUtils]: 105: Hoare triple {17496#false} assume true; {17496#false} is VALID [2018-11-23 12:14:14,825 INFO L268 TraceCheckUtils]: 106: Hoare quadruple {17496#false} {17496#false} #86#return; {17496#false} is VALID [2018-11-23 12:14:14,825 INFO L273 TraceCheckUtils]: 107: Hoare triple {17496#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {17496#false} is VALID [2018-11-23 12:14:14,825 INFO L273 TraceCheckUtils]: 108: Hoare triple {17496#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {17496#false} is VALID [2018-11-23 12:14:14,825 INFO L273 TraceCheckUtils]: 109: Hoare triple {17496#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {17496#false} is VALID [2018-11-23 12:14:14,825 INFO L273 TraceCheckUtils]: 110: Hoare triple {17496#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {17496#false} is VALID [2018-11-23 12:14:14,825 INFO L273 TraceCheckUtils]: 111: Hoare triple {17496#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {17496#false} is VALID [2018-11-23 12:14:14,825 INFO L273 TraceCheckUtils]: 112: Hoare triple {17496#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {17496#false} is VALID [2018-11-23 12:14:14,825 INFO L273 TraceCheckUtils]: 113: Hoare triple {17496#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {17496#false} is VALID [2018-11-23 12:14:14,826 INFO L273 TraceCheckUtils]: 114: Hoare triple {17496#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {17496#false} is VALID [2018-11-23 12:14:14,826 INFO L273 TraceCheckUtils]: 115: Hoare triple {17496#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {17496#false} is VALID [2018-11-23 12:14:14,826 INFO L273 TraceCheckUtils]: 116: Hoare triple {17496#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {17496#false} is VALID [2018-11-23 12:14:14,826 INFO L273 TraceCheckUtils]: 117: Hoare triple {17496#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {17496#false} is VALID [2018-11-23 12:14:14,826 INFO L273 TraceCheckUtils]: 118: Hoare triple {17496#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {17496#false} is VALID [2018-11-23 12:14:14,826 INFO L273 TraceCheckUtils]: 119: Hoare triple {17496#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {17496#false} is VALID [2018-11-23 12:14:14,826 INFO L273 TraceCheckUtils]: 120: Hoare triple {17496#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {17496#false} is VALID [2018-11-23 12:14:14,826 INFO L273 TraceCheckUtils]: 121: Hoare triple {17496#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {17496#false} is VALID [2018-11-23 12:14:14,826 INFO L273 TraceCheckUtils]: 122: Hoare triple {17496#false} assume !(~i~2 < 39); {17496#false} is VALID [2018-11-23 12:14:14,827 INFO L273 TraceCheckUtils]: 123: Hoare triple {17496#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {17496#false} is VALID [2018-11-23 12:14:14,827 INFO L256 TraceCheckUtils]: 124: Hoare triple {17496#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {17496#false} is VALID [2018-11-23 12:14:14,827 INFO L273 TraceCheckUtils]: 125: Hoare triple {17496#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {17496#false} is VALID [2018-11-23 12:14:14,827 INFO L273 TraceCheckUtils]: 126: Hoare triple {17496#false} assume !!(~i~1 < 40); {17496#false} is VALID [2018-11-23 12:14:14,827 INFO L273 TraceCheckUtils]: 127: Hoare triple {17496#false} assume !(~i~1 > 20); {17496#false} is VALID [2018-11-23 12:14:14,827 INFO L273 TraceCheckUtils]: 128: Hoare triple {17496#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {17496#false} is VALID [2018-11-23 12:14:14,827 INFO L273 TraceCheckUtils]: 129: Hoare triple {17496#false} assume !!(~i~1 < 40); {17496#false} is VALID [2018-11-23 12:14:14,827 INFO L273 TraceCheckUtils]: 130: Hoare triple {17496#false} assume !(~i~1 > 20); {17496#false} is VALID [2018-11-23 12:14:14,827 INFO L273 TraceCheckUtils]: 131: Hoare triple {17496#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {17496#false} is VALID [2018-11-23 12:14:14,828 INFO L273 TraceCheckUtils]: 132: Hoare triple {17496#false} assume !!(~i~1 < 40); {17496#false} is VALID [2018-11-23 12:14:14,828 INFO L273 TraceCheckUtils]: 133: Hoare triple {17496#false} assume !(~i~1 > 20); {17496#false} is VALID [2018-11-23 12:14:14,828 INFO L273 TraceCheckUtils]: 134: Hoare triple {17496#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {17496#false} is VALID [2018-11-23 12:14:14,828 INFO L273 TraceCheckUtils]: 135: Hoare triple {17496#false} assume !!(~i~1 < 40); {17496#false} is VALID [2018-11-23 12:14:14,828 INFO L273 TraceCheckUtils]: 136: Hoare triple {17496#false} assume !(~i~1 > 20); {17496#false} is VALID [2018-11-23 12:14:14,828 INFO L273 TraceCheckUtils]: 137: Hoare triple {17496#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {17496#false} is VALID [2018-11-23 12:14:14,828 INFO L273 TraceCheckUtils]: 138: Hoare triple {17496#false} assume !!(~i~1 < 40); {17496#false} is VALID [2018-11-23 12:14:14,828 INFO L273 TraceCheckUtils]: 139: Hoare triple {17496#false} assume !(~i~1 > 20); {17496#false} is VALID [2018-11-23 12:14:14,828 INFO L273 TraceCheckUtils]: 140: Hoare triple {17496#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {17496#false} is VALID [2018-11-23 12:14:14,829 INFO L273 TraceCheckUtils]: 141: Hoare triple {17496#false} assume !!(~i~1 < 40); {17496#false} is VALID [2018-11-23 12:14:14,829 INFO L273 TraceCheckUtils]: 142: Hoare triple {17496#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {17496#false} is VALID [2018-11-23 12:14:14,829 INFO L273 TraceCheckUtils]: 143: Hoare triple {17496#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {17496#false} is VALID [2018-11-23 12:14:14,829 INFO L273 TraceCheckUtils]: 144: Hoare triple {17496#false} assume !!(~i~1 < 40); {17496#false} is VALID [2018-11-23 12:14:14,829 INFO L273 TraceCheckUtils]: 145: Hoare triple {17496#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {17496#false} is VALID [2018-11-23 12:14:14,829 INFO L273 TraceCheckUtils]: 146: Hoare triple {17496#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {17496#false} is VALID [2018-11-23 12:14:14,829 INFO L273 TraceCheckUtils]: 147: Hoare triple {17496#false} assume !!(~i~1 < 40); {17496#false} is VALID [2018-11-23 12:14:14,829 INFO L273 TraceCheckUtils]: 148: Hoare triple {17496#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {17496#false} is VALID [2018-11-23 12:14:14,829 INFO L273 TraceCheckUtils]: 149: Hoare triple {17496#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {17496#false} is VALID [2018-11-23 12:14:14,830 INFO L273 TraceCheckUtils]: 150: Hoare triple {17496#false} assume !!(~i~1 < 40); {17496#false} is VALID [2018-11-23 12:14:14,830 INFO L273 TraceCheckUtils]: 151: Hoare triple {17496#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {17496#false} is VALID [2018-11-23 12:14:14,830 INFO L273 TraceCheckUtils]: 152: Hoare triple {17496#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {17496#false} is VALID [2018-11-23 12:14:14,830 INFO L273 TraceCheckUtils]: 153: Hoare triple {17496#false} assume !!(~i~1 < 40); {17496#false} is VALID [2018-11-23 12:14:14,830 INFO L273 TraceCheckUtils]: 154: Hoare triple {17496#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {17496#false} is VALID [2018-11-23 12:14:14,830 INFO L273 TraceCheckUtils]: 155: Hoare triple {17496#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {17496#false} is VALID [2018-11-23 12:14:14,830 INFO L273 TraceCheckUtils]: 156: Hoare triple {17496#false} assume !(~i~1 < 40); {17496#false} is VALID [2018-11-23 12:14:14,830 INFO L273 TraceCheckUtils]: 157: Hoare triple {17496#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {17496#false} is VALID [2018-11-23 12:14:14,830 INFO L273 TraceCheckUtils]: 158: Hoare triple {17496#false} assume true; {17496#false} is VALID [2018-11-23 12:14:14,831 INFO L268 TraceCheckUtils]: 159: Hoare quadruple {17496#false} {17496#false} #88#return; {17496#false} is VALID [2018-11-23 12:14:14,831 INFO L273 TraceCheckUtils]: 160: Hoare triple {17496#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {17496#false} is VALID [2018-11-23 12:14:14,831 INFO L273 TraceCheckUtils]: 161: Hoare triple {17496#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {17496#false} is VALID [2018-11-23 12:14:14,831 INFO L273 TraceCheckUtils]: 162: Hoare triple {17496#false} assume !false; {17496#false} is VALID [2018-11-23 12:14:14,841 INFO L134 CoverageAnalysis]: Checked inductivity of 1580 backedges. 723 proven. 40 refuted. 0 times theorem prover too weak. 817 trivial. 0 not checked. [2018-11-23 12:14:14,859 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:14:14,860 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [9] total 9 [2018-11-23 12:14:14,860 INFO L78 Accepts]: Start accepts. Automaton has 9 states. Word has length 163 [2018-11-23 12:14:14,860 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:14:14,860 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states. [2018-11-23 12:14:14,918 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 59 edges. 59 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:14:14,919 INFO L459 AbstractCegarLoop]: Interpolant automaton has 9 states [2018-11-23 12:14:14,919 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2018-11-23 12:14:14,919 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=36, Invalid=36, Unknown=0, NotChecked=0, Total=72 [2018-11-23 12:14:14,920 INFO L87 Difference]: Start difference. First operand 94 states and 104 transitions. Second operand 9 states. [2018-11-23 12:14:15,112 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:15,112 INFO L93 Difference]: Finished difference Result 158 states and 182 transitions. [2018-11-23 12:14:15,113 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2018-11-23 12:14:15,113 INFO L78 Accepts]: Start accepts. Automaton has 9 states. Word has length 163 [2018-11-23 12:14:15,113 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:14:15,113 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 9 states. [2018-11-23 12:14:15,114 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 91 transitions. [2018-11-23 12:14:15,114 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 9 states. [2018-11-23 12:14:15,115 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 91 transitions. [2018-11-23 12:14:15,115 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states and 91 transitions. [2018-11-23 12:14:15,195 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-23 12:14:15,197 INFO L225 Difference]: With dead ends: 158 [2018-11-23 12:14:15,198 INFO L226 Difference]: Without dead ends: 99 [2018-11-23 12:14:15,198 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 162 GetRequests, 155 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=36, Invalid=36, Unknown=0, NotChecked=0, Total=72 [2018-11-23 12:14:15,199 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 99 states. [2018-11-23 12:14:15,283 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 99 to 97. [2018-11-23 12:14:15,283 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:14:15,283 INFO L82 GeneralOperation]: Start isEquivalent. First operand 99 states. Second operand 97 states. [2018-11-23 12:14:15,283 INFO L74 IsIncluded]: Start isIncluded. First operand 99 states. Second operand 97 states. [2018-11-23 12:14:15,284 INFO L87 Difference]: Start difference. First operand 99 states. Second operand 97 states. [2018-11-23 12:14:15,286 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:15,286 INFO L93 Difference]: Finished difference Result 99 states and 111 transitions. [2018-11-23 12:14:15,286 INFO L276 IsEmpty]: Start isEmpty. Operand 99 states and 111 transitions. [2018-11-23 12:14:15,287 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:14:15,287 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:14:15,287 INFO L74 IsIncluded]: Start isIncluded. First operand 97 states. Second operand 99 states. [2018-11-23 12:14:15,287 INFO L87 Difference]: Start difference. First operand 97 states. Second operand 99 states. [2018-11-23 12:14:15,289 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:15,289 INFO L93 Difference]: Finished difference Result 99 states and 111 transitions. [2018-11-23 12:14:15,289 INFO L276 IsEmpty]: Start isEmpty. Operand 99 states and 111 transitions. [2018-11-23 12:14:15,290 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:14:15,290 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:14:15,290 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:14:15,290 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:14:15,290 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 97 states. [2018-11-23 12:14:15,292 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 97 states to 97 states and 108 transitions. [2018-11-23 12:14:15,292 INFO L78 Accepts]: Start accepts. Automaton has 97 states and 108 transitions. Word has length 163 [2018-11-23 12:14:15,292 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:14:15,292 INFO L480 AbstractCegarLoop]: Abstraction has 97 states and 108 transitions. [2018-11-23 12:14:15,292 INFO L481 AbstractCegarLoop]: Interpolant automaton has 9 states. [2018-11-23 12:14:15,293 INFO L276 IsEmpty]: Start isEmpty. Operand 97 states and 108 transitions. [2018-11-23 12:14:15,293 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 173 [2018-11-23 12:14:15,293 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:14:15,294 INFO L402 BasicCegarLoop]: trace histogram [33, 33, 18, 15, 11, 11, 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, 1, 1, 1, 1, 1] [2018-11-23 12:14:15,294 INFO L423 AbstractCegarLoop]: === Iteration 29 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:14:15,294 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:14:15,294 INFO L82 PathProgramCache]: Analyzing trace with hash 787007752, now seen corresponding path program 24 times [2018-11-23 12:14:15,294 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:14:15,295 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:14:15,295 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:14:15,295 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:14:15,295 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:14:15,307 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:14:15,308 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:14:15,308 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 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 30 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:14:15,321 INFO L103 rtionOrderModulation]: Keeping assertion order MIX_INSIDE_OUTSIDE [2018-11-23 12:14:16,842 INFO L249 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 17 check-sat command(s) [2018-11-23 12:14:16,842 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:14:16,878 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:14:16,881 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:14:17,184 INFO L256 TraceCheckUtils]: 0: Hoare triple {18551#true} call ULTIMATE.init(); {18551#true} is VALID [2018-11-23 12:14:17,185 INFO L273 TraceCheckUtils]: 1: Hoare triple {18551#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {18551#true} is VALID [2018-11-23 12:14:17,185 INFO L273 TraceCheckUtils]: 2: Hoare triple {18551#true} assume true; {18551#true} is VALID [2018-11-23 12:14:17,185 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {18551#true} {18551#true} #78#return; {18551#true} is VALID [2018-11-23 12:14:17,185 INFO L256 TraceCheckUtils]: 4: Hoare triple {18551#true} call #t~ret12 := main(); {18551#true} is VALID [2018-11-23 12:14:17,186 INFO L273 TraceCheckUtils]: 5: Hoare triple {18551#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {18551#true} is VALID [2018-11-23 12:14:17,186 INFO L256 TraceCheckUtils]: 6: Hoare triple {18551#true} call init_nondet(~#x~0.base, ~#x~0.offset); {18551#true} is VALID [2018-11-23 12:14:17,186 INFO L273 TraceCheckUtils]: 7: Hoare triple {18551#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {18551#true} is VALID [2018-11-23 12:14:17,186 INFO L273 TraceCheckUtils]: 8: Hoare triple {18551#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {18551#true} is VALID [2018-11-23 12:14:17,186 INFO L273 TraceCheckUtils]: 9: Hoare triple {18551#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18551#true} is VALID [2018-11-23 12:14:17,186 INFO L273 TraceCheckUtils]: 10: Hoare triple {18551#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {18551#true} is VALID [2018-11-23 12:14:17,187 INFO L273 TraceCheckUtils]: 11: Hoare triple {18551#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18551#true} is VALID [2018-11-23 12:14:17,187 INFO L273 TraceCheckUtils]: 12: Hoare triple {18551#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {18551#true} is VALID [2018-11-23 12:14:17,187 INFO L273 TraceCheckUtils]: 13: Hoare triple {18551#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18551#true} is VALID [2018-11-23 12:14:17,187 INFO L273 TraceCheckUtils]: 14: Hoare triple {18551#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {18551#true} is VALID [2018-11-23 12:14:17,187 INFO L273 TraceCheckUtils]: 15: Hoare triple {18551#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18551#true} is VALID [2018-11-23 12:14:17,188 INFO L273 TraceCheckUtils]: 16: Hoare triple {18551#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {18551#true} is VALID [2018-11-23 12:14:17,188 INFO L273 TraceCheckUtils]: 17: Hoare triple {18551#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18551#true} is VALID [2018-11-23 12:14:17,188 INFO L273 TraceCheckUtils]: 18: Hoare triple {18551#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {18551#true} is VALID [2018-11-23 12:14:17,188 INFO L273 TraceCheckUtils]: 19: Hoare triple {18551#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18551#true} is VALID [2018-11-23 12:14:17,188 INFO L273 TraceCheckUtils]: 20: Hoare triple {18551#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {18551#true} is VALID [2018-11-23 12:14:17,188 INFO L273 TraceCheckUtils]: 21: Hoare triple {18551#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18551#true} is VALID [2018-11-23 12:14:17,188 INFO L273 TraceCheckUtils]: 22: Hoare triple {18551#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {18551#true} is VALID [2018-11-23 12:14:17,188 INFO L273 TraceCheckUtils]: 23: Hoare triple {18551#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18551#true} is VALID [2018-11-23 12:14:17,188 INFO L273 TraceCheckUtils]: 24: Hoare triple {18551#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {18551#true} is VALID [2018-11-23 12:14:17,189 INFO L273 TraceCheckUtils]: 25: Hoare triple {18551#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18551#true} is VALID [2018-11-23 12:14:17,189 INFO L273 TraceCheckUtils]: 26: Hoare triple {18551#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {18551#true} is VALID [2018-11-23 12:14:17,189 INFO L273 TraceCheckUtils]: 27: Hoare triple {18551#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18551#true} is VALID [2018-11-23 12:14:17,189 INFO L273 TraceCheckUtils]: 28: Hoare triple {18551#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {18551#true} is VALID [2018-11-23 12:14:17,189 INFO L273 TraceCheckUtils]: 29: Hoare triple {18551#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18551#true} is VALID [2018-11-23 12:14:17,189 INFO L273 TraceCheckUtils]: 30: Hoare triple {18551#true} assume !(~i~0 < 40); {18551#true} is VALID [2018-11-23 12:14:17,189 INFO L273 TraceCheckUtils]: 31: Hoare triple {18551#true} assume true; {18551#true} is VALID [2018-11-23 12:14:17,189 INFO L268 TraceCheckUtils]: 32: Hoare quadruple {18551#true} {18551#true} #82#return; {18551#true} is VALID [2018-11-23 12:14:17,189 INFO L273 TraceCheckUtils]: 33: Hoare triple {18551#true} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {18551#true} is VALID [2018-11-23 12:14:17,190 INFO L256 TraceCheckUtils]: 34: Hoare triple {18551#true} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {18551#true} is VALID [2018-11-23 12:14:17,190 INFO L273 TraceCheckUtils]: 35: Hoare triple {18551#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {18551#true} is VALID [2018-11-23 12:14:17,190 INFO L273 TraceCheckUtils]: 36: Hoare triple {18551#true} assume !!(~i~1 < 40); {18551#true} is VALID [2018-11-23 12:14:17,190 INFO L273 TraceCheckUtils]: 37: Hoare triple {18551#true} assume !(~i~1 > 20); {18551#true} is VALID [2018-11-23 12:14:17,190 INFO L273 TraceCheckUtils]: 38: Hoare triple {18551#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {18551#true} is VALID [2018-11-23 12:14:17,190 INFO L273 TraceCheckUtils]: 39: Hoare triple {18551#true} assume !!(~i~1 < 40); {18551#true} is VALID [2018-11-23 12:14:17,190 INFO L273 TraceCheckUtils]: 40: Hoare triple {18551#true} assume !(~i~1 > 20); {18551#true} is VALID [2018-11-23 12:14:17,190 INFO L273 TraceCheckUtils]: 41: Hoare triple {18551#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {18551#true} is VALID [2018-11-23 12:14:17,191 INFO L273 TraceCheckUtils]: 42: Hoare triple {18551#true} assume !!(~i~1 < 40); {18551#true} is VALID [2018-11-23 12:14:17,191 INFO L273 TraceCheckUtils]: 43: Hoare triple {18551#true} assume !(~i~1 > 20); {18551#true} is VALID [2018-11-23 12:14:17,191 INFO L273 TraceCheckUtils]: 44: Hoare triple {18551#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {18551#true} is VALID [2018-11-23 12:14:17,191 INFO L273 TraceCheckUtils]: 45: Hoare triple {18551#true} assume !!(~i~1 < 40); {18551#true} is VALID [2018-11-23 12:14:17,191 INFO L273 TraceCheckUtils]: 46: Hoare triple {18551#true} assume !(~i~1 > 20); {18551#true} is VALID [2018-11-23 12:14:17,191 INFO L273 TraceCheckUtils]: 47: Hoare triple {18551#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {18551#true} is VALID [2018-11-23 12:14:17,191 INFO L273 TraceCheckUtils]: 48: Hoare triple {18551#true} assume !!(~i~1 < 40); {18551#true} is VALID [2018-11-23 12:14:17,191 INFO L273 TraceCheckUtils]: 49: Hoare triple {18551#true} assume !(~i~1 > 20); {18551#true} is VALID [2018-11-23 12:14:17,192 INFO L273 TraceCheckUtils]: 50: Hoare triple {18551#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {18551#true} is VALID [2018-11-23 12:14:17,192 INFO L273 TraceCheckUtils]: 51: Hoare triple {18551#true} assume !!(~i~1 < 40); {18551#true} is VALID [2018-11-23 12:14:17,192 INFO L273 TraceCheckUtils]: 52: Hoare triple {18551#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {18551#true} is VALID [2018-11-23 12:14:17,192 INFO L273 TraceCheckUtils]: 53: Hoare triple {18551#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {18551#true} is VALID [2018-11-23 12:14:17,192 INFO L273 TraceCheckUtils]: 54: Hoare triple {18551#true} assume !!(~i~1 < 40); {18551#true} is VALID [2018-11-23 12:14:17,192 INFO L273 TraceCheckUtils]: 55: Hoare triple {18551#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {18551#true} is VALID [2018-11-23 12:14:17,193 INFO L273 TraceCheckUtils]: 56: Hoare triple {18551#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {18551#true} is VALID [2018-11-23 12:14:17,193 INFO L273 TraceCheckUtils]: 57: Hoare triple {18551#true} assume !!(~i~1 < 40); {18551#true} is VALID [2018-11-23 12:14:17,193 INFO L273 TraceCheckUtils]: 58: Hoare triple {18551#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {18551#true} is VALID [2018-11-23 12:14:17,193 INFO L273 TraceCheckUtils]: 59: Hoare triple {18551#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {18551#true} is VALID [2018-11-23 12:14:17,193 INFO L273 TraceCheckUtils]: 60: Hoare triple {18551#true} assume !!(~i~1 < 40); {18551#true} is VALID [2018-11-23 12:14:17,193 INFO L273 TraceCheckUtils]: 61: Hoare triple {18551#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {18551#true} is VALID [2018-11-23 12:14:17,193 INFO L273 TraceCheckUtils]: 62: Hoare triple {18551#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {18551#true} is VALID [2018-11-23 12:14:17,193 INFO L273 TraceCheckUtils]: 63: Hoare triple {18551#true} assume !!(~i~1 < 40); {18551#true} is VALID [2018-11-23 12:14:17,193 INFO L273 TraceCheckUtils]: 64: Hoare triple {18551#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {18551#true} is VALID [2018-11-23 12:14:17,194 INFO L273 TraceCheckUtils]: 65: Hoare triple {18551#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {18551#true} is VALID [2018-11-23 12:14:17,194 INFO L273 TraceCheckUtils]: 66: Hoare triple {18551#true} assume !!(~i~1 < 40); {18551#true} is VALID [2018-11-23 12:14:17,194 INFO L273 TraceCheckUtils]: 67: Hoare triple {18551#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {18551#true} is VALID [2018-11-23 12:14:17,194 INFO L273 TraceCheckUtils]: 68: Hoare triple {18551#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {18551#true} is VALID [2018-11-23 12:14:17,194 INFO L273 TraceCheckUtils]: 69: Hoare triple {18551#true} assume !(~i~1 < 40); {18551#true} is VALID [2018-11-23 12:14:17,194 INFO L273 TraceCheckUtils]: 70: Hoare triple {18551#true} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {18551#true} is VALID [2018-11-23 12:14:17,194 INFO L273 TraceCheckUtils]: 71: Hoare triple {18551#true} assume true; {18551#true} is VALID [2018-11-23 12:14:17,194 INFO L268 TraceCheckUtils]: 72: Hoare quadruple {18551#true} {18551#true} #84#return; {18551#true} is VALID [2018-11-23 12:14:17,195 INFO L273 TraceCheckUtils]: 73: Hoare triple {18551#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {18551#true} is VALID [2018-11-23 12:14:17,195 INFO L256 TraceCheckUtils]: 74: Hoare triple {18551#true} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {18551#true} is VALID [2018-11-23 12:14:17,195 INFO L273 TraceCheckUtils]: 75: Hoare triple {18551#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {18551#true} is VALID [2018-11-23 12:14:17,195 INFO L273 TraceCheckUtils]: 76: Hoare triple {18551#true} assume !!(~i~1 < 40); {18551#true} is VALID [2018-11-23 12:14:17,195 INFO L273 TraceCheckUtils]: 77: Hoare triple {18551#true} assume !(~i~1 > 20); {18551#true} is VALID [2018-11-23 12:14:17,195 INFO L273 TraceCheckUtils]: 78: Hoare triple {18551#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {18551#true} is VALID [2018-11-23 12:14:17,195 INFO L273 TraceCheckUtils]: 79: Hoare triple {18551#true} assume !!(~i~1 < 40); {18551#true} is VALID [2018-11-23 12:14:17,195 INFO L273 TraceCheckUtils]: 80: Hoare triple {18551#true} assume !(~i~1 > 20); {18551#true} is VALID [2018-11-23 12:14:17,195 INFO L273 TraceCheckUtils]: 81: Hoare triple {18551#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {18551#true} is VALID [2018-11-23 12:14:17,196 INFO L273 TraceCheckUtils]: 82: Hoare triple {18551#true} assume !!(~i~1 < 40); {18551#true} is VALID [2018-11-23 12:14:17,196 INFO L273 TraceCheckUtils]: 83: Hoare triple {18551#true} assume !(~i~1 > 20); {18551#true} is VALID [2018-11-23 12:14:17,196 INFO L273 TraceCheckUtils]: 84: Hoare triple {18551#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {18551#true} is VALID [2018-11-23 12:14:17,196 INFO L273 TraceCheckUtils]: 85: Hoare triple {18551#true} assume !!(~i~1 < 40); {18551#true} is VALID [2018-11-23 12:14:17,196 INFO L273 TraceCheckUtils]: 86: Hoare triple {18551#true} assume !(~i~1 > 20); {18551#true} is VALID [2018-11-23 12:14:17,196 INFO L273 TraceCheckUtils]: 87: Hoare triple {18551#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {18551#true} is VALID [2018-11-23 12:14:17,196 INFO L273 TraceCheckUtils]: 88: Hoare triple {18551#true} assume !!(~i~1 < 40); {18551#true} is VALID [2018-11-23 12:14:17,196 INFO L273 TraceCheckUtils]: 89: Hoare triple {18551#true} assume !(~i~1 > 20); {18551#true} is VALID [2018-11-23 12:14:17,196 INFO L273 TraceCheckUtils]: 90: Hoare triple {18551#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {18551#true} is VALID [2018-11-23 12:14:17,197 INFO L273 TraceCheckUtils]: 91: Hoare triple {18551#true} assume !!(~i~1 < 40); {18551#true} is VALID [2018-11-23 12:14:17,197 INFO L273 TraceCheckUtils]: 92: Hoare triple {18551#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {18551#true} is VALID [2018-11-23 12:14:17,197 INFO L273 TraceCheckUtils]: 93: Hoare triple {18551#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {18551#true} is VALID [2018-11-23 12:14:17,197 INFO L273 TraceCheckUtils]: 94: Hoare triple {18551#true} assume !!(~i~1 < 40); {18551#true} is VALID [2018-11-23 12:14:17,197 INFO L273 TraceCheckUtils]: 95: Hoare triple {18551#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {18551#true} is VALID [2018-11-23 12:14:17,197 INFO L273 TraceCheckUtils]: 96: Hoare triple {18551#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {18551#true} is VALID [2018-11-23 12:14:17,197 INFO L273 TraceCheckUtils]: 97: Hoare triple {18551#true} assume !!(~i~1 < 40); {18551#true} is VALID [2018-11-23 12:14:17,197 INFO L273 TraceCheckUtils]: 98: Hoare triple {18551#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {18551#true} is VALID [2018-11-23 12:14:17,197 INFO L273 TraceCheckUtils]: 99: Hoare triple {18551#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {18551#true} is VALID [2018-11-23 12:14:17,198 INFO L273 TraceCheckUtils]: 100: Hoare triple {18551#true} assume !!(~i~1 < 40); {18551#true} is VALID [2018-11-23 12:14:17,198 INFO L273 TraceCheckUtils]: 101: Hoare triple {18551#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {18551#true} is VALID [2018-11-23 12:14:17,198 INFO L273 TraceCheckUtils]: 102: Hoare triple {18551#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {18551#true} is VALID [2018-11-23 12:14:17,198 INFO L273 TraceCheckUtils]: 103: Hoare triple {18551#true} assume !!(~i~1 < 40); {18551#true} is VALID [2018-11-23 12:14:17,198 INFO L273 TraceCheckUtils]: 104: Hoare triple {18551#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {18551#true} is VALID [2018-11-23 12:14:17,198 INFO L273 TraceCheckUtils]: 105: Hoare triple {18551#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {18551#true} is VALID [2018-11-23 12:14:17,198 INFO L273 TraceCheckUtils]: 106: Hoare triple {18551#true} assume !!(~i~1 < 40); {18551#true} is VALID [2018-11-23 12:14:17,198 INFO L273 TraceCheckUtils]: 107: Hoare triple {18551#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {18551#true} is VALID [2018-11-23 12:14:17,198 INFO L273 TraceCheckUtils]: 108: Hoare triple {18551#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {18551#true} is VALID [2018-11-23 12:14:17,199 INFO L273 TraceCheckUtils]: 109: Hoare triple {18551#true} assume !(~i~1 < 40); {18551#true} is VALID [2018-11-23 12:14:17,199 INFO L273 TraceCheckUtils]: 110: Hoare triple {18551#true} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {18551#true} is VALID [2018-11-23 12:14:17,199 INFO L273 TraceCheckUtils]: 111: Hoare triple {18551#true} assume true; {18551#true} is VALID [2018-11-23 12:14:17,199 INFO L268 TraceCheckUtils]: 112: Hoare quadruple {18551#true} {18551#true} #86#return; {18551#true} is VALID [2018-11-23 12:14:17,199 INFO L273 TraceCheckUtils]: 113: Hoare triple {18551#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {18895#(<= main_~i~2 0)} is VALID [2018-11-23 12:14:17,200 INFO L273 TraceCheckUtils]: 114: Hoare triple {18895#(<= main_~i~2 0)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {18895#(<= main_~i~2 0)} is VALID [2018-11-23 12:14:17,200 INFO L273 TraceCheckUtils]: 115: Hoare triple {18895#(<= main_~i~2 0)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {18902#(<= main_~i~2 1)} is VALID [2018-11-23 12:14:17,201 INFO L273 TraceCheckUtils]: 116: Hoare triple {18902#(<= main_~i~2 1)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {18902#(<= main_~i~2 1)} is VALID [2018-11-23 12:14:17,201 INFO L273 TraceCheckUtils]: 117: Hoare triple {18902#(<= main_~i~2 1)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {18909#(<= main_~i~2 2)} is VALID [2018-11-23 12:14:17,201 INFO L273 TraceCheckUtils]: 118: Hoare triple {18909#(<= main_~i~2 2)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {18909#(<= main_~i~2 2)} is VALID [2018-11-23 12:14:17,202 INFO L273 TraceCheckUtils]: 119: Hoare triple {18909#(<= main_~i~2 2)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {18916#(<= main_~i~2 3)} is VALID [2018-11-23 12:14:17,202 INFO L273 TraceCheckUtils]: 120: Hoare triple {18916#(<= main_~i~2 3)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {18916#(<= main_~i~2 3)} is VALID [2018-11-23 12:14:17,203 INFO L273 TraceCheckUtils]: 121: Hoare triple {18916#(<= main_~i~2 3)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {18923#(<= main_~i~2 4)} is VALID [2018-11-23 12:14:17,203 INFO L273 TraceCheckUtils]: 122: Hoare triple {18923#(<= main_~i~2 4)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {18923#(<= main_~i~2 4)} is VALID [2018-11-23 12:14:17,204 INFO L273 TraceCheckUtils]: 123: Hoare triple {18923#(<= main_~i~2 4)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {18930#(<= main_~i~2 5)} is VALID [2018-11-23 12:14:17,204 INFO L273 TraceCheckUtils]: 124: Hoare triple {18930#(<= main_~i~2 5)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {18930#(<= main_~i~2 5)} is VALID [2018-11-23 12:14:17,205 INFO L273 TraceCheckUtils]: 125: Hoare triple {18930#(<= main_~i~2 5)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {18937#(<= main_~i~2 6)} is VALID [2018-11-23 12:14:17,205 INFO L273 TraceCheckUtils]: 126: Hoare triple {18937#(<= main_~i~2 6)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {18937#(<= main_~i~2 6)} is VALID [2018-11-23 12:14:17,206 INFO L273 TraceCheckUtils]: 127: Hoare triple {18937#(<= main_~i~2 6)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {18944#(<= main_~i~2 7)} is VALID [2018-11-23 12:14:17,210 INFO L273 TraceCheckUtils]: 128: Hoare triple {18944#(<= main_~i~2 7)} assume !(~i~2 < 39); {18552#false} is VALID [2018-11-23 12:14:17,211 INFO L273 TraceCheckUtils]: 129: Hoare triple {18552#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {18552#false} is VALID [2018-11-23 12:14:17,211 INFO L256 TraceCheckUtils]: 130: Hoare triple {18552#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {18552#false} is VALID [2018-11-23 12:14:17,211 INFO L273 TraceCheckUtils]: 131: Hoare triple {18552#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {18552#false} is VALID [2018-11-23 12:14:17,211 INFO L273 TraceCheckUtils]: 132: Hoare triple {18552#false} assume !!(~i~1 < 40); {18552#false} is VALID [2018-11-23 12:14:17,211 INFO L273 TraceCheckUtils]: 133: Hoare triple {18552#false} assume !(~i~1 > 20); {18552#false} is VALID [2018-11-23 12:14:17,211 INFO L273 TraceCheckUtils]: 134: Hoare triple {18552#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {18552#false} is VALID [2018-11-23 12:14:17,211 INFO L273 TraceCheckUtils]: 135: Hoare triple {18552#false} assume !!(~i~1 < 40); {18552#false} is VALID [2018-11-23 12:14:17,211 INFO L273 TraceCheckUtils]: 136: Hoare triple {18552#false} assume !(~i~1 > 20); {18552#false} is VALID [2018-11-23 12:14:17,212 INFO L273 TraceCheckUtils]: 137: Hoare triple {18552#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {18552#false} is VALID [2018-11-23 12:14:17,212 INFO L273 TraceCheckUtils]: 138: Hoare triple {18552#false} assume !!(~i~1 < 40); {18552#false} is VALID [2018-11-23 12:14:17,212 INFO L273 TraceCheckUtils]: 139: Hoare triple {18552#false} assume !(~i~1 > 20); {18552#false} is VALID [2018-11-23 12:14:17,212 INFO L273 TraceCheckUtils]: 140: Hoare triple {18552#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {18552#false} is VALID [2018-11-23 12:14:17,212 INFO L273 TraceCheckUtils]: 141: Hoare triple {18552#false} assume !!(~i~1 < 40); {18552#false} is VALID [2018-11-23 12:14:17,212 INFO L273 TraceCheckUtils]: 142: Hoare triple {18552#false} assume !(~i~1 > 20); {18552#false} is VALID [2018-11-23 12:14:17,212 INFO L273 TraceCheckUtils]: 143: Hoare triple {18552#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {18552#false} is VALID [2018-11-23 12:14:17,212 INFO L273 TraceCheckUtils]: 144: Hoare triple {18552#false} assume !!(~i~1 < 40); {18552#false} is VALID [2018-11-23 12:14:17,212 INFO L273 TraceCheckUtils]: 145: Hoare triple {18552#false} assume !(~i~1 > 20); {18552#false} is VALID [2018-11-23 12:14:17,213 INFO L273 TraceCheckUtils]: 146: Hoare triple {18552#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {18552#false} is VALID [2018-11-23 12:14:17,213 INFO L273 TraceCheckUtils]: 147: Hoare triple {18552#false} assume !!(~i~1 < 40); {18552#false} is VALID [2018-11-23 12:14:17,213 INFO L273 TraceCheckUtils]: 148: Hoare triple {18552#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {18552#false} is VALID [2018-11-23 12:14:17,213 INFO L273 TraceCheckUtils]: 149: Hoare triple {18552#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {18552#false} is VALID [2018-11-23 12:14:17,213 INFO L273 TraceCheckUtils]: 150: Hoare triple {18552#false} assume !!(~i~1 < 40); {18552#false} is VALID [2018-11-23 12:14:17,213 INFO L273 TraceCheckUtils]: 151: Hoare triple {18552#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {18552#false} is VALID [2018-11-23 12:14:17,213 INFO L273 TraceCheckUtils]: 152: Hoare triple {18552#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {18552#false} is VALID [2018-11-23 12:14:17,213 INFO L273 TraceCheckUtils]: 153: Hoare triple {18552#false} assume !!(~i~1 < 40); {18552#false} is VALID [2018-11-23 12:14:17,213 INFO L273 TraceCheckUtils]: 154: Hoare triple {18552#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {18552#false} is VALID [2018-11-23 12:14:17,214 INFO L273 TraceCheckUtils]: 155: Hoare triple {18552#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {18552#false} is VALID [2018-11-23 12:14:17,214 INFO L273 TraceCheckUtils]: 156: Hoare triple {18552#false} assume !!(~i~1 < 40); {18552#false} is VALID [2018-11-23 12:14:17,214 INFO L273 TraceCheckUtils]: 157: Hoare triple {18552#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {18552#false} is VALID [2018-11-23 12:14:17,214 INFO L273 TraceCheckUtils]: 158: Hoare triple {18552#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {18552#false} is VALID [2018-11-23 12:14:17,214 INFO L273 TraceCheckUtils]: 159: Hoare triple {18552#false} assume !!(~i~1 < 40); {18552#false} is VALID [2018-11-23 12:14:17,214 INFO L273 TraceCheckUtils]: 160: Hoare triple {18552#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {18552#false} is VALID [2018-11-23 12:14:17,214 INFO L273 TraceCheckUtils]: 161: Hoare triple {18552#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {18552#false} is VALID [2018-11-23 12:14:17,214 INFO L273 TraceCheckUtils]: 162: Hoare triple {18552#false} assume !!(~i~1 < 40); {18552#false} is VALID [2018-11-23 12:14:17,214 INFO L273 TraceCheckUtils]: 163: Hoare triple {18552#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {18552#false} is VALID [2018-11-23 12:14:17,215 INFO L273 TraceCheckUtils]: 164: Hoare triple {18552#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {18552#false} is VALID [2018-11-23 12:14:17,215 INFO L273 TraceCheckUtils]: 165: Hoare triple {18552#false} assume !(~i~1 < 40); {18552#false} is VALID [2018-11-23 12:14:17,215 INFO L273 TraceCheckUtils]: 166: Hoare triple {18552#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {18552#false} is VALID [2018-11-23 12:14:17,215 INFO L273 TraceCheckUtils]: 167: Hoare triple {18552#false} assume true; {18552#false} is VALID [2018-11-23 12:14:17,215 INFO L268 TraceCheckUtils]: 168: Hoare quadruple {18552#false} {18552#false} #88#return; {18552#false} is VALID [2018-11-23 12:14:17,215 INFO L273 TraceCheckUtils]: 169: Hoare triple {18552#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {18552#false} is VALID [2018-11-23 12:14:17,215 INFO L273 TraceCheckUtils]: 170: Hoare triple {18552#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {18552#false} is VALID [2018-11-23 12:14:17,215 INFO L273 TraceCheckUtils]: 171: Hoare triple {18552#false} assume !false; {18552#false} is VALID [2018-11-23 12:14:17,226 INFO L134 CoverageAnalysis]: Checked inductivity of 1868 backedges. 780 proven. 49 refuted. 0 times theorem prover too weak. 1039 trivial. 0 not checked. [2018-11-23 12:14:17,246 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:14:17,246 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [10] total 10 [2018-11-23 12:14:17,246 INFO L78 Accepts]: Start accepts. Automaton has 10 states. Word has length 172 [2018-11-23 12:14:17,247 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:14:17,247 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states. [2018-11-23 12:14:17,296 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 57 edges. 57 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:14:17,296 INFO L459 AbstractCegarLoop]: Interpolant automaton has 10 states [2018-11-23 12:14:17,296 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2018-11-23 12:14:17,297 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=45, Invalid=45, Unknown=0, NotChecked=0, Total=90 [2018-11-23 12:14:17,297 INFO L87 Difference]: Start difference. First operand 97 states and 108 transitions. Second operand 10 states. [2018-11-23 12:14:17,758 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:17,758 INFO L93 Difference]: Finished difference Result 144 states and 163 transitions. [2018-11-23 12:14:17,758 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2018-11-23 12:14:17,758 INFO L78 Accepts]: Start accepts. Automaton has 10 states. Word has length 172 [2018-11-23 12:14:17,759 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:14:17,759 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2018-11-23 12:14:17,760 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 70 transitions. [2018-11-23 12:14:17,760 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2018-11-23 12:14:17,761 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 70 transitions. [2018-11-23 12:14:17,761 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 70 transitions. [2018-11-23 12:14:17,825 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 70 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:14:17,827 INFO L225 Difference]: With dead ends: 144 [2018-11-23 12:14:17,828 INFO L226 Difference]: Without dead ends: 100 [2018-11-23 12:14:17,828 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 171 GetRequests, 163 SyntacticMatches, 0 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=45, Invalid=45, Unknown=0, NotChecked=0, Total=90 [2018-11-23 12:14:17,828 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 100 states. [2018-11-23 12:14:17,868 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 100 to 99. [2018-11-23 12:14:17,868 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:14:17,868 INFO L82 GeneralOperation]: Start isEquivalent. First operand 100 states. Second operand 99 states. [2018-11-23 12:14:17,868 INFO L74 IsIncluded]: Start isIncluded. First operand 100 states. Second operand 99 states. [2018-11-23 12:14:17,869 INFO L87 Difference]: Start difference. First operand 100 states. Second operand 99 states. [2018-11-23 12:14:17,870 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:17,871 INFO L93 Difference]: Finished difference Result 100 states and 111 transitions. [2018-11-23 12:14:17,871 INFO L276 IsEmpty]: Start isEmpty. Operand 100 states and 111 transitions. [2018-11-23 12:14:17,871 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:14:17,871 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:14:17,871 INFO L74 IsIncluded]: Start isIncluded. First operand 99 states. Second operand 100 states. [2018-11-23 12:14:17,871 INFO L87 Difference]: Start difference. First operand 99 states. Second operand 100 states. [2018-11-23 12:14:17,873 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:17,873 INFO L93 Difference]: Finished difference Result 100 states and 111 transitions. [2018-11-23 12:14:17,873 INFO L276 IsEmpty]: Start isEmpty. Operand 100 states and 111 transitions. [2018-11-23 12:14:17,874 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:14:17,874 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:14:17,874 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:14:17,874 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:14:17,874 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 99 states. [2018-11-23 12:14:17,876 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 99 states to 99 states and 110 transitions. [2018-11-23 12:14:17,876 INFO L78 Accepts]: Start accepts. Automaton has 99 states and 110 transitions. Word has length 172 [2018-11-23 12:14:17,876 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:14:17,876 INFO L480 AbstractCegarLoop]: Abstraction has 99 states and 110 transitions. [2018-11-23 12:14:17,876 INFO L481 AbstractCegarLoop]: Interpolant automaton has 10 states. [2018-11-23 12:14:17,876 INFO L276 IsEmpty]: Start isEmpty. Operand 99 states and 110 transitions. [2018-11-23 12:14:17,877 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 175 [2018-11-23 12:14:17,877 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:14:17,878 INFO L402 BasicCegarLoop]: trace histogram [33, 33, 18, 15, 11, 11, 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, 1, 1, 1, 1, 1] [2018-11-23 12:14:17,878 INFO L423 AbstractCegarLoop]: === Iteration 30 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:14:17,878 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:14:17,878 INFO L82 PathProgramCache]: Analyzing trace with hash 711340202, now seen corresponding path program 25 times [2018-11-23 12:14:17,878 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:14:17,879 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:14:17,879 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:14:17,879 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:14:17,879 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:14:17,890 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:14:17,890 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:14:17,890 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 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 31 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:14:17,910 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:14:17,972 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:14:18,019 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:14:18,021 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:14:19,650 INFO L256 TraceCheckUtils]: 0: Hoare triple {19619#true} call ULTIMATE.init(); {19619#true} is VALID [2018-11-23 12:14:19,650 INFO L273 TraceCheckUtils]: 1: Hoare triple {19619#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {19619#true} is VALID [2018-11-23 12:14:19,650 INFO L273 TraceCheckUtils]: 2: Hoare triple {19619#true} assume true; {19619#true} is VALID [2018-11-23 12:14:19,650 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {19619#true} {19619#true} #78#return; {19619#true} is VALID [2018-11-23 12:14:19,651 INFO L256 TraceCheckUtils]: 4: Hoare triple {19619#true} call #t~ret12 := main(); {19619#true} is VALID [2018-11-23 12:14:19,651 INFO L273 TraceCheckUtils]: 5: Hoare triple {19619#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {19619#true} is VALID [2018-11-23 12:14:19,651 INFO L256 TraceCheckUtils]: 6: Hoare triple {19619#true} call init_nondet(~#x~0.base, ~#x~0.offset); {19619#true} is VALID [2018-11-23 12:14:19,652 INFO L273 TraceCheckUtils]: 7: Hoare triple {19619#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {19645#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:14:19,652 INFO L273 TraceCheckUtils]: 8: Hoare triple {19645#(<= init_nondet_~i~0 0)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {19645#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:14:19,654 INFO L273 TraceCheckUtils]: 9: Hoare triple {19645#(<= init_nondet_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19652#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:14:19,654 INFO L273 TraceCheckUtils]: 10: Hoare triple {19652#(<= init_nondet_~i~0 1)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {19652#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:14:19,656 INFO L273 TraceCheckUtils]: 11: Hoare triple {19652#(<= init_nondet_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19659#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:14:19,656 INFO L273 TraceCheckUtils]: 12: Hoare triple {19659#(<= init_nondet_~i~0 2)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {19659#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:14:19,658 INFO L273 TraceCheckUtils]: 13: Hoare triple {19659#(<= init_nondet_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19666#(<= init_nondet_~i~0 3)} is VALID [2018-11-23 12:14:19,658 INFO L273 TraceCheckUtils]: 14: Hoare triple {19666#(<= init_nondet_~i~0 3)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {19666#(<= init_nondet_~i~0 3)} is VALID [2018-11-23 12:14:19,660 INFO L273 TraceCheckUtils]: 15: Hoare triple {19666#(<= init_nondet_~i~0 3)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19673#(<= init_nondet_~i~0 4)} is VALID [2018-11-23 12:14:19,660 INFO L273 TraceCheckUtils]: 16: Hoare triple {19673#(<= init_nondet_~i~0 4)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {19673#(<= init_nondet_~i~0 4)} is VALID [2018-11-23 12:14:19,660 INFO L273 TraceCheckUtils]: 17: Hoare triple {19673#(<= init_nondet_~i~0 4)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19680#(<= init_nondet_~i~0 5)} is VALID [2018-11-23 12:14:19,662 INFO L273 TraceCheckUtils]: 18: Hoare triple {19680#(<= init_nondet_~i~0 5)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {19680#(<= init_nondet_~i~0 5)} is VALID [2018-11-23 12:14:19,662 INFO L273 TraceCheckUtils]: 19: Hoare triple {19680#(<= init_nondet_~i~0 5)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19687#(<= init_nondet_~i~0 6)} is VALID [2018-11-23 12:14:19,664 INFO L273 TraceCheckUtils]: 20: Hoare triple {19687#(<= init_nondet_~i~0 6)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {19687#(<= init_nondet_~i~0 6)} is VALID [2018-11-23 12:14:19,664 INFO L273 TraceCheckUtils]: 21: Hoare triple {19687#(<= init_nondet_~i~0 6)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19694#(<= init_nondet_~i~0 7)} is VALID [2018-11-23 12:14:19,666 INFO L273 TraceCheckUtils]: 22: Hoare triple {19694#(<= init_nondet_~i~0 7)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {19694#(<= init_nondet_~i~0 7)} is VALID [2018-11-23 12:14:19,666 INFO L273 TraceCheckUtils]: 23: Hoare triple {19694#(<= init_nondet_~i~0 7)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19701#(<= init_nondet_~i~0 8)} is VALID [2018-11-23 12:14:19,668 INFO L273 TraceCheckUtils]: 24: Hoare triple {19701#(<= init_nondet_~i~0 8)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {19701#(<= init_nondet_~i~0 8)} is VALID [2018-11-23 12:14:19,668 INFO L273 TraceCheckUtils]: 25: Hoare triple {19701#(<= init_nondet_~i~0 8)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19708#(<= init_nondet_~i~0 9)} is VALID [2018-11-23 12:14:19,670 INFO L273 TraceCheckUtils]: 26: Hoare triple {19708#(<= init_nondet_~i~0 9)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {19708#(<= init_nondet_~i~0 9)} is VALID [2018-11-23 12:14:19,670 INFO L273 TraceCheckUtils]: 27: Hoare triple {19708#(<= init_nondet_~i~0 9)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19715#(<= init_nondet_~i~0 10)} is VALID [2018-11-23 12:14:19,672 INFO L273 TraceCheckUtils]: 28: Hoare triple {19715#(<= init_nondet_~i~0 10)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {19715#(<= init_nondet_~i~0 10)} is VALID [2018-11-23 12:14:19,672 INFO L273 TraceCheckUtils]: 29: Hoare triple {19715#(<= init_nondet_~i~0 10)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19722#(<= init_nondet_~i~0 11)} is VALID [2018-11-23 12:14:19,674 INFO L273 TraceCheckUtils]: 30: Hoare triple {19722#(<= init_nondet_~i~0 11)} assume !(~i~0 < 40); {19620#false} is VALID [2018-11-23 12:14:19,674 INFO L273 TraceCheckUtils]: 31: Hoare triple {19620#false} assume true; {19620#false} is VALID [2018-11-23 12:14:19,674 INFO L268 TraceCheckUtils]: 32: Hoare quadruple {19620#false} {19619#true} #82#return; {19620#false} is VALID [2018-11-23 12:14:19,674 INFO L273 TraceCheckUtils]: 33: Hoare triple {19620#false} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {19620#false} is VALID [2018-11-23 12:14:19,674 INFO L256 TraceCheckUtils]: 34: Hoare triple {19620#false} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {19620#false} is VALID [2018-11-23 12:14:19,674 INFO L273 TraceCheckUtils]: 35: Hoare triple {19620#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {19620#false} is VALID [2018-11-23 12:14:19,674 INFO L273 TraceCheckUtils]: 36: Hoare triple {19620#false} assume !!(~i~1 < 40); {19620#false} is VALID [2018-11-23 12:14:19,675 INFO L273 TraceCheckUtils]: 37: Hoare triple {19620#false} assume !(~i~1 > 20); {19620#false} is VALID [2018-11-23 12:14:19,675 INFO L273 TraceCheckUtils]: 38: Hoare triple {19620#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {19620#false} is VALID [2018-11-23 12:14:19,675 INFO L273 TraceCheckUtils]: 39: Hoare triple {19620#false} assume !!(~i~1 < 40); {19620#false} is VALID [2018-11-23 12:14:19,675 INFO L273 TraceCheckUtils]: 40: Hoare triple {19620#false} assume !(~i~1 > 20); {19620#false} is VALID [2018-11-23 12:14:19,675 INFO L273 TraceCheckUtils]: 41: Hoare triple {19620#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {19620#false} is VALID [2018-11-23 12:14:19,675 INFO L273 TraceCheckUtils]: 42: Hoare triple {19620#false} assume !!(~i~1 < 40); {19620#false} is VALID [2018-11-23 12:14:19,675 INFO L273 TraceCheckUtils]: 43: Hoare triple {19620#false} assume !(~i~1 > 20); {19620#false} is VALID [2018-11-23 12:14:19,675 INFO L273 TraceCheckUtils]: 44: Hoare triple {19620#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {19620#false} is VALID [2018-11-23 12:14:19,675 INFO L273 TraceCheckUtils]: 45: Hoare triple {19620#false} assume !!(~i~1 < 40); {19620#false} is VALID [2018-11-23 12:14:19,676 INFO L273 TraceCheckUtils]: 46: Hoare triple {19620#false} assume !(~i~1 > 20); {19620#false} is VALID [2018-11-23 12:14:19,676 INFO L273 TraceCheckUtils]: 47: Hoare triple {19620#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {19620#false} is VALID [2018-11-23 12:14:19,676 INFO L273 TraceCheckUtils]: 48: Hoare triple {19620#false} assume !!(~i~1 < 40); {19620#false} is VALID [2018-11-23 12:14:19,676 INFO L273 TraceCheckUtils]: 49: Hoare triple {19620#false} assume !(~i~1 > 20); {19620#false} is VALID [2018-11-23 12:14:19,676 INFO L273 TraceCheckUtils]: 50: Hoare triple {19620#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {19620#false} is VALID [2018-11-23 12:14:19,676 INFO L273 TraceCheckUtils]: 51: Hoare triple {19620#false} assume !!(~i~1 < 40); {19620#false} is VALID [2018-11-23 12:14:19,676 INFO L273 TraceCheckUtils]: 52: Hoare triple {19620#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {19620#false} is VALID [2018-11-23 12:14:19,676 INFO L273 TraceCheckUtils]: 53: Hoare triple {19620#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {19620#false} is VALID [2018-11-23 12:14:19,677 INFO L273 TraceCheckUtils]: 54: Hoare triple {19620#false} assume !!(~i~1 < 40); {19620#false} is VALID [2018-11-23 12:14:19,677 INFO L273 TraceCheckUtils]: 55: Hoare triple {19620#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {19620#false} is VALID [2018-11-23 12:14:19,677 INFO L273 TraceCheckUtils]: 56: Hoare triple {19620#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {19620#false} is VALID [2018-11-23 12:14:19,677 INFO L273 TraceCheckUtils]: 57: Hoare triple {19620#false} assume !!(~i~1 < 40); {19620#false} is VALID [2018-11-23 12:14:19,677 INFO L273 TraceCheckUtils]: 58: Hoare triple {19620#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {19620#false} is VALID [2018-11-23 12:14:19,677 INFO L273 TraceCheckUtils]: 59: Hoare triple {19620#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {19620#false} is VALID [2018-11-23 12:14:19,677 INFO L273 TraceCheckUtils]: 60: Hoare triple {19620#false} assume !!(~i~1 < 40); {19620#false} is VALID [2018-11-23 12:14:19,678 INFO L273 TraceCheckUtils]: 61: Hoare triple {19620#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {19620#false} is VALID [2018-11-23 12:14:19,678 INFO L273 TraceCheckUtils]: 62: Hoare triple {19620#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {19620#false} is VALID [2018-11-23 12:14:19,678 INFO L273 TraceCheckUtils]: 63: Hoare triple {19620#false} assume !!(~i~1 < 40); {19620#false} is VALID [2018-11-23 12:14:19,678 INFO L273 TraceCheckUtils]: 64: Hoare triple {19620#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {19620#false} is VALID [2018-11-23 12:14:19,678 INFO L273 TraceCheckUtils]: 65: Hoare triple {19620#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {19620#false} is VALID [2018-11-23 12:14:19,678 INFO L273 TraceCheckUtils]: 66: Hoare triple {19620#false} assume !!(~i~1 < 40); {19620#false} is VALID [2018-11-23 12:14:19,679 INFO L273 TraceCheckUtils]: 67: Hoare triple {19620#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {19620#false} is VALID [2018-11-23 12:14:19,679 INFO L273 TraceCheckUtils]: 68: Hoare triple {19620#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {19620#false} is VALID [2018-11-23 12:14:19,679 INFO L273 TraceCheckUtils]: 69: Hoare triple {19620#false} assume !(~i~1 < 40); {19620#false} is VALID [2018-11-23 12:14:19,679 INFO L273 TraceCheckUtils]: 70: Hoare triple {19620#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {19620#false} is VALID [2018-11-23 12:14:19,679 INFO L273 TraceCheckUtils]: 71: Hoare triple {19620#false} assume true; {19620#false} is VALID [2018-11-23 12:14:19,679 INFO L268 TraceCheckUtils]: 72: Hoare quadruple {19620#false} {19620#false} #84#return; {19620#false} is VALID [2018-11-23 12:14:19,679 INFO L273 TraceCheckUtils]: 73: Hoare triple {19620#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {19620#false} is VALID [2018-11-23 12:14:19,680 INFO L256 TraceCheckUtils]: 74: Hoare triple {19620#false} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {19620#false} is VALID [2018-11-23 12:14:19,680 INFO L273 TraceCheckUtils]: 75: Hoare triple {19620#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {19620#false} is VALID [2018-11-23 12:14:19,680 INFO L273 TraceCheckUtils]: 76: Hoare triple {19620#false} assume !!(~i~1 < 40); {19620#false} is VALID [2018-11-23 12:14:19,680 INFO L273 TraceCheckUtils]: 77: Hoare triple {19620#false} assume !(~i~1 > 20); {19620#false} is VALID [2018-11-23 12:14:19,680 INFO L273 TraceCheckUtils]: 78: Hoare triple {19620#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {19620#false} is VALID [2018-11-23 12:14:19,680 INFO L273 TraceCheckUtils]: 79: Hoare triple {19620#false} assume !!(~i~1 < 40); {19620#false} is VALID [2018-11-23 12:14:19,680 INFO L273 TraceCheckUtils]: 80: Hoare triple {19620#false} assume !(~i~1 > 20); {19620#false} is VALID [2018-11-23 12:14:19,680 INFO L273 TraceCheckUtils]: 81: Hoare triple {19620#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {19620#false} is VALID [2018-11-23 12:14:19,680 INFO L273 TraceCheckUtils]: 82: Hoare triple {19620#false} assume !!(~i~1 < 40); {19620#false} is VALID [2018-11-23 12:14:19,681 INFO L273 TraceCheckUtils]: 83: Hoare triple {19620#false} assume !(~i~1 > 20); {19620#false} is VALID [2018-11-23 12:14:19,681 INFO L273 TraceCheckUtils]: 84: Hoare triple {19620#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {19620#false} is VALID [2018-11-23 12:14:19,681 INFO L273 TraceCheckUtils]: 85: Hoare triple {19620#false} assume !!(~i~1 < 40); {19620#false} is VALID [2018-11-23 12:14:19,681 INFO L273 TraceCheckUtils]: 86: Hoare triple {19620#false} assume !(~i~1 > 20); {19620#false} is VALID [2018-11-23 12:14:19,681 INFO L273 TraceCheckUtils]: 87: Hoare triple {19620#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {19620#false} is VALID [2018-11-23 12:14:19,681 INFO L273 TraceCheckUtils]: 88: Hoare triple {19620#false} assume !!(~i~1 < 40); {19620#false} is VALID [2018-11-23 12:14:19,681 INFO L273 TraceCheckUtils]: 89: Hoare triple {19620#false} assume !(~i~1 > 20); {19620#false} is VALID [2018-11-23 12:14:19,681 INFO L273 TraceCheckUtils]: 90: Hoare triple {19620#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {19620#false} is VALID [2018-11-23 12:14:19,681 INFO L273 TraceCheckUtils]: 91: Hoare triple {19620#false} assume !!(~i~1 < 40); {19620#false} is VALID [2018-11-23 12:14:19,682 INFO L273 TraceCheckUtils]: 92: Hoare triple {19620#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {19620#false} is VALID [2018-11-23 12:14:19,682 INFO L273 TraceCheckUtils]: 93: Hoare triple {19620#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {19620#false} is VALID [2018-11-23 12:14:19,682 INFO L273 TraceCheckUtils]: 94: Hoare triple {19620#false} assume !!(~i~1 < 40); {19620#false} is VALID [2018-11-23 12:14:19,682 INFO L273 TraceCheckUtils]: 95: Hoare triple {19620#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {19620#false} is VALID [2018-11-23 12:14:19,682 INFO L273 TraceCheckUtils]: 96: Hoare triple {19620#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {19620#false} is VALID [2018-11-23 12:14:19,682 INFO L273 TraceCheckUtils]: 97: Hoare triple {19620#false} assume !!(~i~1 < 40); {19620#false} is VALID [2018-11-23 12:14:19,682 INFO L273 TraceCheckUtils]: 98: Hoare triple {19620#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {19620#false} is VALID [2018-11-23 12:14:19,682 INFO L273 TraceCheckUtils]: 99: Hoare triple {19620#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {19620#false} is VALID [2018-11-23 12:14:19,682 INFO L273 TraceCheckUtils]: 100: Hoare triple {19620#false} assume !!(~i~1 < 40); {19620#false} is VALID [2018-11-23 12:14:19,683 INFO L273 TraceCheckUtils]: 101: Hoare triple {19620#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {19620#false} is VALID [2018-11-23 12:14:19,683 INFO L273 TraceCheckUtils]: 102: Hoare triple {19620#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {19620#false} is VALID [2018-11-23 12:14:19,683 INFO L273 TraceCheckUtils]: 103: Hoare triple {19620#false} assume !!(~i~1 < 40); {19620#false} is VALID [2018-11-23 12:14:19,683 INFO L273 TraceCheckUtils]: 104: Hoare triple {19620#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {19620#false} is VALID [2018-11-23 12:14:19,683 INFO L273 TraceCheckUtils]: 105: Hoare triple {19620#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {19620#false} is VALID [2018-11-23 12:14:19,683 INFO L273 TraceCheckUtils]: 106: Hoare triple {19620#false} assume !!(~i~1 < 40); {19620#false} is VALID [2018-11-23 12:14:19,683 INFO L273 TraceCheckUtils]: 107: Hoare triple {19620#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {19620#false} is VALID [2018-11-23 12:14:19,683 INFO L273 TraceCheckUtils]: 108: Hoare triple {19620#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {19620#false} is VALID [2018-11-23 12:14:19,683 INFO L273 TraceCheckUtils]: 109: Hoare triple {19620#false} assume !(~i~1 < 40); {19620#false} is VALID [2018-11-23 12:14:19,684 INFO L273 TraceCheckUtils]: 110: Hoare triple {19620#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {19620#false} is VALID [2018-11-23 12:14:19,684 INFO L273 TraceCheckUtils]: 111: Hoare triple {19620#false} assume true; {19620#false} is VALID [2018-11-23 12:14:19,684 INFO L268 TraceCheckUtils]: 112: Hoare quadruple {19620#false} {19620#false} #86#return; {19620#false} is VALID [2018-11-23 12:14:19,684 INFO L273 TraceCheckUtils]: 113: Hoare triple {19620#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {19620#false} is VALID [2018-11-23 12:14:19,684 INFO L273 TraceCheckUtils]: 114: Hoare triple {19620#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {19620#false} is VALID [2018-11-23 12:14:19,684 INFO L273 TraceCheckUtils]: 115: Hoare triple {19620#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {19620#false} is VALID [2018-11-23 12:14:19,684 INFO L273 TraceCheckUtils]: 116: Hoare triple {19620#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {19620#false} is VALID [2018-11-23 12:14:19,684 INFO L273 TraceCheckUtils]: 117: Hoare triple {19620#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {19620#false} is VALID [2018-11-23 12:14:19,684 INFO L273 TraceCheckUtils]: 118: Hoare triple {19620#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {19620#false} is VALID [2018-11-23 12:14:19,685 INFO L273 TraceCheckUtils]: 119: Hoare triple {19620#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {19620#false} is VALID [2018-11-23 12:14:19,685 INFO L273 TraceCheckUtils]: 120: Hoare triple {19620#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {19620#false} is VALID [2018-11-23 12:14:19,685 INFO L273 TraceCheckUtils]: 121: Hoare triple {19620#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {19620#false} is VALID [2018-11-23 12:14:19,685 INFO L273 TraceCheckUtils]: 122: Hoare triple {19620#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {19620#false} is VALID [2018-11-23 12:14:19,685 INFO L273 TraceCheckUtils]: 123: Hoare triple {19620#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {19620#false} is VALID [2018-11-23 12:14:19,685 INFO L273 TraceCheckUtils]: 124: Hoare triple {19620#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {19620#false} is VALID [2018-11-23 12:14:19,685 INFO L273 TraceCheckUtils]: 125: Hoare triple {19620#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {19620#false} is VALID [2018-11-23 12:14:19,685 INFO L273 TraceCheckUtils]: 126: Hoare triple {19620#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {19620#false} is VALID [2018-11-23 12:14:19,685 INFO L273 TraceCheckUtils]: 127: Hoare triple {19620#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {19620#false} is VALID [2018-11-23 12:14:19,686 INFO L273 TraceCheckUtils]: 128: Hoare triple {19620#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {19620#false} is VALID [2018-11-23 12:14:19,686 INFO L273 TraceCheckUtils]: 129: Hoare triple {19620#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {19620#false} is VALID [2018-11-23 12:14:19,686 INFO L273 TraceCheckUtils]: 130: Hoare triple {19620#false} assume !(~i~2 < 39); {19620#false} is VALID [2018-11-23 12:14:19,686 INFO L273 TraceCheckUtils]: 131: Hoare triple {19620#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {19620#false} is VALID [2018-11-23 12:14:19,686 INFO L256 TraceCheckUtils]: 132: Hoare triple {19620#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {19620#false} is VALID [2018-11-23 12:14:19,686 INFO L273 TraceCheckUtils]: 133: Hoare triple {19620#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {19620#false} is VALID [2018-11-23 12:14:19,686 INFO L273 TraceCheckUtils]: 134: Hoare triple {19620#false} assume !!(~i~1 < 40); {19620#false} is VALID [2018-11-23 12:14:19,686 INFO L273 TraceCheckUtils]: 135: Hoare triple {19620#false} assume !(~i~1 > 20); {19620#false} is VALID [2018-11-23 12:14:19,687 INFO L273 TraceCheckUtils]: 136: Hoare triple {19620#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {19620#false} is VALID [2018-11-23 12:14:19,687 INFO L273 TraceCheckUtils]: 137: Hoare triple {19620#false} assume !!(~i~1 < 40); {19620#false} is VALID [2018-11-23 12:14:19,687 INFO L273 TraceCheckUtils]: 138: Hoare triple {19620#false} assume !(~i~1 > 20); {19620#false} is VALID [2018-11-23 12:14:19,687 INFO L273 TraceCheckUtils]: 139: Hoare triple {19620#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {19620#false} is VALID [2018-11-23 12:14:19,687 INFO L273 TraceCheckUtils]: 140: Hoare triple {19620#false} assume !!(~i~1 < 40); {19620#false} is VALID [2018-11-23 12:14:19,687 INFO L273 TraceCheckUtils]: 141: Hoare triple {19620#false} assume !(~i~1 > 20); {19620#false} is VALID [2018-11-23 12:14:19,688 INFO L273 TraceCheckUtils]: 142: Hoare triple {19620#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {19620#false} is VALID [2018-11-23 12:14:19,688 INFO L273 TraceCheckUtils]: 143: Hoare triple {19620#false} assume !!(~i~1 < 40); {19620#false} is VALID [2018-11-23 12:14:19,688 INFO L273 TraceCheckUtils]: 144: Hoare triple {19620#false} assume !(~i~1 > 20); {19620#false} is VALID [2018-11-23 12:14:19,688 INFO L273 TraceCheckUtils]: 145: Hoare triple {19620#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {19620#false} is VALID [2018-11-23 12:14:19,688 INFO L273 TraceCheckUtils]: 146: Hoare triple {19620#false} assume !!(~i~1 < 40); {19620#false} is VALID [2018-11-23 12:14:19,688 INFO L273 TraceCheckUtils]: 147: Hoare triple {19620#false} assume !(~i~1 > 20); {19620#false} is VALID [2018-11-23 12:14:19,689 INFO L273 TraceCheckUtils]: 148: Hoare triple {19620#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {19620#false} is VALID [2018-11-23 12:14:19,689 INFO L273 TraceCheckUtils]: 149: Hoare triple {19620#false} assume !!(~i~1 < 40); {19620#false} is VALID [2018-11-23 12:14:19,689 INFO L273 TraceCheckUtils]: 150: Hoare triple {19620#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {19620#false} is VALID [2018-11-23 12:14:19,689 INFO L273 TraceCheckUtils]: 151: Hoare triple {19620#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {19620#false} is VALID [2018-11-23 12:14:19,689 INFO L273 TraceCheckUtils]: 152: Hoare triple {19620#false} assume !!(~i~1 < 40); {19620#false} is VALID [2018-11-23 12:14:19,689 INFO L273 TraceCheckUtils]: 153: Hoare triple {19620#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {19620#false} is VALID [2018-11-23 12:14:19,689 INFO L273 TraceCheckUtils]: 154: Hoare triple {19620#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {19620#false} is VALID [2018-11-23 12:14:19,690 INFO L273 TraceCheckUtils]: 155: Hoare triple {19620#false} assume !!(~i~1 < 40); {19620#false} is VALID [2018-11-23 12:14:19,690 INFO L273 TraceCheckUtils]: 156: Hoare triple {19620#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {19620#false} is VALID [2018-11-23 12:14:19,690 INFO L273 TraceCheckUtils]: 157: Hoare triple {19620#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {19620#false} is VALID [2018-11-23 12:14:19,690 INFO L273 TraceCheckUtils]: 158: Hoare triple {19620#false} assume !!(~i~1 < 40); {19620#false} is VALID [2018-11-23 12:14:19,690 INFO L273 TraceCheckUtils]: 159: Hoare triple {19620#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {19620#false} is VALID [2018-11-23 12:14:19,690 INFO L273 TraceCheckUtils]: 160: Hoare triple {19620#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {19620#false} is VALID [2018-11-23 12:14:19,691 INFO L273 TraceCheckUtils]: 161: Hoare triple {19620#false} assume !!(~i~1 < 40); {19620#false} is VALID [2018-11-23 12:14:19,691 INFO L273 TraceCheckUtils]: 162: Hoare triple {19620#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {19620#false} is VALID [2018-11-23 12:14:19,691 INFO L273 TraceCheckUtils]: 163: Hoare triple {19620#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {19620#false} is VALID [2018-11-23 12:14:19,691 INFO L273 TraceCheckUtils]: 164: Hoare triple {19620#false} assume !!(~i~1 < 40); {19620#false} is VALID [2018-11-23 12:14:19,691 INFO L273 TraceCheckUtils]: 165: Hoare triple {19620#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {19620#false} is VALID [2018-11-23 12:14:19,691 INFO L273 TraceCheckUtils]: 166: Hoare triple {19620#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {19620#false} is VALID [2018-11-23 12:14:19,692 INFO L273 TraceCheckUtils]: 167: Hoare triple {19620#false} assume !(~i~1 < 40); {19620#false} is VALID [2018-11-23 12:14:19,692 INFO L273 TraceCheckUtils]: 168: Hoare triple {19620#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {19620#false} is VALID [2018-11-23 12:14:19,692 INFO L273 TraceCheckUtils]: 169: Hoare triple {19620#false} assume true; {19620#false} is VALID [2018-11-23 12:14:19,692 INFO L268 TraceCheckUtils]: 170: Hoare quadruple {19620#false} {19620#false} #88#return; {19620#false} is VALID [2018-11-23 12:14:19,692 INFO L273 TraceCheckUtils]: 171: Hoare triple {19620#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {19620#false} is VALID [2018-11-23 12:14:19,692 INFO L273 TraceCheckUtils]: 172: Hoare triple {19620#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {19620#false} is VALID [2018-11-23 12:14:19,692 INFO L273 TraceCheckUtils]: 173: Hoare triple {19620#false} assume !false; {19620#false} is VALID [2018-11-23 12:14:19,705 INFO L134 CoverageAnalysis]: Checked inductivity of 1883 backedges. 0 proven. 121 refuted. 0 times theorem prover too weak. 1762 trivial. 0 not checked. [2018-11-23 12:14:19,724 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:14:19,724 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [14] total 14 [2018-11-23 12:14:19,724 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 174 [2018-11-23 12:14:19,725 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:14:19,725 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states. [2018-11-23 12:14:19,788 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 57 edges. 57 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:14:19,788 INFO L459 AbstractCegarLoop]: Interpolant automaton has 14 states [2018-11-23 12:14:19,788 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2018-11-23 12:14:19,788 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=91, Invalid=91, Unknown=0, NotChecked=0, Total=182 [2018-11-23 12:14:19,789 INFO L87 Difference]: Start difference. First operand 99 states and 110 transitions. Second operand 14 states. [2018-11-23 12:14:20,016 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:20,017 INFO L93 Difference]: Finished difference Result 170 states and 192 transitions. [2018-11-23 12:14:20,017 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2018-11-23 12:14:20,017 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 174 [2018-11-23 12:14:20,017 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:14:20,017 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2018-11-23 12:14:20,018 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 90 transitions. [2018-11-23 12:14:20,018 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2018-11-23 12:14:20,019 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 90 transitions. [2018-11-23 12:14:20,019 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states and 90 transitions. [2018-11-23 12:14:20,109 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-23 12:14:20,112 INFO L225 Difference]: With dead ends: 170 [2018-11-23 12:14:20,112 INFO L226 Difference]: Without dead ends: 102 [2018-11-23 12:14:20,113 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 173 GetRequests, 161 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=91, Invalid=91, Unknown=0, NotChecked=0, Total=182 [2018-11-23 12:14:20,113 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 102 states. [2018-11-23 12:14:20,159 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 102 to 101. [2018-11-23 12:14:20,159 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:14:20,159 INFO L82 GeneralOperation]: Start isEquivalent. First operand 102 states. Second operand 101 states. [2018-11-23 12:14:20,159 INFO L74 IsIncluded]: Start isIncluded. First operand 102 states. Second operand 101 states. [2018-11-23 12:14:20,160 INFO L87 Difference]: Start difference. First operand 102 states. Second operand 101 states. [2018-11-23 12:14:20,161 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:20,162 INFO L93 Difference]: Finished difference Result 102 states and 113 transitions. [2018-11-23 12:14:20,162 INFO L276 IsEmpty]: Start isEmpty. Operand 102 states and 113 transitions. [2018-11-23 12:14:20,162 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:14:20,162 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:14:20,162 INFO L74 IsIncluded]: Start isIncluded. First operand 101 states. Second operand 102 states. [2018-11-23 12:14:20,162 INFO L87 Difference]: Start difference. First operand 101 states. Second operand 102 states. [2018-11-23 12:14:20,164 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:20,164 INFO L93 Difference]: Finished difference Result 102 states and 113 transitions. [2018-11-23 12:14:20,164 INFO L276 IsEmpty]: Start isEmpty. Operand 102 states and 113 transitions. [2018-11-23 12:14:20,165 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:14:20,165 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:14:20,165 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:14:20,165 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:14:20,165 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 101 states. [2018-11-23 12:14:20,166 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 101 states to 101 states and 112 transitions. [2018-11-23 12:14:20,167 INFO L78 Accepts]: Start accepts. Automaton has 101 states and 112 transitions. Word has length 174 [2018-11-23 12:14:20,167 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:14:20,167 INFO L480 AbstractCegarLoop]: Abstraction has 101 states and 112 transitions. [2018-11-23 12:14:20,167 INFO L481 AbstractCegarLoop]: Interpolant automaton has 14 states. [2018-11-23 12:14:20,167 INFO L276 IsEmpty]: Start isEmpty. Operand 101 states and 112 transitions. [2018-11-23 12:14:20,168 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 177 [2018-11-23 12:14:20,169 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:14:20,169 INFO L402 BasicCegarLoop]: trace histogram [33, 33, 18, 15, 12, 12, 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, 1, 1, 1, 1, 1] [2018-11-23 12:14:20,169 INFO L423 AbstractCegarLoop]: === Iteration 31 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:14:20,169 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:14:20,170 INFO L82 PathProgramCache]: Analyzing trace with hash 2027110124, now seen corresponding path program 26 times [2018-11-23 12:14:20,170 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:14:20,170 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:14:20,171 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:14:20,171 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:14:20,171 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:14:20,182 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:14:20,183 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:14:20,183 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 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 32 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:14:20,198 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-23 12:14:20,278 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-23 12:14:20,279 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:14:20,327 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:14:20,329 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:14:20,814 INFO L256 TraceCheckUtils]: 0: Hoare triple {20742#true} call ULTIMATE.init(); {20742#true} is VALID [2018-11-23 12:14:20,814 INFO L273 TraceCheckUtils]: 1: Hoare triple {20742#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {20742#true} is VALID [2018-11-23 12:14:20,814 INFO L273 TraceCheckUtils]: 2: Hoare triple {20742#true} assume true; {20742#true} is VALID [2018-11-23 12:14:20,814 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {20742#true} {20742#true} #78#return; {20742#true} is VALID [2018-11-23 12:14:20,815 INFO L256 TraceCheckUtils]: 4: Hoare triple {20742#true} call #t~ret12 := main(); {20742#true} is VALID [2018-11-23 12:14:20,815 INFO L273 TraceCheckUtils]: 5: Hoare triple {20742#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {20742#true} is VALID [2018-11-23 12:14:20,815 INFO L256 TraceCheckUtils]: 6: Hoare triple {20742#true} call init_nondet(~#x~0.base, ~#x~0.offset); {20742#true} is VALID [2018-11-23 12:14:20,816 INFO L273 TraceCheckUtils]: 7: Hoare triple {20742#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {20768#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:14:20,816 INFO L273 TraceCheckUtils]: 8: Hoare triple {20768#(<= init_nondet_~i~0 0)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {20768#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:14:20,817 INFO L273 TraceCheckUtils]: 9: Hoare triple {20768#(<= init_nondet_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20775#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:14:20,817 INFO L273 TraceCheckUtils]: 10: Hoare triple {20775#(<= init_nondet_~i~0 1)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {20775#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:14:20,818 INFO L273 TraceCheckUtils]: 11: Hoare triple {20775#(<= init_nondet_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20782#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:14:20,818 INFO L273 TraceCheckUtils]: 12: Hoare triple {20782#(<= init_nondet_~i~0 2)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {20782#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:14:20,818 INFO L273 TraceCheckUtils]: 13: Hoare triple {20782#(<= init_nondet_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20789#(<= init_nondet_~i~0 3)} is VALID [2018-11-23 12:14:20,819 INFO L273 TraceCheckUtils]: 14: Hoare triple {20789#(<= init_nondet_~i~0 3)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {20789#(<= init_nondet_~i~0 3)} is VALID [2018-11-23 12:14:20,820 INFO L273 TraceCheckUtils]: 15: Hoare triple {20789#(<= init_nondet_~i~0 3)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20796#(<= init_nondet_~i~0 4)} is VALID [2018-11-23 12:14:20,820 INFO L273 TraceCheckUtils]: 16: Hoare triple {20796#(<= init_nondet_~i~0 4)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {20796#(<= init_nondet_~i~0 4)} is VALID [2018-11-23 12:14:20,821 INFO L273 TraceCheckUtils]: 17: Hoare triple {20796#(<= init_nondet_~i~0 4)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20803#(<= init_nondet_~i~0 5)} is VALID [2018-11-23 12:14:20,821 INFO L273 TraceCheckUtils]: 18: Hoare triple {20803#(<= init_nondet_~i~0 5)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {20803#(<= init_nondet_~i~0 5)} is VALID [2018-11-23 12:14:20,822 INFO L273 TraceCheckUtils]: 19: Hoare triple {20803#(<= init_nondet_~i~0 5)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20810#(<= init_nondet_~i~0 6)} is VALID [2018-11-23 12:14:20,823 INFO L273 TraceCheckUtils]: 20: Hoare triple {20810#(<= init_nondet_~i~0 6)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {20810#(<= init_nondet_~i~0 6)} is VALID [2018-11-23 12:14:20,823 INFO L273 TraceCheckUtils]: 21: Hoare triple {20810#(<= init_nondet_~i~0 6)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20817#(<= init_nondet_~i~0 7)} is VALID [2018-11-23 12:14:20,824 INFO L273 TraceCheckUtils]: 22: Hoare triple {20817#(<= init_nondet_~i~0 7)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {20817#(<= init_nondet_~i~0 7)} is VALID [2018-11-23 12:14:20,824 INFO L273 TraceCheckUtils]: 23: Hoare triple {20817#(<= init_nondet_~i~0 7)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20824#(<= init_nondet_~i~0 8)} is VALID [2018-11-23 12:14:20,825 INFO L273 TraceCheckUtils]: 24: Hoare triple {20824#(<= init_nondet_~i~0 8)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {20824#(<= init_nondet_~i~0 8)} is VALID [2018-11-23 12:14:20,826 INFO L273 TraceCheckUtils]: 25: Hoare triple {20824#(<= init_nondet_~i~0 8)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20831#(<= init_nondet_~i~0 9)} is VALID [2018-11-23 12:14:20,826 INFO L273 TraceCheckUtils]: 26: Hoare triple {20831#(<= init_nondet_~i~0 9)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {20831#(<= init_nondet_~i~0 9)} is VALID [2018-11-23 12:14:20,827 INFO L273 TraceCheckUtils]: 27: Hoare triple {20831#(<= init_nondet_~i~0 9)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20838#(<= init_nondet_~i~0 10)} is VALID [2018-11-23 12:14:20,827 INFO L273 TraceCheckUtils]: 28: Hoare triple {20838#(<= init_nondet_~i~0 10)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {20838#(<= init_nondet_~i~0 10)} is VALID [2018-11-23 12:14:20,828 INFO L273 TraceCheckUtils]: 29: Hoare triple {20838#(<= init_nondet_~i~0 10)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20845#(<= init_nondet_~i~0 11)} is VALID [2018-11-23 12:14:20,829 INFO L273 TraceCheckUtils]: 30: Hoare triple {20845#(<= init_nondet_~i~0 11)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {20845#(<= init_nondet_~i~0 11)} is VALID [2018-11-23 12:14:20,829 INFO L273 TraceCheckUtils]: 31: Hoare triple {20845#(<= init_nondet_~i~0 11)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20852#(<= init_nondet_~i~0 12)} is VALID [2018-11-23 12:14:20,830 INFO L273 TraceCheckUtils]: 32: Hoare triple {20852#(<= init_nondet_~i~0 12)} assume !(~i~0 < 40); {20743#false} is VALID [2018-11-23 12:14:20,830 INFO L273 TraceCheckUtils]: 33: Hoare triple {20743#false} assume true; {20743#false} is VALID [2018-11-23 12:14:20,830 INFO L268 TraceCheckUtils]: 34: Hoare quadruple {20743#false} {20742#true} #82#return; {20743#false} is VALID [2018-11-23 12:14:20,831 INFO L273 TraceCheckUtils]: 35: Hoare triple {20743#false} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {20743#false} is VALID [2018-11-23 12:14:20,831 INFO L256 TraceCheckUtils]: 36: Hoare triple {20743#false} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {20743#false} is VALID [2018-11-23 12:14:20,831 INFO L273 TraceCheckUtils]: 37: Hoare triple {20743#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {20743#false} is VALID [2018-11-23 12:14:20,831 INFO L273 TraceCheckUtils]: 38: Hoare triple {20743#false} assume !!(~i~1 < 40); {20743#false} is VALID [2018-11-23 12:14:20,831 INFO L273 TraceCheckUtils]: 39: Hoare triple {20743#false} assume !(~i~1 > 20); {20743#false} is VALID [2018-11-23 12:14:20,832 INFO L273 TraceCheckUtils]: 40: Hoare triple {20743#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {20743#false} is VALID [2018-11-23 12:14:20,832 INFO L273 TraceCheckUtils]: 41: Hoare triple {20743#false} assume !!(~i~1 < 40); {20743#false} is VALID [2018-11-23 12:14:20,832 INFO L273 TraceCheckUtils]: 42: Hoare triple {20743#false} assume !(~i~1 > 20); {20743#false} is VALID [2018-11-23 12:14:20,832 INFO L273 TraceCheckUtils]: 43: Hoare triple {20743#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {20743#false} is VALID [2018-11-23 12:14:20,833 INFO L273 TraceCheckUtils]: 44: Hoare triple {20743#false} assume !!(~i~1 < 40); {20743#false} is VALID [2018-11-23 12:14:20,833 INFO L273 TraceCheckUtils]: 45: Hoare triple {20743#false} assume !(~i~1 > 20); {20743#false} is VALID [2018-11-23 12:14:20,833 INFO L273 TraceCheckUtils]: 46: Hoare triple {20743#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {20743#false} is VALID [2018-11-23 12:14:20,833 INFO L273 TraceCheckUtils]: 47: Hoare triple {20743#false} assume !!(~i~1 < 40); {20743#false} is VALID [2018-11-23 12:14:20,834 INFO L273 TraceCheckUtils]: 48: Hoare triple {20743#false} assume !(~i~1 > 20); {20743#false} is VALID [2018-11-23 12:14:20,834 INFO L273 TraceCheckUtils]: 49: Hoare triple {20743#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {20743#false} is VALID [2018-11-23 12:14:20,834 INFO L273 TraceCheckUtils]: 50: Hoare triple {20743#false} assume !!(~i~1 < 40); {20743#false} is VALID [2018-11-23 12:14:20,834 INFO L273 TraceCheckUtils]: 51: Hoare triple {20743#false} assume !(~i~1 > 20); {20743#false} is VALID [2018-11-23 12:14:20,835 INFO L273 TraceCheckUtils]: 52: Hoare triple {20743#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {20743#false} is VALID [2018-11-23 12:14:20,835 INFO L273 TraceCheckUtils]: 53: Hoare triple {20743#false} assume !!(~i~1 < 40); {20743#false} is VALID [2018-11-23 12:14:20,835 INFO L273 TraceCheckUtils]: 54: Hoare triple {20743#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {20743#false} is VALID [2018-11-23 12:14:20,835 INFO L273 TraceCheckUtils]: 55: Hoare triple {20743#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {20743#false} is VALID [2018-11-23 12:14:20,835 INFO L273 TraceCheckUtils]: 56: Hoare triple {20743#false} assume !!(~i~1 < 40); {20743#false} is VALID [2018-11-23 12:14:20,835 INFO L273 TraceCheckUtils]: 57: Hoare triple {20743#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {20743#false} is VALID [2018-11-23 12:14:20,836 INFO L273 TraceCheckUtils]: 58: Hoare triple {20743#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {20743#false} is VALID [2018-11-23 12:14:20,836 INFO L273 TraceCheckUtils]: 59: Hoare triple {20743#false} assume !!(~i~1 < 40); {20743#false} is VALID [2018-11-23 12:14:20,836 INFO L273 TraceCheckUtils]: 60: Hoare triple {20743#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {20743#false} is VALID [2018-11-23 12:14:20,836 INFO L273 TraceCheckUtils]: 61: Hoare triple {20743#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {20743#false} is VALID [2018-11-23 12:14:20,836 INFO L273 TraceCheckUtils]: 62: Hoare triple {20743#false} assume !!(~i~1 < 40); {20743#false} is VALID [2018-11-23 12:14:20,836 INFO L273 TraceCheckUtils]: 63: Hoare triple {20743#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {20743#false} is VALID [2018-11-23 12:14:20,837 INFO L273 TraceCheckUtils]: 64: Hoare triple {20743#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {20743#false} is VALID [2018-11-23 12:14:20,837 INFO L273 TraceCheckUtils]: 65: Hoare triple {20743#false} assume !!(~i~1 < 40); {20743#false} is VALID [2018-11-23 12:14:20,837 INFO L273 TraceCheckUtils]: 66: Hoare triple {20743#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {20743#false} is VALID [2018-11-23 12:14:20,837 INFO L273 TraceCheckUtils]: 67: Hoare triple {20743#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {20743#false} is VALID [2018-11-23 12:14:20,837 INFO L273 TraceCheckUtils]: 68: Hoare triple {20743#false} assume !!(~i~1 < 40); {20743#false} is VALID [2018-11-23 12:14:20,837 INFO L273 TraceCheckUtils]: 69: Hoare triple {20743#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {20743#false} is VALID [2018-11-23 12:14:20,837 INFO L273 TraceCheckUtils]: 70: Hoare triple {20743#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {20743#false} is VALID [2018-11-23 12:14:20,838 INFO L273 TraceCheckUtils]: 71: Hoare triple {20743#false} assume !(~i~1 < 40); {20743#false} is VALID [2018-11-23 12:14:20,838 INFO L273 TraceCheckUtils]: 72: Hoare triple {20743#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {20743#false} is VALID [2018-11-23 12:14:20,838 INFO L273 TraceCheckUtils]: 73: Hoare triple {20743#false} assume true; {20743#false} is VALID [2018-11-23 12:14:20,838 INFO L268 TraceCheckUtils]: 74: Hoare quadruple {20743#false} {20743#false} #84#return; {20743#false} is VALID [2018-11-23 12:14:20,838 INFO L273 TraceCheckUtils]: 75: Hoare triple {20743#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {20743#false} is VALID [2018-11-23 12:14:20,839 INFO L256 TraceCheckUtils]: 76: Hoare triple {20743#false} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {20743#false} is VALID [2018-11-23 12:14:20,839 INFO L273 TraceCheckUtils]: 77: Hoare triple {20743#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {20743#false} is VALID [2018-11-23 12:14:20,839 INFO L273 TraceCheckUtils]: 78: Hoare triple {20743#false} assume !!(~i~1 < 40); {20743#false} is VALID [2018-11-23 12:14:20,839 INFO L273 TraceCheckUtils]: 79: Hoare triple {20743#false} assume !(~i~1 > 20); {20743#false} is VALID [2018-11-23 12:14:20,839 INFO L273 TraceCheckUtils]: 80: Hoare triple {20743#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {20743#false} is VALID [2018-11-23 12:14:20,839 INFO L273 TraceCheckUtils]: 81: Hoare triple {20743#false} assume !!(~i~1 < 40); {20743#false} is VALID [2018-11-23 12:14:20,839 INFO L273 TraceCheckUtils]: 82: Hoare triple {20743#false} assume !(~i~1 > 20); {20743#false} is VALID [2018-11-23 12:14:20,839 INFO L273 TraceCheckUtils]: 83: Hoare triple {20743#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {20743#false} is VALID [2018-11-23 12:14:20,839 INFO L273 TraceCheckUtils]: 84: Hoare triple {20743#false} assume !!(~i~1 < 40); {20743#false} is VALID [2018-11-23 12:14:20,840 INFO L273 TraceCheckUtils]: 85: Hoare triple {20743#false} assume !(~i~1 > 20); {20743#false} is VALID [2018-11-23 12:14:20,840 INFO L273 TraceCheckUtils]: 86: Hoare triple {20743#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {20743#false} is VALID [2018-11-23 12:14:20,840 INFO L273 TraceCheckUtils]: 87: Hoare triple {20743#false} assume !!(~i~1 < 40); {20743#false} is VALID [2018-11-23 12:14:20,840 INFO L273 TraceCheckUtils]: 88: Hoare triple {20743#false} assume !(~i~1 > 20); {20743#false} is VALID [2018-11-23 12:14:20,840 INFO L273 TraceCheckUtils]: 89: Hoare triple {20743#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {20743#false} is VALID [2018-11-23 12:14:20,840 INFO L273 TraceCheckUtils]: 90: Hoare triple {20743#false} assume !!(~i~1 < 40); {20743#false} is VALID [2018-11-23 12:14:20,840 INFO L273 TraceCheckUtils]: 91: Hoare triple {20743#false} assume !(~i~1 > 20); {20743#false} is VALID [2018-11-23 12:14:20,840 INFO L273 TraceCheckUtils]: 92: Hoare triple {20743#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {20743#false} is VALID [2018-11-23 12:14:20,840 INFO L273 TraceCheckUtils]: 93: Hoare triple {20743#false} assume !!(~i~1 < 40); {20743#false} is VALID [2018-11-23 12:14:20,841 INFO L273 TraceCheckUtils]: 94: Hoare triple {20743#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {20743#false} is VALID [2018-11-23 12:14:20,841 INFO L273 TraceCheckUtils]: 95: Hoare triple {20743#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {20743#false} is VALID [2018-11-23 12:14:20,841 INFO L273 TraceCheckUtils]: 96: Hoare triple {20743#false} assume !!(~i~1 < 40); {20743#false} is VALID [2018-11-23 12:14:20,841 INFO L273 TraceCheckUtils]: 97: Hoare triple {20743#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {20743#false} is VALID [2018-11-23 12:14:20,841 INFO L273 TraceCheckUtils]: 98: Hoare triple {20743#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {20743#false} is VALID [2018-11-23 12:14:20,841 INFO L273 TraceCheckUtils]: 99: Hoare triple {20743#false} assume !!(~i~1 < 40); {20743#false} is VALID [2018-11-23 12:14:20,841 INFO L273 TraceCheckUtils]: 100: Hoare triple {20743#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {20743#false} is VALID [2018-11-23 12:14:20,841 INFO L273 TraceCheckUtils]: 101: Hoare triple {20743#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {20743#false} is VALID [2018-11-23 12:14:20,841 INFO L273 TraceCheckUtils]: 102: Hoare triple {20743#false} assume !!(~i~1 < 40); {20743#false} is VALID [2018-11-23 12:14:20,842 INFO L273 TraceCheckUtils]: 103: Hoare triple {20743#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {20743#false} is VALID [2018-11-23 12:14:20,842 INFO L273 TraceCheckUtils]: 104: Hoare triple {20743#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {20743#false} is VALID [2018-11-23 12:14:20,842 INFO L273 TraceCheckUtils]: 105: Hoare triple {20743#false} assume !!(~i~1 < 40); {20743#false} is VALID [2018-11-23 12:14:20,842 INFO L273 TraceCheckUtils]: 106: Hoare triple {20743#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {20743#false} is VALID [2018-11-23 12:14:20,842 INFO L273 TraceCheckUtils]: 107: Hoare triple {20743#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {20743#false} is VALID [2018-11-23 12:14:20,842 INFO L273 TraceCheckUtils]: 108: Hoare triple {20743#false} assume !!(~i~1 < 40); {20743#false} is VALID [2018-11-23 12:14:20,842 INFO L273 TraceCheckUtils]: 109: Hoare triple {20743#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {20743#false} is VALID [2018-11-23 12:14:20,842 INFO L273 TraceCheckUtils]: 110: Hoare triple {20743#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {20743#false} is VALID [2018-11-23 12:14:20,843 INFO L273 TraceCheckUtils]: 111: Hoare triple {20743#false} assume !(~i~1 < 40); {20743#false} is VALID [2018-11-23 12:14:20,843 INFO L273 TraceCheckUtils]: 112: Hoare triple {20743#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {20743#false} is VALID [2018-11-23 12:14:20,843 INFO L273 TraceCheckUtils]: 113: Hoare triple {20743#false} assume true; {20743#false} is VALID [2018-11-23 12:14:20,843 INFO L268 TraceCheckUtils]: 114: Hoare quadruple {20743#false} {20743#false} #86#return; {20743#false} is VALID [2018-11-23 12:14:20,843 INFO L273 TraceCheckUtils]: 115: Hoare triple {20743#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {20743#false} is VALID [2018-11-23 12:14:20,843 INFO L273 TraceCheckUtils]: 116: Hoare triple {20743#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {20743#false} is VALID [2018-11-23 12:14:20,844 INFO L273 TraceCheckUtils]: 117: Hoare triple {20743#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {20743#false} is VALID [2018-11-23 12:14:20,844 INFO L273 TraceCheckUtils]: 118: Hoare triple {20743#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {20743#false} is VALID [2018-11-23 12:14:20,844 INFO L273 TraceCheckUtils]: 119: Hoare triple {20743#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {20743#false} is VALID [2018-11-23 12:14:20,844 INFO L273 TraceCheckUtils]: 120: Hoare triple {20743#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {20743#false} is VALID [2018-11-23 12:14:20,844 INFO L273 TraceCheckUtils]: 121: Hoare triple {20743#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {20743#false} is VALID [2018-11-23 12:14:20,844 INFO L273 TraceCheckUtils]: 122: Hoare triple {20743#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {20743#false} is VALID [2018-11-23 12:14:20,845 INFO L273 TraceCheckUtils]: 123: Hoare triple {20743#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {20743#false} is VALID [2018-11-23 12:14:20,845 INFO L273 TraceCheckUtils]: 124: Hoare triple {20743#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {20743#false} is VALID [2018-11-23 12:14:20,845 INFO L273 TraceCheckUtils]: 125: Hoare triple {20743#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {20743#false} is VALID [2018-11-23 12:14:20,845 INFO L273 TraceCheckUtils]: 126: Hoare triple {20743#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {20743#false} is VALID [2018-11-23 12:14:20,845 INFO L273 TraceCheckUtils]: 127: Hoare triple {20743#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {20743#false} is VALID [2018-11-23 12:14:20,846 INFO L273 TraceCheckUtils]: 128: Hoare triple {20743#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {20743#false} is VALID [2018-11-23 12:14:20,846 INFO L273 TraceCheckUtils]: 129: Hoare triple {20743#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {20743#false} is VALID [2018-11-23 12:14:20,846 INFO L273 TraceCheckUtils]: 130: Hoare triple {20743#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {20743#false} is VALID [2018-11-23 12:14:20,846 INFO L273 TraceCheckUtils]: 131: Hoare triple {20743#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {20743#false} is VALID [2018-11-23 12:14:20,846 INFO L273 TraceCheckUtils]: 132: Hoare triple {20743#false} assume !(~i~2 < 39); {20743#false} is VALID [2018-11-23 12:14:20,846 INFO L273 TraceCheckUtils]: 133: Hoare triple {20743#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {20743#false} is VALID [2018-11-23 12:14:20,847 INFO L256 TraceCheckUtils]: 134: Hoare triple {20743#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {20743#false} is VALID [2018-11-23 12:14:20,847 INFO L273 TraceCheckUtils]: 135: Hoare triple {20743#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {20743#false} is VALID [2018-11-23 12:14:20,847 INFO L273 TraceCheckUtils]: 136: Hoare triple {20743#false} assume !!(~i~1 < 40); {20743#false} is VALID [2018-11-23 12:14:20,847 INFO L273 TraceCheckUtils]: 137: Hoare triple {20743#false} assume !(~i~1 > 20); {20743#false} is VALID [2018-11-23 12:14:20,847 INFO L273 TraceCheckUtils]: 138: Hoare triple {20743#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {20743#false} is VALID [2018-11-23 12:14:20,847 INFO L273 TraceCheckUtils]: 139: Hoare triple {20743#false} assume !!(~i~1 < 40); {20743#false} is VALID [2018-11-23 12:14:20,848 INFO L273 TraceCheckUtils]: 140: Hoare triple {20743#false} assume !(~i~1 > 20); {20743#false} is VALID [2018-11-23 12:14:20,848 INFO L273 TraceCheckUtils]: 141: Hoare triple {20743#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {20743#false} is VALID [2018-11-23 12:14:20,848 INFO L273 TraceCheckUtils]: 142: Hoare triple {20743#false} assume !!(~i~1 < 40); {20743#false} is VALID [2018-11-23 12:14:20,848 INFO L273 TraceCheckUtils]: 143: Hoare triple {20743#false} assume !(~i~1 > 20); {20743#false} is VALID [2018-11-23 12:14:20,848 INFO L273 TraceCheckUtils]: 144: Hoare triple {20743#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {20743#false} is VALID [2018-11-23 12:14:20,848 INFO L273 TraceCheckUtils]: 145: Hoare triple {20743#false} assume !!(~i~1 < 40); {20743#false} is VALID [2018-11-23 12:14:20,849 INFO L273 TraceCheckUtils]: 146: Hoare triple {20743#false} assume !(~i~1 > 20); {20743#false} is VALID [2018-11-23 12:14:20,849 INFO L273 TraceCheckUtils]: 147: Hoare triple {20743#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {20743#false} is VALID [2018-11-23 12:14:20,849 INFO L273 TraceCheckUtils]: 148: Hoare triple {20743#false} assume !!(~i~1 < 40); {20743#false} is VALID [2018-11-23 12:14:20,849 INFO L273 TraceCheckUtils]: 149: Hoare triple {20743#false} assume !(~i~1 > 20); {20743#false} is VALID [2018-11-23 12:14:20,849 INFO L273 TraceCheckUtils]: 150: Hoare triple {20743#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {20743#false} is VALID [2018-11-23 12:14:20,849 INFO L273 TraceCheckUtils]: 151: Hoare triple {20743#false} assume !!(~i~1 < 40); {20743#false} is VALID [2018-11-23 12:14:20,850 INFO L273 TraceCheckUtils]: 152: Hoare triple {20743#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {20743#false} is VALID [2018-11-23 12:14:20,850 INFO L273 TraceCheckUtils]: 153: Hoare triple {20743#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {20743#false} is VALID [2018-11-23 12:14:20,850 INFO L273 TraceCheckUtils]: 154: Hoare triple {20743#false} assume !!(~i~1 < 40); {20743#false} is VALID [2018-11-23 12:14:20,850 INFO L273 TraceCheckUtils]: 155: Hoare triple {20743#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {20743#false} is VALID [2018-11-23 12:14:20,850 INFO L273 TraceCheckUtils]: 156: Hoare triple {20743#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {20743#false} is VALID [2018-11-23 12:14:20,850 INFO L273 TraceCheckUtils]: 157: Hoare triple {20743#false} assume !!(~i~1 < 40); {20743#false} is VALID [2018-11-23 12:14:20,851 INFO L273 TraceCheckUtils]: 158: Hoare triple {20743#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {20743#false} is VALID [2018-11-23 12:14:20,851 INFO L273 TraceCheckUtils]: 159: Hoare triple {20743#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {20743#false} is VALID [2018-11-23 12:14:20,851 INFO L273 TraceCheckUtils]: 160: Hoare triple {20743#false} assume !!(~i~1 < 40); {20743#false} is VALID [2018-11-23 12:14:20,851 INFO L273 TraceCheckUtils]: 161: Hoare triple {20743#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {20743#false} is VALID [2018-11-23 12:14:20,851 INFO L273 TraceCheckUtils]: 162: Hoare triple {20743#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {20743#false} is VALID [2018-11-23 12:14:20,851 INFO L273 TraceCheckUtils]: 163: Hoare triple {20743#false} assume !!(~i~1 < 40); {20743#false} is VALID [2018-11-23 12:14:20,851 INFO L273 TraceCheckUtils]: 164: Hoare triple {20743#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {20743#false} is VALID [2018-11-23 12:14:20,852 INFO L273 TraceCheckUtils]: 165: Hoare triple {20743#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {20743#false} is VALID [2018-11-23 12:14:20,852 INFO L273 TraceCheckUtils]: 166: Hoare triple {20743#false} assume !!(~i~1 < 40); {20743#false} is VALID [2018-11-23 12:14:20,852 INFO L273 TraceCheckUtils]: 167: Hoare triple {20743#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {20743#false} is VALID [2018-11-23 12:14:20,852 INFO L273 TraceCheckUtils]: 168: Hoare triple {20743#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {20743#false} is VALID [2018-11-23 12:14:20,852 INFO L273 TraceCheckUtils]: 169: Hoare triple {20743#false} assume !(~i~1 < 40); {20743#false} is VALID [2018-11-23 12:14:20,852 INFO L273 TraceCheckUtils]: 170: Hoare triple {20743#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {20743#false} is VALID [2018-11-23 12:14:20,853 INFO L273 TraceCheckUtils]: 171: Hoare triple {20743#false} assume true; {20743#false} is VALID [2018-11-23 12:14:20,853 INFO L268 TraceCheckUtils]: 172: Hoare quadruple {20743#false} {20743#false} #88#return; {20743#false} is VALID [2018-11-23 12:14:20,853 INFO L273 TraceCheckUtils]: 173: Hoare triple {20743#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {20743#false} is VALID [2018-11-23 12:14:20,853 INFO L273 TraceCheckUtils]: 174: Hoare triple {20743#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {20743#false} is VALID [2018-11-23 12:14:20,853 INFO L273 TraceCheckUtils]: 175: Hoare triple {20743#false} assume !false; {20743#false} is VALID [2018-11-23 12:14:20,869 INFO L134 CoverageAnalysis]: Checked inductivity of 1906 backedges. 0 proven. 144 refuted. 0 times theorem prover too weak. 1762 trivial. 0 not checked. [2018-11-23 12:14:20,898 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:14:20,898 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [15] total 15 [2018-11-23 12:14:20,899 INFO L78 Accepts]: Start accepts. Automaton has 15 states. Word has length 176 [2018-11-23 12:14:20,899 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:14:20,899 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 15 states. [2018-11-23 12:14:21,163 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 59 edges. 59 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:14:21,163 INFO L459 AbstractCegarLoop]: Interpolant automaton has 15 states [2018-11-23 12:14:21,163 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2018-11-23 12:14:21,164 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=105, Invalid=105, Unknown=0, NotChecked=0, Total=210 [2018-11-23 12:14:21,164 INFO L87 Difference]: Start difference. First operand 101 states and 112 transitions. Second operand 15 states. [2018-11-23 12:14:21,861 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:21,861 INFO L93 Difference]: Finished difference Result 172 states and 194 transitions. [2018-11-23 12:14:21,862 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2018-11-23 12:14:21,862 INFO L78 Accepts]: Start accepts. Automaton has 15 states. Word has length 176 [2018-11-23 12:14:21,862 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:14:21,862 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 15 states. [2018-11-23 12:14:21,863 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 92 transitions. [2018-11-23 12:14:21,863 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 15 states. [2018-11-23 12:14:21,864 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 92 transitions. [2018-11-23 12:14:21,864 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 15 states and 92 transitions. [2018-11-23 12:14:21,985 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 92 edges. 92 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:14:21,988 INFO L225 Difference]: With dead ends: 172 [2018-11-23 12:14:21,988 INFO L226 Difference]: Without dead ends: 104 [2018-11-23 12:14:21,988 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 175 GetRequests, 162 SyntacticMatches, 0 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=105, Invalid=105, Unknown=0, NotChecked=0, Total=210 [2018-11-23 12:14:21,989 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 104 states. [2018-11-23 12:14:22,028 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 104 to 103. [2018-11-23 12:14:22,029 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:14:22,029 INFO L82 GeneralOperation]: Start isEquivalent. First operand 104 states. Second operand 103 states. [2018-11-23 12:14:22,029 INFO L74 IsIncluded]: Start isIncluded. First operand 104 states. Second operand 103 states. [2018-11-23 12:14:22,029 INFO L87 Difference]: Start difference. First operand 104 states. Second operand 103 states. [2018-11-23 12:14:22,031 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:22,031 INFO L93 Difference]: Finished difference Result 104 states and 115 transitions. [2018-11-23 12:14:22,031 INFO L276 IsEmpty]: Start isEmpty. Operand 104 states and 115 transitions. [2018-11-23 12:14:22,032 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:14:22,032 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:14:22,032 INFO L74 IsIncluded]: Start isIncluded. First operand 103 states. Second operand 104 states. [2018-11-23 12:14:22,032 INFO L87 Difference]: Start difference. First operand 103 states. Second operand 104 states. [2018-11-23 12:14:22,033 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:22,033 INFO L93 Difference]: Finished difference Result 104 states and 115 transitions. [2018-11-23 12:14:22,034 INFO L276 IsEmpty]: Start isEmpty. Operand 104 states and 115 transitions. [2018-11-23 12:14:22,034 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:14:22,034 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:14:22,034 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:14:22,034 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:14:22,034 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 103 states. [2018-11-23 12:14:22,035 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 103 states to 103 states and 114 transitions. [2018-11-23 12:14:22,036 INFO L78 Accepts]: Start accepts. Automaton has 103 states and 114 transitions. Word has length 176 [2018-11-23 12:14:22,036 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:14:22,036 INFO L480 AbstractCegarLoop]: Abstraction has 103 states and 114 transitions. [2018-11-23 12:14:22,036 INFO L481 AbstractCegarLoop]: Interpolant automaton has 15 states. [2018-11-23 12:14:22,036 INFO L276 IsEmpty]: Start isEmpty. Operand 103 states and 114 transitions. [2018-11-23 12:14:22,037 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 179 [2018-11-23 12:14:22,037 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:14:22,037 INFO L402 BasicCegarLoop]: trace histogram [33, 33, 18, 15, 13, 13, 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, 1, 1, 1, 1, 1] [2018-11-23 12:14:22,037 INFO L423 AbstractCegarLoop]: === Iteration 32 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:14:22,037 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:14:22,037 INFO L82 PathProgramCache]: Analyzing trace with hash -533347154, now seen corresponding path program 27 times [2018-11-23 12:14:22,038 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:14:22,038 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:14:22,038 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:14:22,038 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:14:22,038 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:14:22,050 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:14:22,050 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:14:22,050 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 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 33 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:14:22,065 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-23 12:14:22,522 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 10 check-sat command(s) [2018-11-23 12:14:22,522 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:14:22,552 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:14:22,555 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:14:22,789 INFO L256 TraceCheckUtils]: 0: Hoare triple {21882#true} call ULTIMATE.init(); {21882#true} is VALID [2018-11-23 12:14:22,789 INFO L273 TraceCheckUtils]: 1: Hoare triple {21882#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {21882#true} is VALID [2018-11-23 12:14:22,789 INFO L273 TraceCheckUtils]: 2: Hoare triple {21882#true} assume true; {21882#true} is VALID [2018-11-23 12:14:22,789 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {21882#true} {21882#true} #78#return; {21882#true} is VALID [2018-11-23 12:14:22,790 INFO L256 TraceCheckUtils]: 4: Hoare triple {21882#true} call #t~ret12 := main(); {21882#true} is VALID [2018-11-23 12:14:22,790 INFO L273 TraceCheckUtils]: 5: Hoare triple {21882#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {21882#true} is VALID [2018-11-23 12:14:22,790 INFO L256 TraceCheckUtils]: 6: Hoare triple {21882#true} call init_nondet(~#x~0.base, ~#x~0.offset); {21882#true} is VALID [2018-11-23 12:14:22,790 INFO L273 TraceCheckUtils]: 7: Hoare triple {21882#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {21882#true} is VALID [2018-11-23 12:14:22,790 INFO L273 TraceCheckUtils]: 8: Hoare triple {21882#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {21882#true} is VALID [2018-11-23 12:14:22,790 INFO L273 TraceCheckUtils]: 9: Hoare triple {21882#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {21882#true} is VALID [2018-11-23 12:14:22,790 INFO L273 TraceCheckUtils]: 10: Hoare triple {21882#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {21882#true} is VALID [2018-11-23 12:14:22,790 INFO L273 TraceCheckUtils]: 11: Hoare triple {21882#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {21882#true} is VALID [2018-11-23 12:14:22,790 INFO L273 TraceCheckUtils]: 12: Hoare triple {21882#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {21882#true} is VALID [2018-11-23 12:14:22,791 INFO L273 TraceCheckUtils]: 13: Hoare triple {21882#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {21882#true} is VALID [2018-11-23 12:14:22,791 INFO L273 TraceCheckUtils]: 14: Hoare triple {21882#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {21882#true} is VALID [2018-11-23 12:14:22,791 INFO L273 TraceCheckUtils]: 15: Hoare triple {21882#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {21882#true} is VALID [2018-11-23 12:14:22,791 INFO L273 TraceCheckUtils]: 16: Hoare triple {21882#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {21882#true} is VALID [2018-11-23 12:14:22,791 INFO L273 TraceCheckUtils]: 17: Hoare triple {21882#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {21882#true} is VALID [2018-11-23 12:14:22,791 INFO L273 TraceCheckUtils]: 18: Hoare triple {21882#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {21882#true} is VALID [2018-11-23 12:14:22,791 INFO L273 TraceCheckUtils]: 19: Hoare triple {21882#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {21882#true} is VALID [2018-11-23 12:14:22,791 INFO L273 TraceCheckUtils]: 20: Hoare triple {21882#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {21882#true} is VALID [2018-11-23 12:14:22,791 INFO L273 TraceCheckUtils]: 21: Hoare triple {21882#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {21882#true} is VALID [2018-11-23 12:14:22,792 INFO L273 TraceCheckUtils]: 22: Hoare triple {21882#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {21882#true} is VALID [2018-11-23 12:14:22,792 INFO L273 TraceCheckUtils]: 23: Hoare triple {21882#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {21882#true} is VALID [2018-11-23 12:14:22,792 INFO L273 TraceCheckUtils]: 24: Hoare triple {21882#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {21882#true} is VALID [2018-11-23 12:14:22,792 INFO L273 TraceCheckUtils]: 25: Hoare triple {21882#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {21882#true} is VALID [2018-11-23 12:14:22,792 INFO L273 TraceCheckUtils]: 26: Hoare triple {21882#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {21882#true} is VALID [2018-11-23 12:14:22,792 INFO L273 TraceCheckUtils]: 27: Hoare triple {21882#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {21882#true} is VALID [2018-11-23 12:14:22,792 INFO L273 TraceCheckUtils]: 28: Hoare triple {21882#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {21882#true} is VALID [2018-11-23 12:14:22,792 INFO L273 TraceCheckUtils]: 29: Hoare triple {21882#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {21882#true} is VALID [2018-11-23 12:14:22,792 INFO L273 TraceCheckUtils]: 30: Hoare triple {21882#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {21882#true} is VALID [2018-11-23 12:14:22,793 INFO L273 TraceCheckUtils]: 31: Hoare triple {21882#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {21882#true} is VALID [2018-11-23 12:14:22,793 INFO L273 TraceCheckUtils]: 32: Hoare triple {21882#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {21882#true} is VALID [2018-11-23 12:14:22,793 INFO L273 TraceCheckUtils]: 33: Hoare triple {21882#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {21882#true} is VALID [2018-11-23 12:14:22,793 INFO L273 TraceCheckUtils]: 34: Hoare triple {21882#true} assume !(~i~0 < 40); {21882#true} is VALID [2018-11-23 12:14:22,793 INFO L273 TraceCheckUtils]: 35: Hoare triple {21882#true} assume true; {21882#true} is VALID [2018-11-23 12:14:22,793 INFO L268 TraceCheckUtils]: 36: Hoare quadruple {21882#true} {21882#true} #82#return; {21882#true} is VALID [2018-11-23 12:14:22,793 INFO L273 TraceCheckUtils]: 37: Hoare triple {21882#true} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {21882#true} is VALID [2018-11-23 12:14:22,793 INFO L256 TraceCheckUtils]: 38: Hoare triple {21882#true} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {21882#true} is VALID [2018-11-23 12:14:22,793 INFO L273 TraceCheckUtils]: 39: Hoare triple {21882#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {21882#true} is VALID [2018-11-23 12:14:22,793 INFO L273 TraceCheckUtils]: 40: Hoare triple {21882#true} assume !!(~i~1 < 40); {21882#true} is VALID [2018-11-23 12:14:22,794 INFO L273 TraceCheckUtils]: 41: Hoare triple {21882#true} assume !(~i~1 > 20); {21882#true} is VALID [2018-11-23 12:14:22,794 INFO L273 TraceCheckUtils]: 42: Hoare triple {21882#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {21882#true} is VALID [2018-11-23 12:14:22,794 INFO L273 TraceCheckUtils]: 43: Hoare triple {21882#true} assume !!(~i~1 < 40); {21882#true} is VALID [2018-11-23 12:14:22,794 INFO L273 TraceCheckUtils]: 44: Hoare triple {21882#true} assume !(~i~1 > 20); {21882#true} is VALID [2018-11-23 12:14:22,794 INFO L273 TraceCheckUtils]: 45: Hoare triple {21882#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {21882#true} is VALID [2018-11-23 12:14:22,794 INFO L273 TraceCheckUtils]: 46: Hoare triple {21882#true} assume !!(~i~1 < 40); {21882#true} is VALID [2018-11-23 12:14:22,794 INFO L273 TraceCheckUtils]: 47: Hoare triple {21882#true} assume !(~i~1 > 20); {21882#true} is VALID [2018-11-23 12:14:22,794 INFO L273 TraceCheckUtils]: 48: Hoare triple {21882#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {21882#true} is VALID [2018-11-23 12:14:22,794 INFO L273 TraceCheckUtils]: 49: Hoare triple {21882#true} assume !!(~i~1 < 40); {21882#true} is VALID [2018-11-23 12:14:22,795 INFO L273 TraceCheckUtils]: 50: Hoare triple {21882#true} assume !(~i~1 > 20); {21882#true} is VALID [2018-11-23 12:14:22,795 INFO L273 TraceCheckUtils]: 51: Hoare triple {21882#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {21882#true} is VALID [2018-11-23 12:14:22,795 INFO L273 TraceCheckUtils]: 52: Hoare triple {21882#true} assume !!(~i~1 < 40); {21882#true} is VALID [2018-11-23 12:14:22,795 INFO L273 TraceCheckUtils]: 53: Hoare triple {21882#true} assume !(~i~1 > 20); {21882#true} is VALID [2018-11-23 12:14:22,795 INFO L273 TraceCheckUtils]: 54: Hoare triple {21882#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {21882#true} is VALID [2018-11-23 12:14:22,795 INFO L273 TraceCheckUtils]: 55: Hoare triple {21882#true} assume !!(~i~1 < 40); {21882#true} is VALID [2018-11-23 12:14:22,795 INFO L273 TraceCheckUtils]: 56: Hoare triple {21882#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {21882#true} is VALID [2018-11-23 12:14:22,795 INFO L273 TraceCheckUtils]: 57: Hoare triple {21882#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {21882#true} is VALID [2018-11-23 12:14:22,795 INFO L273 TraceCheckUtils]: 58: Hoare triple {21882#true} assume !!(~i~1 < 40); {21882#true} is VALID [2018-11-23 12:14:22,796 INFO L273 TraceCheckUtils]: 59: Hoare triple {21882#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {21882#true} is VALID [2018-11-23 12:14:22,796 INFO L273 TraceCheckUtils]: 60: Hoare triple {21882#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {21882#true} is VALID [2018-11-23 12:14:22,796 INFO L273 TraceCheckUtils]: 61: Hoare triple {21882#true} assume !!(~i~1 < 40); {21882#true} is VALID [2018-11-23 12:14:22,796 INFO L273 TraceCheckUtils]: 62: Hoare triple {21882#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {21882#true} is VALID [2018-11-23 12:14:22,796 INFO L273 TraceCheckUtils]: 63: Hoare triple {21882#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {21882#true} is VALID [2018-11-23 12:14:22,796 INFO L273 TraceCheckUtils]: 64: Hoare triple {21882#true} assume !!(~i~1 < 40); {21882#true} is VALID [2018-11-23 12:14:22,796 INFO L273 TraceCheckUtils]: 65: Hoare triple {21882#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {21882#true} is VALID [2018-11-23 12:14:22,796 INFO L273 TraceCheckUtils]: 66: Hoare triple {21882#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {21882#true} is VALID [2018-11-23 12:14:22,796 INFO L273 TraceCheckUtils]: 67: Hoare triple {21882#true} assume !!(~i~1 < 40); {21882#true} is VALID [2018-11-23 12:14:22,797 INFO L273 TraceCheckUtils]: 68: Hoare triple {21882#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {21882#true} is VALID [2018-11-23 12:14:22,797 INFO L273 TraceCheckUtils]: 69: Hoare triple {21882#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {21882#true} is VALID [2018-11-23 12:14:22,797 INFO L273 TraceCheckUtils]: 70: Hoare triple {21882#true} assume !!(~i~1 < 40); {21882#true} is VALID [2018-11-23 12:14:22,797 INFO L273 TraceCheckUtils]: 71: Hoare triple {21882#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {21882#true} is VALID [2018-11-23 12:14:22,797 INFO L273 TraceCheckUtils]: 72: Hoare triple {21882#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {21882#true} is VALID [2018-11-23 12:14:22,797 INFO L273 TraceCheckUtils]: 73: Hoare triple {21882#true} assume !(~i~1 < 40); {21882#true} is VALID [2018-11-23 12:14:22,797 INFO L273 TraceCheckUtils]: 74: Hoare triple {21882#true} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {21882#true} is VALID [2018-11-23 12:14:22,797 INFO L273 TraceCheckUtils]: 75: Hoare triple {21882#true} assume true; {21882#true} is VALID [2018-11-23 12:14:22,797 INFO L268 TraceCheckUtils]: 76: Hoare quadruple {21882#true} {21882#true} #84#return; {21882#true} is VALID [2018-11-23 12:14:22,798 INFO L273 TraceCheckUtils]: 77: Hoare triple {21882#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {21882#true} is VALID [2018-11-23 12:14:22,798 INFO L256 TraceCheckUtils]: 78: Hoare triple {21882#true} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {21882#true} is VALID [2018-11-23 12:14:22,798 INFO L273 TraceCheckUtils]: 79: Hoare triple {21882#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {21882#true} is VALID [2018-11-23 12:14:22,798 INFO L273 TraceCheckUtils]: 80: Hoare triple {21882#true} assume !!(~i~1 < 40); {21882#true} is VALID [2018-11-23 12:14:22,798 INFO L273 TraceCheckUtils]: 81: Hoare triple {21882#true} assume !(~i~1 > 20); {21882#true} is VALID [2018-11-23 12:14:22,798 INFO L273 TraceCheckUtils]: 82: Hoare triple {21882#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {21882#true} is VALID [2018-11-23 12:14:22,798 INFO L273 TraceCheckUtils]: 83: Hoare triple {21882#true} assume !!(~i~1 < 40); {21882#true} is VALID [2018-11-23 12:14:22,798 INFO L273 TraceCheckUtils]: 84: Hoare triple {21882#true} assume !(~i~1 > 20); {21882#true} is VALID [2018-11-23 12:14:22,798 INFO L273 TraceCheckUtils]: 85: Hoare triple {21882#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {21882#true} is VALID [2018-11-23 12:14:22,799 INFO L273 TraceCheckUtils]: 86: Hoare triple {21882#true} assume !!(~i~1 < 40); {21882#true} is VALID [2018-11-23 12:14:22,799 INFO L273 TraceCheckUtils]: 87: Hoare triple {21882#true} assume !(~i~1 > 20); {21882#true} is VALID [2018-11-23 12:14:22,799 INFO L273 TraceCheckUtils]: 88: Hoare triple {21882#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {21882#true} is VALID [2018-11-23 12:14:22,799 INFO L273 TraceCheckUtils]: 89: Hoare triple {21882#true} assume !!(~i~1 < 40); {21882#true} is VALID [2018-11-23 12:14:22,799 INFO L273 TraceCheckUtils]: 90: Hoare triple {21882#true} assume !(~i~1 > 20); {21882#true} is VALID [2018-11-23 12:14:22,799 INFO L273 TraceCheckUtils]: 91: Hoare triple {21882#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {21882#true} is VALID [2018-11-23 12:14:22,799 INFO L273 TraceCheckUtils]: 92: Hoare triple {21882#true} assume !!(~i~1 < 40); {21882#true} is VALID [2018-11-23 12:14:22,799 INFO L273 TraceCheckUtils]: 93: Hoare triple {21882#true} assume !(~i~1 > 20); {21882#true} is VALID [2018-11-23 12:14:22,799 INFO L273 TraceCheckUtils]: 94: Hoare triple {21882#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {21882#true} is VALID [2018-11-23 12:14:22,800 INFO L273 TraceCheckUtils]: 95: Hoare triple {21882#true} assume !!(~i~1 < 40); {21882#true} is VALID [2018-11-23 12:14:22,800 INFO L273 TraceCheckUtils]: 96: Hoare triple {21882#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {21882#true} is VALID [2018-11-23 12:14:22,800 INFO L273 TraceCheckUtils]: 97: Hoare triple {21882#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {21882#true} is VALID [2018-11-23 12:14:22,800 INFO L273 TraceCheckUtils]: 98: Hoare triple {21882#true} assume !!(~i~1 < 40); {21882#true} is VALID [2018-11-23 12:14:22,800 INFO L273 TraceCheckUtils]: 99: Hoare triple {21882#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {21882#true} is VALID [2018-11-23 12:14:22,800 INFO L273 TraceCheckUtils]: 100: Hoare triple {21882#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {21882#true} is VALID [2018-11-23 12:14:22,800 INFO L273 TraceCheckUtils]: 101: Hoare triple {21882#true} assume !!(~i~1 < 40); {21882#true} is VALID [2018-11-23 12:14:22,800 INFO L273 TraceCheckUtils]: 102: Hoare triple {21882#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {21882#true} is VALID [2018-11-23 12:14:22,801 INFO L273 TraceCheckUtils]: 103: Hoare triple {21882#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {21882#true} is VALID [2018-11-23 12:14:22,801 INFO L273 TraceCheckUtils]: 104: Hoare triple {21882#true} assume !!(~i~1 < 40); {21882#true} is VALID [2018-11-23 12:14:22,801 INFO L273 TraceCheckUtils]: 105: Hoare triple {21882#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {21882#true} is VALID [2018-11-23 12:14:22,801 INFO L273 TraceCheckUtils]: 106: Hoare triple {21882#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {21882#true} is VALID [2018-11-23 12:14:22,801 INFO L273 TraceCheckUtils]: 107: Hoare triple {21882#true} assume !!(~i~1 < 40); {21882#true} is VALID [2018-11-23 12:14:22,801 INFO L273 TraceCheckUtils]: 108: Hoare triple {21882#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {21882#true} is VALID [2018-11-23 12:14:22,801 INFO L273 TraceCheckUtils]: 109: Hoare triple {21882#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {21882#true} is VALID [2018-11-23 12:14:22,801 INFO L273 TraceCheckUtils]: 110: Hoare triple {21882#true} assume !!(~i~1 < 40); {21882#true} is VALID [2018-11-23 12:14:22,801 INFO L273 TraceCheckUtils]: 111: Hoare triple {21882#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {21882#true} is VALID [2018-11-23 12:14:22,802 INFO L273 TraceCheckUtils]: 112: Hoare triple {21882#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {21882#true} is VALID [2018-11-23 12:14:22,802 INFO L273 TraceCheckUtils]: 113: Hoare triple {21882#true} assume !(~i~1 < 40); {21882#true} is VALID [2018-11-23 12:14:22,802 INFO L273 TraceCheckUtils]: 114: Hoare triple {21882#true} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {21882#true} is VALID [2018-11-23 12:14:22,802 INFO L273 TraceCheckUtils]: 115: Hoare triple {21882#true} assume true; {21882#true} is VALID [2018-11-23 12:14:22,802 INFO L268 TraceCheckUtils]: 116: Hoare quadruple {21882#true} {21882#true} #86#return; {21882#true} is VALID [2018-11-23 12:14:22,802 INFO L273 TraceCheckUtils]: 117: Hoare triple {21882#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {22238#(<= main_~i~2 0)} is VALID [2018-11-23 12:14:22,803 INFO L273 TraceCheckUtils]: 118: Hoare triple {22238#(<= main_~i~2 0)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {22238#(<= main_~i~2 0)} is VALID [2018-11-23 12:14:22,803 INFO L273 TraceCheckUtils]: 119: Hoare triple {22238#(<= main_~i~2 0)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {22245#(<= main_~i~2 1)} is VALID [2018-11-23 12:14:22,804 INFO L273 TraceCheckUtils]: 120: Hoare triple {22245#(<= main_~i~2 1)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {22245#(<= main_~i~2 1)} is VALID [2018-11-23 12:14:22,804 INFO L273 TraceCheckUtils]: 121: Hoare triple {22245#(<= main_~i~2 1)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {22252#(<= main_~i~2 2)} is VALID [2018-11-23 12:14:22,804 INFO L273 TraceCheckUtils]: 122: Hoare triple {22252#(<= main_~i~2 2)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {22252#(<= main_~i~2 2)} is VALID [2018-11-23 12:14:22,805 INFO L273 TraceCheckUtils]: 123: Hoare triple {22252#(<= main_~i~2 2)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {22259#(<= main_~i~2 3)} is VALID [2018-11-23 12:14:22,805 INFO L273 TraceCheckUtils]: 124: Hoare triple {22259#(<= main_~i~2 3)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {22259#(<= main_~i~2 3)} is VALID [2018-11-23 12:14:22,806 INFO L273 TraceCheckUtils]: 125: Hoare triple {22259#(<= main_~i~2 3)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {22266#(<= main_~i~2 4)} is VALID [2018-11-23 12:14:22,806 INFO L273 TraceCheckUtils]: 126: Hoare triple {22266#(<= main_~i~2 4)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {22266#(<= main_~i~2 4)} is VALID [2018-11-23 12:14:22,806 INFO L273 TraceCheckUtils]: 127: Hoare triple {22266#(<= main_~i~2 4)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {22273#(<= main_~i~2 5)} is VALID [2018-11-23 12:14:22,807 INFO L273 TraceCheckUtils]: 128: Hoare triple {22273#(<= main_~i~2 5)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {22273#(<= main_~i~2 5)} is VALID [2018-11-23 12:14:22,808 INFO L273 TraceCheckUtils]: 129: Hoare triple {22273#(<= main_~i~2 5)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {22280#(<= main_~i~2 6)} is VALID [2018-11-23 12:14:22,808 INFO L273 TraceCheckUtils]: 130: Hoare triple {22280#(<= main_~i~2 6)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {22280#(<= main_~i~2 6)} is VALID [2018-11-23 12:14:22,809 INFO L273 TraceCheckUtils]: 131: Hoare triple {22280#(<= main_~i~2 6)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {22287#(<= main_~i~2 7)} is VALID [2018-11-23 12:14:22,809 INFO L273 TraceCheckUtils]: 132: Hoare triple {22287#(<= main_~i~2 7)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {22287#(<= main_~i~2 7)} is VALID [2018-11-23 12:14:22,810 INFO L273 TraceCheckUtils]: 133: Hoare triple {22287#(<= main_~i~2 7)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {22294#(<= main_~i~2 8)} is VALID [2018-11-23 12:14:22,811 INFO L273 TraceCheckUtils]: 134: Hoare triple {22294#(<= main_~i~2 8)} assume !(~i~2 < 39); {21883#false} is VALID [2018-11-23 12:14:22,811 INFO L273 TraceCheckUtils]: 135: Hoare triple {21883#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {21883#false} is VALID [2018-11-23 12:14:22,811 INFO L256 TraceCheckUtils]: 136: Hoare triple {21883#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {21883#false} is VALID [2018-11-23 12:14:22,811 INFO L273 TraceCheckUtils]: 137: Hoare triple {21883#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {21883#false} is VALID [2018-11-23 12:14:22,811 INFO L273 TraceCheckUtils]: 138: Hoare triple {21883#false} assume !!(~i~1 < 40); {21883#false} is VALID [2018-11-23 12:14:22,812 INFO L273 TraceCheckUtils]: 139: Hoare triple {21883#false} assume !(~i~1 > 20); {21883#false} is VALID [2018-11-23 12:14:22,812 INFO L273 TraceCheckUtils]: 140: Hoare triple {21883#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {21883#false} is VALID [2018-11-23 12:14:22,812 INFO L273 TraceCheckUtils]: 141: Hoare triple {21883#false} assume !!(~i~1 < 40); {21883#false} is VALID [2018-11-23 12:14:22,812 INFO L273 TraceCheckUtils]: 142: Hoare triple {21883#false} assume !(~i~1 > 20); {21883#false} is VALID [2018-11-23 12:14:22,812 INFO L273 TraceCheckUtils]: 143: Hoare triple {21883#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {21883#false} is VALID [2018-11-23 12:14:22,812 INFO L273 TraceCheckUtils]: 144: Hoare triple {21883#false} assume !!(~i~1 < 40); {21883#false} is VALID [2018-11-23 12:14:22,813 INFO L273 TraceCheckUtils]: 145: Hoare triple {21883#false} assume !(~i~1 > 20); {21883#false} is VALID [2018-11-23 12:14:22,813 INFO L273 TraceCheckUtils]: 146: Hoare triple {21883#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {21883#false} is VALID [2018-11-23 12:14:22,813 INFO L273 TraceCheckUtils]: 147: Hoare triple {21883#false} assume !!(~i~1 < 40); {21883#false} is VALID [2018-11-23 12:14:22,813 INFO L273 TraceCheckUtils]: 148: Hoare triple {21883#false} assume !(~i~1 > 20); {21883#false} is VALID [2018-11-23 12:14:22,813 INFO L273 TraceCheckUtils]: 149: Hoare triple {21883#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {21883#false} is VALID [2018-11-23 12:14:22,813 INFO L273 TraceCheckUtils]: 150: Hoare triple {21883#false} assume !!(~i~1 < 40); {21883#false} is VALID [2018-11-23 12:14:22,814 INFO L273 TraceCheckUtils]: 151: Hoare triple {21883#false} assume !(~i~1 > 20); {21883#false} is VALID [2018-11-23 12:14:22,814 INFO L273 TraceCheckUtils]: 152: Hoare triple {21883#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {21883#false} is VALID [2018-11-23 12:14:22,814 INFO L273 TraceCheckUtils]: 153: Hoare triple {21883#false} assume !!(~i~1 < 40); {21883#false} is VALID [2018-11-23 12:14:22,814 INFO L273 TraceCheckUtils]: 154: Hoare triple {21883#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {21883#false} is VALID [2018-11-23 12:14:22,814 INFO L273 TraceCheckUtils]: 155: Hoare triple {21883#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {21883#false} is VALID [2018-11-23 12:14:22,814 INFO L273 TraceCheckUtils]: 156: Hoare triple {21883#false} assume !!(~i~1 < 40); {21883#false} is VALID [2018-11-23 12:14:22,814 INFO L273 TraceCheckUtils]: 157: Hoare triple {21883#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {21883#false} is VALID [2018-11-23 12:14:22,815 INFO L273 TraceCheckUtils]: 158: Hoare triple {21883#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {21883#false} is VALID [2018-11-23 12:14:22,815 INFO L273 TraceCheckUtils]: 159: Hoare triple {21883#false} assume !!(~i~1 < 40); {21883#false} is VALID [2018-11-23 12:14:22,815 INFO L273 TraceCheckUtils]: 160: Hoare triple {21883#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {21883#false} is VALID [2018-11-23 12:14:22,815 INFO L273 TraceCheckUtils]: 161: Hoare triple {21883#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {21883#false} is VALID [2018-11-23 12:14:22,815 INFO L273 TraceCheckUtils]: 162: Hoare triple {21883#false} assume !!(~i~1 < 40); {21883#false} is VALID [2018-11-23 12:14:22,815 INFO L273 TraceCheckUtils]: 163: Hoare triple {21883#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {21883#false} is VALID [2018-11-23 12:14:22,815 INFO L273 TraceCheckUtils]: 164: Hoare triple {21883#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {21883#false} is VALID [2018-11-23 12:14:22,815 INFO L273 TraceCheckUtils]: 165: Hoare triple {21883#false} assume !!(~i~1 < 40); {21883#false} is VALID [2018-11-23 12:14:22,815 INFO L273 TraceCheckUtils]: 166: Hoare triple {21883#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {21883#false} is VALID [2018-11-23 12:14:22,816 INFO L273 TraceCheckUtils]: 167: Hoare triple {21883#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {21883#false} is VALID [2018-11-23 12:14:22,816 INFO L273 TraceCheckUtils]: 168: Hoare triple {21883#false} assume !!(~i~1 < 40); {21883#false} is VALID [2018-11-23 12:14:22,816 INFO L273 TraceCheckUtils]: 169: Hoare triple {21883#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {21883#false} is VALID [2018-11-23 12:14:22,816 INFO L273 TraceCheckUtils]: 170: Hoare triple {21883#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {21883#false} is VALID [2018-11-23 12:14:22,816 INFO L273 TraceCheckUtils]: 171: Hoare triple {21883#false} assume !(~i~1 < 40); {21883#false} is VALID [2018-11-23 12:14:22,816 INFO L273 TraceCheckUtils]: 172: Hoare triple {21883#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {21883#false} is VALID [2018-11-23 12:14:22,816 INFO L273 TraceCheckUtils]: 173: Hoare triple {21883#false} assume true; {21883#false} is VALID [2018-11-23 12:14:22,816 INFO L268 TraceCheckUtils]: 174: Hoare quadruple {21883#false} {21883#false} #88#return; {21883#false} is VALID [2018-11-23 12:14:22,816 INFO L273 TraceCheckUtils]: 175: Hoare triple {21883#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {21883#false} is VALID [2018-11-23 12:14:22,817 INFO L273 TraceCheckUtils]: 176: Hoare triple {21883#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {21883#false} is VALID [2018-11-23 12:14:22,817 INFO L273 TraceCheckUtils]: 177: Hoare triple {21883#false} assume !false; {21883#false} is VALID [2018-11-23 12:14:22,829 INFO L134 CoverageAnalysis]: Checked inductivity of 1931 backedges. 780 proven. 64 refuted. 0 times theorem prover too weak. 1087 trivial. 0 not checked. [2018-11-23 12:14:22,848 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:14:22,849 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [11] total 11 [2018-11-23 12:14:22,849 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 178 [2018-11-23 12:14:22,849 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:14:22,850 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states. [2018-11-23 12:14:22,905 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 59 edges. 59 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:14:22,905 INFO L459 AbstractCegarLoop]: Interpolant automaton has 11 states [2018-11-23 12:14:22,905 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2018-11-23 12:14:22,906 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=55, Invalid=55, Unknown=0, NotChecked=0, Total=110 [2018-11-23 12:14:22,906 INFO L87 Difference]: Start difference. First operand 103 states and 114 transitions. Second operand 11 states. [2018-11-23 12:14:23,080 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:23,080 INFO L93 Difference]: Finished difference Result 150 states and 169 transitions. [2018-11-23 12:14:23,080 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2018-11-23 12:14:23,080 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 178 [2018-11-23 12:14:23,080 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:14:23,080 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2018-11-23 12:14:23,081 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 72 transitions. [2018-11-23 12:14:23,081 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2018-11-23 12:14:23,082 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 72 transitions. [2018-11-23 12:14:23,082 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 72 transitions. [2018-11-23 12:14:23,146 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-23 12:14:23,148 INFO L225 Difference]: With dead ends: 150 [2018-11-23 12:14:23,148 INFO L226 Difference]: Without dead ends: 106 [2018-11-23 12:14:23,149 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 177 GetRequests, 168 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=55, Invalid=55, Unknown=0, NotChecked=0, Total=110 [2018-11-23 12:14:23,149 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 106 states. [2018-11-23 12:14:23,186 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 106 to 105. [2018-11-23 12:14:23,186 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:14:23,186 INFO L82 GeneralOperation]: Start isEquivalent. First operand 106 states. Second operand 105 states. [2018-11-23 12:14:23,187 INFO L74 IsIncluded]: Start isIncluded. First operand 106 states. Second operand 105 states. [2018-11-23 12:14:23,187 INFO L87 Difference]: Start difference. First operand 106 states. Second operand 105 states. [2018-11-23 12:14:23,189 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:23,189 INFO L93 Difference]: Finished difference Result 106 states and 117 transitions. [2018-11-23 12:14:23,189 INFO L276 IsEmpty]: Start isEmpty. Operand 106 states and 117 transitions. [2018-11-23 12:14:23,190 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:14:23,190 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:14:23,190 INFO L74 IsIncluded]: Start isIncluded. First operand 105 states. Second operand 106 states. [2018-11-23 12:14:23,190 INFO L87 Difference]: Start difference. First operand 105 states. Second operand 106 states. [2018-11-23 12:14:23,191 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:23,191 INFO L93 Difference]: Finished difference Result 106 states and 117 transitions. [2018-11-23 12:14:23,191 INFO L276 IsEmpty]: Start isEmpty. Operand 106 states and 117 transitions. [2018-11-23 12:14:23,192 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:14:23,192 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:14:23,192 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:14:23,192 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:14:23,192 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 105 states. [2018-11-23 12:14:23,193 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 105 states to 105 states and 116 transitions. [2018-11-23 12:14:23,194 INFO L78 Accepts]: Start accepts. Automaton has 105 states and 116 transitions. Word has length 178 [2018-11-23 12:14:23,194 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:14:23,194 INFO L480 AbstractCegarLoop]: Abstraction has 105 states and 116 transitions. [2018-11-23 12:14:23,194 INFO L481 AbstractCegarLoop]: Interpolant automaton has 11 states. [2018-11-23 12:14:23,194 INFO L276 IsEmpty]: Start isEmpty. Operand 105 states and 116 transitions. [2018-11-23 12:14:23,195 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 181 [2018-11-23 12:14:23,195 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:14:23,196 INFO L402 BasicCegarLoop]: trace histogram [33, 33, 18, 15, 13, 13, 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, 1, 1, 1, 1, 1] [2018-11-23 12:14:23,196 INFO L423 AbstractCegarLoop]: === Iteration 33 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:14:23,196 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:14:23,196 INFO L82 PathProgramCache]: Analyzing trace with hash -1134372144, now seen corresponding path program 28 times [2018-11-23 12:14:23,196 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:14:23,196 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:14:23,197 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:14:23,197 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:14:23,197 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:14:23,209 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:14:23,209 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:14:23,209 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 34 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 34 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:14:23,226 INFO L103 rtionOrderModulation]: Keeping assertion order TERMS_WITH_SMALL_CONSTANTS_FIRST [2018-11-23 12:14:23,300 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2018-11-23 12:14:23,300 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:14:23,340 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:14:23,342 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:14:23,585 INFO L256 TraceCheckUtils]: 0: Hoare triple {22999#true} call ULTIMATE.init(); {22999#true} is VALID [2018-11-23 12:14:23,586 INFO L273 TraceCheckUtils]: 1: Hoare triple {22999#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {22999#true} is VALID [2018-11-23 12:14:23,586 INFO L273 TraceCheckUtils]: 2: Hoare triple {22999#true} assume true; {22999#true} is VALID [2018-11-23 12:14:23,586 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {22999#true} {22999#true} #78#return; {22999#true} is VALID [2018-11-23 12:14:23,586 INFO L256 TraceCheckUtils]: 4: Hoare triple {22999#true} call #t~ret12 := main(); {22999#true} is VALID [2018-11-23 12:14:23,586 INFO L273 TraceCheckUtils]: 5: Hoare triple {22999#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {22999#true} is VALID [2018-11-23 12:14:23,587 INFO L256 TraceCheckUtils]: 6: Hoare triple {22999#true} call init_nondet(~#x~0.base, ~#x~0.offset); {22999#true} is VALID [2018-11-23 12:14:23,587 INFO L273 TraceCheckUtils]: 7: Hoare triple {22999#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {22999#true} is VALID [2018-11-23 12:14:23,587 INFO L273 TraceCheckUtils]: 8: Hoare triple {22999#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {22999#true} is VALID [2018-11-23 12:14:23,587 INFO L273 TraceCheckUtils]: 9: Hoare triple {22999#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22999#true} is VALID [2018-11-23 12:14:23,587 INFO L273 TraceCheckUtils]: 10: Hoare triple {22999#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {22999#true} is VALID [2018-11-23 12:14:23,587 INFO L273 TraceCheckUtils]: 11: Hoare triple {22999#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22999#true} is VALID [2018-11-23 12:14:23,588 INFO L273 TraceCheckUtils]: 12: Hoare triple {22999#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {22999#true} is VALID [2018-11-23 12:14:23,588 INFO L273 TraceCheckUtils]: 13: Hoare triple {22999#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22999#true} is VALID [2018-11-23 12:14:23,588 INFO L273 TraceCheckUtils]: 14: Hoare triple {22999#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {22999#true} is VALID [2018-11-23 12:14:23,588 INFO L273 TraceCheckUtils]: 15: Hoare triple {22999#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22999#true} is VALID [2018-11-23 12:14:23,588 INFO L273 TraceCheckUtils]: 16: Hoare triple {22999#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {22999#true} is VALID [2018-11-23 12:14:23,589 INFO L273 TraceCheckUtils]: 17: Hoare triple {22999#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22999#true} is VALID [2018-11-23 12:14:23,589 INFO L273 TraceCheckUtils]: 18: Hoare triple {22999#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {22999#true} is VALID [2018-11-23 12:14:23,589 INFO L273 TraceCheckUtils]: 19: Hoare triple {22999#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22999#true} is VALID [2018-11-23 12:14:23,589 INFO L273 TraceCheckUtils]: 20: Hoare triple {22999#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {22999#true} is VALID [2018-11-23 12:14:23,589 INFO L273 TraceCheckUtils]: 21: Hoare triple {22999#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22999#true} is VALID [2018-11-23 12:14:23,589 INFO L273 TraceCheckUtils]: 22: Hoare triple {22999#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {22999#true} is VALID [2018-11-23 12:14:23,589 INFO L273 TraceCheckUtils]: 23: Hoare triple {22999#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22999#true} is VALID [2018-11-23 12:14:23,589 INFO L273 TraceCheckUtils]: 24: Hoare triple {22999#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {22999#true} is VALID [2018-11-23 12:14:23,589 INFO L273 TraceCheckUtils]: 25: Hoare triple {22999#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22999#true} is VALID [2018-11-23 12:14:23,590 INFO L273 TraceCheckUtils]: 26: Hoare triple {22999#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {22999#true} is VALID [2018-11-23 12:14:23,590 INFO L273 TraceCheckUtils]: 27: Hoare triple {22999#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22999#true} is VALID [2018-11-23 12:14:23,590 INFO L273 TraceCheckUtils]: 28: Hoare triple {22999#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {22999#true} is VALID [2018-11-23 12:14:23,590 INFO L273 TraceCheckUtils]: 29: Hoare triple {22999#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22999#true} is VALID [2018-11-23 12:14:23,590 INFO L273 TraceCheckUtils]: 30: Hoare triple {22999#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {22999#true} is VALID [2018-11-23 12:14:23,590 INFO L273 TraceCheckUtils]: 31: Hoare triple {22999#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22999#true} is VALID [2018-11-23 12:14:23,590 INFO L273 TraceCheckUtils]: 32: Hoare triple {22999#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {22999#true} is VALID [2018-11-23 12:14:23,590 INFO L273 TraceCheckUtils]: 33: Hoare triple {22999#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22999#true} is VALID [2018-11-23 12:14:23,590 INFO L273 TraceCheckUtils]: 34: Hoare triple {22999#true} assume !(~i~0 < 40); {22999#true} is VALID [2018-11-23 12:14:23,591 INFO L273 TraceCheckUtils]: 35: Hoare triple {22999#true} assume true; {22999#true} is VALID [2018-11-23 12:14:23,591 INFO L268 TraceCheckUtils]: 36: Hoare quadruple {22999#true} {22999#true} #82#return; {22999#true} is VALID [2018-11-23 12:14:23,591 INFO L273 TraceCheckUtils]: 37: Hoare triple {22999#true} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {22999#true} is VALID [2018-11-23 12:14:23,591 INFO L256 TraceCheckUtils]: 38: Hoare triple {22999#true} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {22999#true} is VALID [2018-11-23 12:14:23,591 INFO L273 TraceCheckUtils]: 39: Hoare triple {22999#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {22999#true} is VALID [2018-11-23 12:14:23,591 INFO L273 TraceCheckUtils]: 40: Hoare triple {22999#true} assume !!(~i~1 < 40); {22999#true} is VALID [2018-11-23 12:14:23,591 INFO L273 TraceCheckUtils]: 41: Hoare triple {22999#true} assume !(~i~1 > 20); {22999#true} is VALID [2018-11-23 12:14:23,591 INFO L273 TraceCheckUtils]: 42: Hoare triple {22999#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {22999#true} is VALID [2018-11-23 12:14:23,591 INFO L273 TraceCheckUtils]: 43: Hoare triple {22999#true} assume !!(~i~1 < 40); {22999#true} is VALID [2018-11-23 12:14:23,592 INFO L273 TraceCheckUtils]: 44: Hoare triple {22999#true} assume !(~i~1 > 20); {22999#true} is VALID [2018-11-23 12:14:23,592 INFO L273 TraceCheckUtils]: 45: Hoare triple {22999#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {22999#true} is VALID [2018-11-23 12:14:23,592 INFO L273 TraceCheckUtils]: 46: Hoare triple {22999#true} assume !!(~i~1 < 40); {22999#true} is VALID [2018-11-23 12:14:23,592 INFO L273 TraceCheckUtils]: 47: Hoare triple {22999#true} assume !(~i~1 > 20); {22999#true} is VALID [2018-11-23 12:14:23,592 INFO L273 TraceCheckUtils]: 48: Hoare triple {22999#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {22999#true} is VALID [2018-11-23 12:14:23,592 INFO L273 TraceCheckUtils]: 49: Hoare triple {22999#true} assume !!(~i~1 < 40); {22999#true} is VALID [2018-11-23 12:14:23,592 INFO L273 TraceCheckUtils]: 50: Hoare triple {22999#true} assume !(~i~1 > 20); {22999#true} is VALID [2018-11-23 12:14:23,592 INFO L273 TraceCheckUtils]: 51: Hoare triple {22999#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {22999#true} is VALID [2018-11-23 12:14:23,592 INFO L273 TraceCheckUtils]: 52: Hoare triple {22999#true} assume !!(~i~1 < 40); {22999#true} is VALID [2018-11-23 12:14:23,592 INFO L273 TraceCheckUtils]: 53: Hoare triple {22999#true} assume !(~i~1 > 20); {22999#true} is VALID [2018-11-23 12:14:23,593 INFO L273 TraceCheckUtils]: 54: Hoare triple {22999#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {22999#true} is VALID [2018-11-23 12:14:23,593 INFO L273 TraceCheckUtils]: 55: Hoare triple {22999#true} assume !!(~i~1 < 40); {22999#true} is VALID [2018-11-23 12:14:23,593 INFO L273 TraceCheckUtils]: 56: Hoare triple {22999#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {22999#true} is VALID [2018-11-23 12:14:23,593 INFO L273 TraceCheckUtils]: 57: Hoare triple {22999#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {22999#true} is VALID [2018-11-23 12:14:23,593 INFO L273 TraceCheckUtils]: 58: Hoare triple {22999#true} assume !!(~i~1 < 40); {22999#true} is VALID [2018-11-23 12:14:23,593 INFO L273 TraceCheckUtils]: 59: Hoare triple {22999#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {22999#true} is VALID [2018-11-23 12:14:23,593 INFO L273 TraceCheckUtils]: 60: Hoare triple {22999#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {22999#true} is VALID [2018-11-23 12:14:23,593 INFO L273 TraceCheckUtils]: 61: Hoare triple {22999#true} assume !!(~i~1 < 40); {22999#true} is VALID [2018-11-23 12:14:23,594 INFO L273 TraceCheckUtils]: 62: Hoare triple {22999#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {22999#true} is VALID [2018-11-23 12:14:23,594 INFO L273 TraceCheckUtils]: 63: Hoare triple {22999#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {22999#true} is VALID [2018-11-23 12:14:23,594 INFO L273 TraceCheckUtils]: 64: Hoare triple {22999#true} assume !!(~i~1 < 40); {22999#true} is VALID [2018-11-23 12:14:23,594 INFO L273 TraceCheckUtils]: 65: Hoare triple {22999#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {22999#true} is VALID [2018-11-23 12:14:23,594 INFO L273 TraceCheckUtils]: 66: Hoare triple {22999#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {22999#true} is VALID [2018-11-23 12:14:23,594 INFO L273 TraceCheckUtils]: 67: Hoare triple {22999#true} assume !!(~i~1 < 40); {22999#true} is VALID [2018-11-23 12:14:23,594 INFO L273 TraceCheckUtils]: 68: Hoare triple {22999#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {22999#true} is VALID [2018-11-23 12:14:23,595 INFO L273 TraceCheckUtils]: 69: Hoare triple {22999#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {22999#true} is VALID [2018-11-23 12:14:23,595 INFO L273 TraceCheckUtils]: 70: Hoare triple {22999#true} assume !!(~i~1 < 40); {22999#true} is VALID [2018-11-23 12:14:23,595 INFO L273 TraceCheckUtils]: 71: Hoare triple {22999#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {22999#true} is VALID [2018-11-23 12:14:23,595 INFO L273 TraceCheckUtils]: 72: Hoare triple {22999#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {22999#true} is VALID [2018-11-23 12:14:23,595 INFO L273 TraceCheckUtils]: 73: Hoare triple {22999#true} assume !(~i~1 < 40); {22999#true} is VALID [2018-11-23 12:14:23,595 INFO L273 TraceCheckUtils]: 74: Hoare triple {22999#true} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {22999#true} is VALID [2018-11-23 12:14:23,595 INFO L273 TraceCheckUtils]: 75: Hoare triple {22999#true} assume true; {22999#true} is VALID [2018-11-23 12:14:23,595 INFO L268 TraceCheckUtils]: 76: Hoare quadruple {22999#true} {22999#true} #84#return; {22999#true} is VALID [2018-11-23 12:14:23,595 INFO L273 TraceCheckUtils]: 77: Hoare triple {22999#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {22999#true} is VALID [2018-11-23 12:14:23,595 INFO L256 TraceCheckUtils]: 78: Hoare triple {22999#true} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {22999#true} is VALID [2018-11-23 12:14:23,596 INFO L273 TraceCheckUtils]: 79: Hoare triple {22999#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {22999#true} is VALID [2018-11-23 12:14:23,596 INFO L273 TraceCheckUtils]: 80: Hoare triple {22999#true} assume !!(~i~1 < 40); {22999#true} is VALID [2018-11-23 12:14:23,596 INFO L273 TraceCheckUtils]: 81: Hoare triple {22999#true} assume !(~i~1 > 20); {22999#true} is VALID [2018-11-23 12:14:23,596 INFO L273 TraceCheckUtils]: 82: Hoare triple {22999#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {22999#true} is VALID [2018-11-23 12:14:23,596 INFO L273 TraceCheckUtils]: 83: Hoare triple {22999#true} assume !!(~i~1 < 40); {22999#true} is VALID [2018-11-23 12:14:23,596 INFO L273 TraceCheckUtils]: 84: Hoare triple {22999#true} assume !(~i~1 > 20); {22999#true} is VALID [2018-11-23 12:14:23,596 INFO L273 TraceCheckUtils]: 85: Hoare triple {22999#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {22999#true} is VALID [2018-11-23 12:14:23,596 INFO L273 TraceCheckUtils]: 86: Hoare triple {22999#true} assume !!(~i~1 < 40); {22999#true} is VALID [2018-11-23 12:14:23,596 INFO L273 TraceCheckUtils]: 87: Hoare triple {22999#true} assume !(~i~1 > 20); {22999#true} is VALID [2018-11-23 12:14:23,597 INFO L273 TraceCheckUtils]: 88: Hoare triple {22999#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {22999#true} is VALID [2018-11-23 12:14:23,597 INFO L273 TraceCheckUtils]: 89: Hoare triple {22999#true} assume !!(~i~1 < 40); {22999#true} is VALID [2018-11-23 12:14:23,597 INFO L273 TraceCheckUtils]: 90: Hoare triple {22999#true} assume !(~i~1 > 20); {22999#true} is VALID [2018-11-23 12:14:23,597 INFO L273 TraceCheckUtils]: 91: Hoare triple {22999#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {22999#true} is VALID [2018-11-23 12:14:23,597 INFO L273 TraceCheckUtils]: 92: Hoare triple {22999#true} assume !!(~i~1 < 40); {22999#true} is VALID [2018-11-23 12:14:23,597 INFO L273 TraceCheckUtils]: 93: Hoare triple {22999#true} assume !(~i~1 > 20); {22999#true} is VALID [2018-11-23 12:14:23,597 INFO L273 TraceCheckUtils]: 94: Hoare triple {22999#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {22999#true} is VALID [2018-11-23 12:14:23,597 INFO L273 TraceCheckUtils]: 95: Hoare triple {22999#true} assume !!(~i~1 < 40); {22999#true} is VALID [2018-11-23 12:14:23,597 INFO L273 TraceCheckUtils]: 96: Hoare triple {22999#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {22999#true} is VALID [2018-11-23 12:14:23,598 INFO L273 TraceCheckUtils]: 97: Hoare triple {22999#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {22999#true} is VALID [2018-11-23 12:14:23,598 INFO L273 TraceCheckUtils]: 98: Hoare triple {22999#true} assume !!(~i~1 < 40); {22999#true} is VALID [2018-11-23 12:14:23,598 INFO L273 TraceCheckUtils]: 99: Hoare triple {22999#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {22999#true} is VALID [2018-11-23 12:14:23,598 INFO L273 TraceCheckUtils]: 100: Hoare triple {22999#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {22999#true} is VALID [2018-11-23 12:14:23,598 INFO L273 TraceCheckUtils]: 101: Hoare triple {22999#true} assume !!(~i~1 < 40); {22999#true} is VALID [2018-11-23 12:14:23,598 INFO L273 TraceCheckUtils]: 102: Hoare triple {22999#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {22999#true} is VALID [2018-11-23 12:14:23,598 INFO L273 TraceCheckUtils]: 103: Hoare triple {22999#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {22999#true} is VALID [2018-11-23 12:14:23,598 INFO L273 TraceCheckUtils]: 104: Hoare triple {22999#true} assume !!(~i~1 < 40); {22999#true} is VALID [2018-11-23 12:14:23,598 INFO L273 TraceCheckUtils]: 105: Hoare triple {22999#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {22999#true} is VALID [2018-11-23 12:14:23,598 INFO L273 TraceCheckUtils]: 106: Hoare triple {22999#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {22999#true} is VALID [2018-11-23 12:14:23,599 INFO L273 TraceCheckUtils]: 107: Hoare triple {22999#true} assume !!(~i~1 < 40); {22999#true} is VALID [2018-11-23 12:14:23,599 INFO L273 TraceCheckUtils]: 108: Hoare triple {22999#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {22999#true} is VALID [2018-11-23 12:14:23,599 INFO L273 TraceCheckUtils]: 109: Hoare triple {22999#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {22999#true} is VALID [2018-11-23 12:14:23,599 INFO L273 TraceCheckUtils]: 110: Hoare triple {22999#true} assume !!(~i~1 < 40); {22999#true} is VALID [2018-11-23 12:14:23,599 INFO L273 TraceCheckUtils]: 111: Hoare triple {22999#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {22999#true} is VALID [2018-11-23 12:14:23,599 INFO L273 TraceCheckUtils]: 112: Hoare triple {22999#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {22999#true} is VALID [2018-11-23 12:14:23,599 INFO L273 TraceCheckUtils]: 113: Hoare triple {22999#true} assume !(~i~1 < 40); {22999#true} is VALID [2018-11-23 12:14:23,599 INFO L273 TraceCheckUtils]: 114: Hoare triple {22999#true} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {22999#true} is VALID [2018-11-23 12:14:23,599 INFO L273 TraceCheckUtils]: 115: Hoare triple {22999#true} assume true; {22999#true} is VALID [2018-11-23 12:14:23,600 INFO L268 TraceCheckUtils]: 116: Hoare quadruple {22999#true} {22999#true} #86#return; {22999#true} is VALID [2018-11-23 12:14:23,600 INFO L273 TraceCheckUtils]: 117: Hoare triple {22999#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {22999#true} is VALID [2018-11-23 12:14:23,600 INFO L273 TraceCheckUtils]: 118: Hoare triple {22999#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {22999#true} is VALID [2018-11-23 12:14:23,600 INFO L273 TraceCheckUtils]: 119: Hoare triple {22999#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {22999#true} is VALID [2018-11-23 12:14:23,600 INFO L273 TraceCheckUtils]: 120: Hoare triple {22999#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {22999#true} is VALID [2018-11-23 12:14:23,600 INFO L273 TraceCheckUtils]: 121: Hoare triple {22999#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {22999#true} is VALID [2018-11-23 12:14:23,600 INFO L273 TraceCheckUtils]: 122: Hoare triple {22999#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {22999#true} is VALID [2018-11-23 12:14:23,600 INFO L273 TraceCheckUtils]: 123: Hoare triple {22999#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {22999#true} is VALID [2018-11-23 12:14:23,600 INFO L273 TraceCheckUtils]: 124: Hoare triple {22999#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {22999#true} is VALID [2018-11-23 12:14:23,601 INFO L273 TraceCheckUtils]: 125: Hoare triple {22999#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {22999#true} is VALID [2018-11-23 12:14:23,601 INFO L273 TraceCheckUtils]: 126: Hoare triple {22999#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {22999#true} is VALID [2018-11-23 12:14:23,601 INFO L273 TraceCheckUtils]: 127: Hoare triple {22999#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {22999#true} is VALID [2018-11-23 12:14:23,601 INFO L273 TraceCheckUtils]: 128: Hoare triple {22999#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {22999#true} is VALID [2018-11-23 12:14:23,601 INFO L273 TraceCheckUtils]: 129: Hoare triple {22999#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {22999#true} is VALID [2018-11-23 12:14:23,601 INFO L273 TraceCheckUtils]: 130: Hoare triple {22999#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {22999#true} is VALID [2018-11-23 12:14:23,601 INFO L273 TraceCheckUtils]: 131: Hoare triple {22999#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {22999#true} is VALID [2018-11-23 12:14:23,601 INFO L273 TraceCheckUtils]: 132: Hoare triple {22999#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {22999#true} is VALID [2018-11-23 12:14:23,601 INFO L273 TraceCheckUtils]: 133: Hoare triple {22999#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {22999#true} is VALID [2018-11-23 12:14:23,601 INFO L273 TraceCheckUtils]: 134: Hoare triple {22999#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {22999#true} is VALID [2018-11-23 12:14:23,602 INFO L273 TraceCheckUtils]: 135: Hoare triple {22999#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {22999#true} is VALID [2018-11-23 12:14:23,602 INFO L273 TraceCheckUtils]: 136: Hoare triple {22999#true} assume !(~i~2 < 39); {22999#true} is VALID [2018-11-23 12:14:23,602 INFO L273 TraceCheckUtils]: 137: Hoare triple {22999#true} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {22999#true} is VALID [2018-11-23 12:14:23,602 INFO L256 TraceCheckUtils]: 138: Hoare triple {22999#true} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {22999#true} is VALID [2018-11-23 12:14:23,602 INFO L273 TraceCheckUtils]: 139: Hoare triple {22999#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {23421#(<= rangesum_~i~1 0)} is VALID [2018-11-23 12:14:23,603 INFO L273 TraceCheckUtils]: 140: Hoare triple {23421#(<= rangesum_~i~1 0)} assume !!(~i~1 < 40); {23421#(<= rangesum_~i~1 0)} is VALID [2018-11-23 12:14:23,603 INFO L273 TraceCheckUtils]: 141: Hoare triple {23421#(<= rangesum_~i~1 0)} assume !(~i~1 > 20); {23421#(<= rangesum_~i~1 0)} is VALID [2018-11-23 12:14:23,604 INFO L273 TraceCheckUtils]: 142: Hoare triple {23421#(<= rangesum_~i~1 0)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {23431#(<= rangesum_~i~1 1)} is VALID [2018-11-23 12:14:23,604 INFO L273 TraceCheckUtils]: 143: Hoare triple {23431#(<= rangesum_~i~1 1)} assume !!(~i~1 < 40); {23431#(<= rangesum_~i~1 1)} is VALID [2018-11-23 12:14:23,604 INFO L273 TraceCheckUtils]: 144: Hoare triple {23431#(<= rangesum_~i~1 1)} assume !(~i~1 > 20); {23431#(<= rangesum_~i~1 1)} is VALID [2018-11-23 12:14:23,605 INFO L273 TraceCheckUtils]: 145: Hoare triple {23431#(<= rangesum_~i~1 1)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {23441#(<= rangesum_~i~1 2)} is VALID [2018-11-23 12:14:23,605 INFO L273 TraceCheckUtils]: 146: Hoare triple {23441#(<= rangesum_~i~1 2)} assume !!(~i~1 < 40); {23441#(<= rangesum_~i~1 2)} is VALID [2018-11-23 12:14:23,606 INFO L273 TraceCheckUtils]: 147: Hoare triple {23441#(<= rangesum_~i~1 2)} assume !(~i~1 > 20); {23441#(<= rangesum_~i~1 2)} is VALID [2018-11-23 12:14:23,606 INFO L273 TraceCheckUtils]: 148: Hoare triple {23441#(<= rangesum_~i~1 2)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {23451#(<= rangesum_~i~1 3)} is VALID [2018-11-23 12:14:23,607 INFO L273 TraceCheckUtils]: 149: Hoare triple {23451#(<= rangesum_~i~1 3)} assume !!(~i~1 < 40); {23451#(<= rangesum_~i~1 3)} is VALID [2018-11-23 12:14:23,607 INFO L273 TraceCheckUtils]: 150: Hoare triple {23451#(<= rangesum_~i~1 3)} assume !(~i~1 > 20); {23451#(<= rangesum_~i~1 3)} is VALID [2018-11-23 12:14:23,608 INFO L273 TraceCheckUtils]: 151: Hoare triple {23451#(<= rangesum_~i~1 3)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {23461#(<= rangesum_~i~1 4)} is VALID [2018-11-23 12:14:23,609 INFO L273 TraceCheckUtils]: 152: Hoare triple {23461#(<= rangesum_~i~1 4)} assume !!(~i~1 < 40); {23461#(<= rangesum_~i~1 4)} is VALID [2018-11-23 12:14:23,609 INFO L273 TraceCheckUtils]: 153: Hoare triple {23461#(<= rangesum_~i~1 4)} assume !(~i~1 > 20); {23461#(<= rangesum_~i~1 4)} is VALID [2018-11-23 12:14:23,610 INFO L273 TraceCheckUtils]: 154: Hoare triple {23461#(<= rangesum_~i~1 4)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {23471#(<= rangesum_~i~1 5)} is VALID [2018-11-23 12:14:23,611 INFO L273 TraceCheckUtils]: 155: Hoare triple {23471#(<= rangesum_~i~1 5)} assume !!(~i~1 < 40); {23471#(<= rangesum_~i~1 5)} is VALID [2018-11-23 12:14:23,612 INFO L273 TraceCheckUtils]: 156: Hoare triple {23471#(<= rangesum_~i~1 5)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {23000#false} is VALID [2018-11-23 12:14:23,612 INFO L273 TraceCheckUtils]: 157: Hoare triple {23000#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {23000#false} is VALID [2018-11-23 12:14:23,612 INFO L273 TraceCheckUtils]: 158: Hoare triple {23000#false} assume !!(~i~1 < 40); {23000#false} is VALID [2018-11-23 12:14:23,612 INFO L273 TraceCheckUtils]: 159: Hoare triple {23000#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {23000#false} is VALID [2018-11-23 12:14:23,612 INFO L273 TraceCheckUtils]: 160: Hoare triple {23000#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {23000#false} is VALID [2018-11-23 12:14:23,613 INFO L273 TraceCheckUtils]: 161: Hoare triple {23000#false} assume !!(~i~1 < 40); {23000#false} is VALID [2018-11-23 12:14:23,613 INFO L273 TraceCheckUtils]: 162: Hoare triple {23000#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {23000#false} is VALID [2018-11-23 12:14:23,613 INFO L273 TraceCheckUtils]: 163: Hoare triple {23000#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {23000#false} is VALID [2018-11-23 12:14:23,613 INFO L273 TraceCheckUtils]: 164: Hoare triple {23000#false} assume !!(~i~1 < 40); {23000#false} is VALID [2018-11-23 12:14:23,613 INFO L273 TraceCheckUtils]: 165: Hoare triple {23000#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {23000#false} is VALID [2018-11-23 12:14:23,613 INFO L273 TraceCheckUtils]: 166: Hoare triple {23000#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {23000#false} is VALID [2018-11-23 12:14:23,614 INFO L273 TraceCheckUtils]: 167: Hoare triple {23000#false} assume !!(~i~1 < 40); {23000#false} is VALID [2018-11-23 12:14:23,614 INFO L273 TraceCheckUtils]: 168: Hoare triple {23000#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {23000#false} is VALID [2018-11-23 12:14:23,614 INFO L273 TraceCheckUtils]: 169: Hoare triple {23000#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {23000#false} is VALID [2018-11-23 12:14:23,614 INFO L273 TraceCheckUtils]: 170: Hoare triple {23000#false} assume !!(~i~1 < 40); {23000#false} is VALID [2018-11-23 12:14:23,614 INFO L273 TraceCheckUtils]: 171: Hoare triple {23000#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {23000#false} is VALID [2018-11-23 12:14:23,614 INFO L273 TraceCheckUtils]: 172: Hoare triple {23000#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {23000#false} is VALID [2018-11-23 12:14:23,614 INFO L273 TraceCheckUtils]: 173: Hoare triple {23000#false} assume !(~i~1 < 40); {23000#false} is VALID [2018-11-23 12:14:23,614 INFO L273 TraceCheckUtils]: 174: Hoare triple {23000#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {23000#false} is VALID [2018-11-23 12:14:23,614 INFO L273 TraceCheckUtils]: 175: Hoare triple {23000#false} assume true; {23000#false} is VALID [2018-11-23 12:14:23,615 INFO L268 TraceCheckUtils]: 176: Hoare quadruple {23000#false} {22999#true} #88#return; {23000#false} is VALID [2018-11-23 12:14:23,615 INFO L273 TraceCheckUtils]: 177: Hoare triple {23000#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {23000#false} is VALID [2018-11-23 12:14:23,615 INFO L273 TraceCheckUtils]: 178: Hoare triple {23000#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {23000#false} is VALID [2018-11-23 12:14:23,615 INFO L273 TraceCheckUtils]: 179: Hoare triple {23000#false} assume !false; {23000#false} is VALID [2018-11-23 12:14:23,627 INFO L134 CoverageAnalysis]: Checked inductivity of 1948 backedges. 874 proven. 40 refuted. 0 times theorem prover too weak. 1034 trivial. 0 not checked. [2018-11-23 12:14:23,646 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:14:23,646 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [8] total 8 [2018-11-23 12:14:23,647 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 180 [2018-11-23 12:14:23,647 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:14:23,647 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states. [2018-11-23 12:14:23,702 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-23 12:14:23,703 INFO L459 AbstractCegarLoop]: Interpolant automaton has 8 states [2018-11-23 12:14:23,703 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2018-11-23 12:14:23,703 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=28, Invalid=28, Unknown=0, NotChecked=0, Total=56 [2018-11-23 12:14:23,703 INFO L87 Difference]: Start difference. First operand 105 states and 116 transitions. Second operand 8 states. [2018-11-23 12:14:23,907 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:23,907 INFO L93 Difference]: Finished difference Result 175 states and 199 transitions. [2018-11-23 12:14:23,907 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2018-11-23 12:14:23,907 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 180 [2018-11-23 12:14:23,907 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:14:23,907 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2018-11-23 12:14:23,908 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 82 transitions. [2018-11-23 12:14:23,908 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2018-11-23 12:14:23,909 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 82 transitions. [2018-11-23 12:14:23,909 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 82 transitions. [2018-11-23 12:14:24,001 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-23 12:14:24,004 INFO L225 Difference]: With dead ends: 175 [2018-11-23 12:14:24,004 INFO L226 Difference]: Without dead ends: 109 [2018-11-23 12:14:24,004 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 179 GetRequests, 173 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=28, Invalid=28, Unknown=0, NotChecked=0, Total=56 [2018-11-23 12:14:24,005 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 109 states. [2018-11-23 12:14:24,070 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 109 to 108. [2018-11-23 12:14:24,070 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:14:24,070 INFO L82 GeneralOperation]: Start isEquivalent. First operand 109 states. Second operand 108 states. [2018-11-23 12:14:24,070 INFO L74 IsIncluded]: Start isIncluded. First operand 109 states. Second operand 108 states. [2018-11-23 12:14:24,071 INFO L87 Difference]: Start difference. First operand 109 states. Second operand 108 states. [2018-11-23 12:14:24,073 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:24,074 INFO L93 Difference]: Finished difference Result 109 states and 120 transitions. [2018-11-23 12:14:24,074 INFO L276 IsEmpty]: Start isEmpty. Operand 109 states and 120 transitions. [2018-11-23 12:14:24,074 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:14:24,074 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:14:24,074 INFO L74 IsIncluded]: Start isIncluded. First operand 108 states. Second operand 109 states. [2018-11-23 12:14:24,074 INFO L87 Difference]: Start difference. First operand 108 states. Second operand 109 states. [2018-11-23 12:14:24,076 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:24,076 INFO L93 Difference]: Finished difference Result 109 states and 120 transitions. [2018-11-23 12:14:24,076 INFO L276 IsEmpty]: Start isEmpty. Operand 109 states and 120 transitions. [2018-11-23 12:14:24,076 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:14:24,076 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:14:24,076 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:14:24,076 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:14:24,077 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 108 states. [2018-11-23 12:14:24,078 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 108 states to 108 states and 119 transitions. [2018-11-23 12:14:24,078 INFO L78 Accepts]: Start accepts. Automaton has 108 states and 119 transitions. Word has length 180 [2018-11-23 12:14:24,078 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:14:24,078 INFO L480 AbstractCegarLoop]: Abstraction has 108 states and 119 transitions. [2018-11-23 12:14:24,078 INFO L481 AbstractCegarLoop]: Interpolant automaton has 8 states. [2018-11-23 12:14:24,078 INFO L276 IsEmpty]: Start isEmpty. Operand 108 states and 119 transitions. [2018-11-23 12:14:24,079 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 190 [2018-11-23 12:14:24,079 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:14:24,079 INFO L402 BasicCegarLoop]: trace histogram [36, 36, 18, 18, 13, 13, 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, 1, 1, 1, 1, 1] [2018-11-23 12:14:24,080 INFO L423 AbstractCegarLoop]: === Iteration 34 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:14:24,080 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:14:24,080 INFO L82 PathProgramCache]: Analyzing trace with hash 948113612, now seen corresponding path program 29 times [2018-11-23 12:14:24,080 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:14:24,080 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:14:24,081 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:14:24,081 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:14:24,081 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:14:24,091 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:14:24,091 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:14:24,091 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 35 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 35 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:14:24,106 INFO L103 rtionOrderModulation]: Keeping assertion order INSIDE_LOOP_FIRST1 [2018-11-23 12:14:24,185 INFO L249 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 8 check-sat command(s) [2018-11-23 12:14:24,185 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:14:24,216 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:14:24,219 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:14:24,683 INFO L256 TraceCheckUtils]: 0: Hoare triple {24166#true} call ULTIMATE.init(); {24166#true} is VALID [2018-11-23 12:14:24,683 INFO L273 TraceCheckUtils]: 1: Hoare triple {24166#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {24166#true} is VALID [2018-11-23 12:14:24,683 INFO L273 TraceCheckUtils]: 2: Hoare triple {24166#true} assume true; {24166#true} is VALID [2018-11-23 12:14:24,683 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {24166#true} {24166#true} #78#return; {24166#true} is VALID [2018-11-23 12:14:24,683 INFO L256 TraceCheckUtils]: 4: Hoare triple {24166#true} call #t~ret12 := main(); {24166#true} is VALID [2018-11-23 12:14:24,684 INFO L273 TraceCheckUtils]: 5: Hoare triple {24166#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {24166#true} is VALID [2018-11-23 12:14:24,684 INFO L256 TraceCheckUtils]: 6: Hoare triple {24166#true} call init_nondet(~#x~0.base, ~#x~0.offset); {24166#true} is VALID [2018-11-23 12:14:24,684 INFO L273 TraceCheckUtils]: 7: Hoare triple {24166#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {24166#true} is VALID [2018-11-23 12:14:24,684 INFO L273 TraceCheckUtils]: 8: Hoare triple {24166#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {24166#true} is VALID [2018-11-23 12:14:24,684 INFO L273 TraceCheckUtils]: 9: Hoare triple {24166#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {24166#true} is VALID [2018-11-23 12:14:24,684 INFO L273 TraceCheckUtils]: 10: Hoare triple {24166#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {24166#true} is VALID [2018-11-23 12:14:24,684 INFO L273 TraceCheckUtils]: 11: Hoare triple {24166#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {24166#true} is VALID [2018-11-23 12:14:24,684 INFO L273 TraceCheckUtils]: 12: Hoare triple {24166#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {24166#true} is VALID [2018-11-23 12:14:24,684 INFO L273 TraceCheckUtils]: 13: Hoare triple {24166#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {24166#true} is VALID [2018-11-23 12:14:24,684 INFO L273 TraceCheckUtils]: 14: Hoare triple {24166#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {24166#true} is VALID [2018-11-23 12:14:24,685 INFO L273 TraceCheckUtils]: 15: Hoare triple {24166#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {24166#true} is VALID [2018-11-23 12:14:24,685 INFO L273 TraceCheckUtils]: 16: Hoare triple {24166#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {24166#true} is VALID [2018-11-23 12:14:24,685 INFO L273 TraceCheckUtils]: 17: Hoare triple {24166#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {24166#true} is VALID [2018-11-23 12:14:24,685 INFO L273 TraceCheckUtils]: 18: Hoare triple {24166#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {24166#true} is VALID [2018-11-23 12:14:24,685 INFO L273 TraceCheckUtils]: 19: Hoare triple {24166#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {24166#true} is VALID [2018-11-23 12:14:24,685 INFO L273 TraceCheckUtils]: 20: Hoare triple {24166#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {24166#true} is VALID [2018-11-23 12:14:24,685 INFO L273 TraceCheckUtils]: 21: Hoare triple {24166#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {24166#true} is VALID [2018-11-23 12:14:24,685 INFO L273 TraceCheckUtils]: 22: Hoare triple {24166#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {24166#true} is VALID [2018-11-23 12:14:24,685 INFO L273 TraceCheckUtils]: 23: Hoare triple {24166#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {24166#true} is VALID [2018-11-23 12:14:24,686 INFO L273 TraceCheckUtils]: 24: Hoare triple {24166#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {24166#true} is VALID [2018-11-23 12:14:24,686 INFO L273 TraceCheckUtils]: 25: Hoare triple {24166#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {24166#true} is VALID [2018-11-23 12:14:24,686 INFO L273 TraceCheckUtils]: 26: Hoare triple {24166#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {24166#true} is VALID [2018-11-23 12:14:24,686 INFO L273 TraceCheckUtils]: 27: Hoare triple {24166#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {24166#true} is VALID [2018-11-23 12:14:24,686 INFO L273 TraceCheckUtils]: 28: Hoare triple {24166#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {24166#true} is VALID [2018-11-23 12:14:24,686 INFO L273 TraceCheckUtils]: 29: Hoare triple {24166#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {24166#true} is VALID [2018-11-23 12:14:24,686 INFO L273 TraceCheckUtils]: 30: Hoare triple {24166#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {24166#true} is VALID [2018-11-23 12:14:24,686 INFO L273 TraceCheckUtils]: 31: Hoare triple {24166#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {24166#true} is VALID [2018-11-23 12:14:24,686 INFO L273 TraceCheckUtils]: 32: Hoare triple {24166#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {24166#true} is VALID [2018-11-23 12:14:24,687 INFO L273 TraceCheckUtils]: 33: Hoare triple {24166#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {24166#true} is VALID [2018-11-23 12:14:24,687 INFO L273 TraceCheckUtils]: 34: Hoare triple {24166#true} assume !(~i~0 < 40); {24166#true} is VALID [2018-11-23 12:14:24,687 INFO L273 TraceCheckUtils]: 35: Hoare triple {24166#true} assume true; {24166#true} is VALID [2018-11-23 12:14:24,687 INFO L268 TraceCheckUtils]: 36: Hoare quadruple {24166#true} {24166#true} #82#return; {24166#true} is VALID [2018-11-23 12:14:24,687 INFO L273 TraceCheckUtils]: 37: Hoare triple {24166#true} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {24166#true} is VALID [2018-11-23 12:14:24,687 INFO L256 TraceCheckUtils]: 38: Hoare triple {24166#true} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {24166#true} is VALID [2018-11-23 12:14:24,687 INFO L273 TraceCheckUtils]: 39: Hoare triple {24166#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {24166#true} is VALID [2018-11-23 12:14:24,687 INFO L273 TraceCheckUtils]: 40: Hoare triple {24166#true} assume !!(~i~1 < 40); {24166#true} is VALID [2018-11-23 12:14:24,687 INFO L273 TraceCheckUtils]: 41: Hoare triple {24166#true} assume !(~i~1 > 20); {24166#true} is VALID [2018-11-23 12:14:24,688 INFO L273 TraceCheckUtils]: 42: Hoare triple {24166#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {24166#true} is VALID [2018-11-23 12:14:24,688 INFO L273 TraceCheckUtils]: 43: Hoare triple {24166#true} assume !!(~i~1 < 40); {24166#true} is VALID [2018-11-23 12:14:24,688 INFO L273 TraceCheckUtils]: 44: Hoare triple {24166#true} assume !(~i~1 > 20); {24166#true} is VALID [2018-11-23 12:14:24,688 INFO L273 TraceCheckUtils]: 45: Hoare triple {24166#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {24166#true} is VALID [2018-11-23 12:14:24,688 INFO L273 TraceCheckUtils]: 46: Hoare triple {24166#true} assume !!(~i~1 < 40); {24166#true} is VALID [2018-11-23 12:14:24,688 INFO L273 TraceCheckUtils]: 47: Hoare triple {24166#true} assume !(~i~1 > 20); {24166#true} is VALID [2018-11-23 12:14:24,688 INFO L273 TraceCheckUtils]: 48: Hoare triple {24166#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {24166#true} is VALID [2018-11-23 12:14:24,688 INFO L273 TraceCheckUtils]: 49: Hoare triple {24166#true} assume !!(~i~1 < 40); {24166#true} is VALID [2018-11-23 12:14:24,688 INFO L273 TraceCheckUtils]: 50: Hoare triple {24166#true} assume !(~i~1 > 20); {24166#true} is VALID [2018-11-23 12:14:24,689 INFO L273 TraceCheckUtils]: 51: Hoare triple {24166#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {24166#true} is VALID [2018-11-23 12:14:24,689 INFO L273 TraceCheckUtils]: 52: Hoare triple {24166#true} assume !!(~i~1 < 40); {24166#true} is VALID [2018-11-23 12:14:24,689 INFO L273 TraceCheckUtils]: 53: Hoare triple {24166#true} assume !(~i~1 > 20); {24166#true} is VALID [2018-11-23 12:14:24,689 INFO L273 TraceCheckUtils]: 54: Hoare triple {24166#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {24166#true} is VALID [2018-11-23 12:14:24,689 INFO L273 TraceCheckUtils]: 55: Hoare triple {24166#true} assume !!(~i~1 < 40); {24166#true} is VALID [2018-11-23 12:14:24,689 INFO L273 TraceCheckUtils]: 56: Hoare triple {24166#true} assume !(~i~1 > 20); {24339#(<= rangesum_~i~1 20)} is VALID [2018-11-23 12:14:24,690 INFO L273 TraceCheckUtils]: 57: Hoare triple {24339#(<= rangesum_~i~1 20)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {24343#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:14:24,691 INFO L273 TraceCheckUtils]: 58: Hoare triple {24343#(<= rangesum_~i~1 21)} assume !!(~i~1 < 40); {24343#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:14:24,691 INFO L273 TraceCheckUtils]: 59: Hoare triple {24343#(<= rangesum_~i~1 21)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {24343#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:14:24,693 INFO L273 TraceCheckUtils]: 60: Hoare triple {24343#(<= rangesum_~i~1 21)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {24353#(<= rangesum_~i~1 22)} is VALID [2018-11-23 12:14:24,693 INFO L273 TraceCheckUtils]: 61: Hoare triple {24353#(<= rangesum_~i~1 22)} assume !!(~i~1 < 40); {24353#(<= rangesum_~i~1 22)} is VALID [2018-11-23 12:14:24,695 INFO L273 TraceCheckUtils]: 62: Hoare triple {24353#(<= rangesum_~i~1 22)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {24353#(<= rangesum_~i~1 22)} is VALID [2018-11-23 12:14:24,696 INFO L273 TraceCheckUtils]: 63: Hoare triple {24353#(<= rangesum_~i~1 22)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {24363#(<= rangesum_~i~1 23)} is VALID [2018-11-23 12:14:24,697 INFO L273 TraceCheckUtils]: 64: Hoare triple {24363#(<= rangesum_~i~1 23)} assume !!(~i~1 < 40); {24363#(<= rangesum_~i~1 23)} is VALID [2018-11-23 12:14:24,700 INFO L273 TraceCheckUtils]: 65: Hoare triple {24363#(<= rangesum_~i~1 23)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {24363#(<= rangesum_~i~1 23)} is VALID [2018-11-23 12:14:24,701 INFO L273 TraceCheckUtils]: 66: Hoare triple {24363#(<= rangesum_~i~1 23)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {24373#(<= rangesum_~i~1 24)} is VALID [2018-11-23 12:14:24,702 INFO L273 TraceCheckUtils]: 67: Hoare triple {24373#(<= rangesum_~i~1 24)} assume !!(~i~1 < 40); {24373#(<= rangesum_~i~1 24)} is VALID [2018-11-23 12:14:24,702 INFO L273 TraceCheckUtils]: 68: Hoare triple {24373#(<= rangesum_~i~1 24)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {24373#(<= rangesum_~i~1 24)} is VALID [2018-11-23 12:14:24,704 INFO L273 TraceCheckUtils]: 69: Hoare triple {24373#(<= rangesum_~i~1 24)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {24383#(<= rangesum_~i~1 25)} is VALID [2018-11-23 12:14:24,704 INFO L273 TraceCheckUtils]: 70: Hoare triple {24383#(<= rangesum_~i~1 25)} assume !!(~i~1 < 40); {24383#(<= rangesum_~i~1 25)} is VALID [2018-11-23 12:14:24,706 INFO L273 TraceCheckUtils]: 71: Hoare triple {24383#(<= rangesum_~i~1 25)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {24383#(<= rangesum_~i~1 25)} is VALID [2018-11-23 12:14:24,706 INFO L273 TraceCheckUtils]: 72: Hoare triple {24383#(<= rangesum_~i~1 25)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {24393#(<= rangesum_~i~1 26)} is VALID [2018-11-23 12:14:24,709 INFO L273 TraceCheckUtils]: 73: Hoare triple {24393#(<= rangesum_~i~1 26)} assume !!(~i~1 < 40); {24393#(<= rangesum_~i~1 26)} is VALID [2018-11-23 12:14:24,709 INFO L273 TraceCheckUtils]: 74: Hoare triple {24393#(<= rangesum_~i~1 26)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {24393#(<= rangesum_~i~1 26)} is VALID [2018-11-23 12:14:24,712 INFO L273 TraceCheckUtils]: 75: Hoare triple {24393#(<= rangesum_~i~1 26)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {24403#(<= rangesum_~i~1 27)} is VALID [2018-11-23 12:14:24,712 INFO L273 TraceCheckUtils]: 76: Hoare triple {24403#(<= rangesum_~i~1 27)} assume !(~i~1 < 40); {24167#false} is VALID [2018-11-23 12:14:24,712 INFO L273 TraceCheckUtils]: 77: Hoare triple {24167#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {24167#false} is VALID [2018-11-23 12:14:24,712 INFO L273 TraceCheckUtils]: 78: Hoare triple {24167#false} assume true; {24167#false} is VALID [2018-11-23 12:14:24,712 INFO L268 TraceCheckUtils]: 79: Hoare quadruple {24167#false} {24166#true} #84#return; {24167#false} is VALID [2018-11-23 12:14:24,713 INFO L273 TraceCheckUtils]: 80: Hoare triple {24167#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {24167#false} is VALID [2018-11-23 12:14:24,713 INFO L256 TraceCheckUtils]: 81: Hoare triple {24167#false} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {24167#false} is VALID [2018-11-23 12:14:24,713 INFO L273 TraceCheckUtils]: 82: Hoare triple {24167#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {24167#false} is VALID [2018-11-23 12:14:24,713 INFO L273 TraceCheckUtils]: 83: Hoare triple {24167#false} assume !!(~i~1 < 40); {24167#false} is VALID [2018-11-23 12:14:24,713 INFO L273 TraceCheckUtils]: 84: Hoare triple {24167#false} assume !(~i~1 > 20); {24167#false} is VALID [2018-11-23 12:14:24,713 INFO L273 TraceCheckUtils]: 85: Hoare triple {24167#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {24167#false} is VALID [2018-11-23 12:14:24,713 INFO L273 TraceCheckUtils]: 86: Hoare triple {24167#false} assume !!(~i~1 < 40); {24167#false} is VALID [2018-11-23 12:14:24,714 INFO L273 TraceCheckUtils]: 87: Hoare triple {24167#false} assume !(~i~1 > 20); {24167#false} is VALID [2018-11-23 12:14:24,714 INFO L273 TraceCheckUtils]: 88: Hoare triple {24167#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {24167#false} is VALID [2018-11-23 12:14:24,714 INFO L273 TraceCheckUtils]: 89: Hoare triple {24167#false} assume !!(~i~1 < 40); {24167#false} is VALID [2018-11-23 12:14:24,714 INFO L273 TraceCheckUtils]: 90: Hoare triple {24167#false} assume !(~i~1 > 20); {24167#false} is VALID [2018-11-23 12:14:24,715 INFO L273 TraceCheckUtils]: 91: Hoare triple {24167#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {24167#false} is VALID [2018-11-23 12:14:24,715 INFO L273 TraceCheckUtils]: 92: Hoare triple {24167#false} assume !!(~i~1 < 40); {24167#false} is VALID [2018-11-23 12:14:24,715 INFO L273 TraceCheckUtils]: 93: Hoare triple {24167#false} assume !(~i~1 > 20); {24167#false} is VALID [2018-11-23 12:14:24,715 INFO L273 TraceCheckUtils]: 94: Hoare triple {24167#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {24167#false} is VALID [2018-11-23 12:14:24,716 INFO L273 TraceCheckUtils]: 95: Hoare triple {24167#false} assume !!(~i~1 < 40); {24167#false} is VALID [2018-11-23 12:14:24,716 INFO L273 TraceCheckUtils]: 96: Hoare triple {24167#false} assume !(~i~1 > 20); {24167#false} is VALID [2018-11-23 12:14:24,716 INFO L273 TraceCheckUtils]: 97: Hoare triple {24167#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {24167#false} is VALID [2018-11-23 12:14:24,717 INFO L273 TraceCheckUtils]: 98: Hoare triple {24167#false} assume !!(~i~1 < 40); {24167#false} is VALID [2018-11-23 12:14:24,717 INFO L273 TraceCheckUtils]: 99: Hoare triple {24167#false} assume !(~i~1 > 20); {24167#false} is VALID [2018-11-23 12:14:24,717 INFO L273 TraceCheckUtils]: 100: Hoare triple {24167#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {24167#false} is VALID [2018-11-23 12:14:24,717 INFO L273 TraceCheckUtils]: 101: Hoare triple {24167#false} assume !!(~i~1 < 40); {24167#false} is VALID [2018-11-23 12:14:24,717 INFO L273 TraceCheckUtils]: 102: Hoare triple {24167#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {24167#false} is VALID [2018-11-23 12:14:24,717 INFO L273 TraceCheckUtils]: 103: Hoare triple {24167#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {24167#false} is VALID [2018-11-23 12:14:24,718 INFO L273 TraceCheckUtils]: 104: Hoare triple {24167#false} assume !!(~i~1 < 40); {24167#false} is VALID [2018-11-23 12:14:24,718 INFO L273 TraceCheckUtils]: 105: Hoare triple {24167#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {24167#false} is VALID [2018-11-23 12:14:24,718 INFO L273 TraceCheckUtils]: 106: Hoare triple {24167#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {24167#false} is VALID [2018-11-23 12:14:24,718 INFO L273 TraceCheckUtils]: 107: Hoare triple {24167#false} assume !!(~i~1 < 40); {24167#false} is VALID [2018-11-23 12:14:24,718 INFO L273 TraceCheckUtils]: 108: Hoare triple {24167#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {24167#false} is VALID [2018-11-23 12:14:24,718 INFO L273 TraceCheckUtils]: 109: Hoare triple {24167#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {24167#false} is VALID [2018-11-23 12:14:24,719 INFO L273 TraceCheckUtils]: 110: Hoare triple {24167#false} assume !!(~i~1 < 40); {24167#false} is VALID [2018-11-23 12:14:24,719 INFO L273 TraceCheckUtils]: 111: Hoare triple {24167#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {24167#false} is VALID [2018-11-23 12:14:24,719 INFO L273 TraceCheckUtils]: 112: Hoare triple {24167#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {24167#false} is VALID [2018-11-23 12:14:24,719 INFO L273 TraceCheckUtils]: 113: Hoare triple {24167#false} assume !!(~i~1 < 40); {24167#false} is VALID [2018-11-23 12:14:24,719 INFO L273 TraceCheckUtils]: 114: Hoare triple {24167#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {24167#false} is VALID [2018-11-23 12:14:24,719 INFO L273 TraceCheckUtils]: 115: Hoare triple {24167#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {24167#false} is VALID [2018-11-23 12:14:24,719 INFO L273 TraceCheckUtils]: 116: Hoare triple {24167#false} assume !!(~i~1 < 40); {24167#false} is VALID [2018-11-23 12:14:24,720 INFO L273 TraceCheckUtils]: 117: Hoare triple {24167#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {24167#false} is VALID [2018-11-23 12:14:24,720 INFO L273 TraceCheckUtils]: 118: Hoare triple {24167#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {24167#false} is VALID [2018-11-23 12:14:24,720 INFO L273 TraceCheckUtils]: 119: Hoare triple {24167#false} assume !(~i~1 < 40); {24167#false} is VALID [2018-11-23 12:14:24,720 INFO L273 TraceCheckUtils]: 120: Hoare triple {24167#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {24167#false} is VALID [2018-11-23 12:14:24,720 INFO L273 TraceCheckUtils]: 121: Hoare triple {24167#false} assume true; {24167#false} is VALID [2018-11-23 12:14:24,720 INFO L268 TraceCheckUtils]: 122: Hoare quadruple {24167#false} {24167#false} #86#return; {24167#false} is VALID [2018-11-23 12:14:24,721 INFO L273 TraceCheckUtils]: 123: Hoare triple {24167#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {24167#false} is VALID [2018-11-23 12:14:24,721 INFO L273 TraceCheckUtils]: 124: Hoare triple {24167#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {24167#false} is VALID [2018-11-23 12:14:24,721 INFO L273 TraceCheckUtils]: 125: Hoare triple {24167#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {24167#false} is VALID [2018-11-23 12:14:24,721 INFO L273 TraceCheckUtils]: 126: Hoare triple {24167#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {24167#false} is VALID [2018-11-23 12:14:24,721 INFO L273 TraceCheckUtils]: 127: Hoare triple {24167#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {24167#false} is VALID [2018-11-23 12:14:24,721 INFO L273 TraceCheckUtils]: 128: Hoare triple {24167#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {24167#false} is VALID [2018-11-23 12:14:24,722 INFO L273 TraceCheckUtils]: 129: Hoare triple {24167#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {24167#false} is VALID [2018-11-23 12:14:24,722 INFO L273 TraceCheckUtils]: 130: Hoare triple {24167#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {24167#false} is VALID [2018-11-23 12:14:24,722 INFO L273 TraceCheckUtils]: 131: Hoare triple {24167#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {24167#false} is VALID [2018-11-23 12:14:24,722 INFO L273 TraceCheckUtils]: 132: Hoare triple {24167#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {24167#false} is VALID [2018-11-23 12:14:24,722 INFO L273 TraceCheckUtils]: 133: Hoare triple {24167#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {24167#false} is VALID [2018-11-23 12:14:24,722 INFO L273 TraceCheckUtils]: 134: Hoare triple {24167#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {24167#false} is VALID [2018-11-23 12:14:24,722 INFO L273 TraceCheckUtils]: 135: Hoare triple {24167#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {24167#false} is VALID [2018-11-23 12:14:24,723 INFO L273 TraceCheckUtils]: 136: Hoare triple {24167#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {24167#false} is VALID [2018-11-23 12:14:24,723 INFO L273 TraceCheckUtils]: 137: Hoare triple {24167#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {24167#false} is VALID [2018-11-23 12:14:24,723 INFO L273 TraceCheckUtils]: 138: Hoare triple {24167#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {24167#false} is VALID [2018-11-23 12:14:24,723 INFO L273 TraceCheckUtils]: 139: Hoare triple {24167#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {24167#false} is VALID [2018-11-23 12:14:24,723 INFO L273 TraceCheckUtils]: 140: Hoare triple {24167#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {24167#false} is VALID [2018-11-23 12:14:24,723 INFO L273 TraceCheckUtils]: 141: Hoare triple {24167#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {24167#false} is VALID [2018-11-23 12:14:24,724 INFO L273 TraceCheckUtils]: 142: Hoare triple {24167#false} assume !(~i~2 < 39); {24167#false} is VALID [2018-11-23 12:14:24,724 INFO L273 TraceCheckUtils]: 143: Hoare triple {24167#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {24167#false} is VALID [2018-11-23 12:14:24,724 INFO L256 TraceCheckUtils]: 144: Hoare triple {24167#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {24167#false} is VALID [2018-11-23 12:14:24,724 INFO L273 TraceCheckUtils]: 145: Hoare triple {24167#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {24167#false} is VALID [2018-11-23 12:14:24,724 INFO L273 TraceCheckUtils]: 146: Hoare triple {24167#false} assume !!(~i~1 < 40); {24167#false} is VALID [2018-11-23 12:14:24,724 INFO L273 TraceCheckUtils]: 147: Hoare triple {24167#false} assume !(~i~1 > 20); {24167#false} is VALID [2018-11-23 12:14:24,724 INFO L273 TraceCheckUtils]: 148: Hoare triple {24167#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {24167#false} is VALID [2018-11-23 12:14:24,725 INFO L273 TraceCheckUtils]: 149: Hoare triple {24167#false} assume !!(~i~1 < 40); {24167#false} is VALID [2018-11-23 12:14:24,725 INFO L273 TraceCheckUtils]: 150: Hoare triple {24167#false} assume !(~i~1 > 20); {24167#false} is VALID [2018-11-23 12:14:24,725 INFO L273 TraceCheckUtils]: 151: Hoare triple {24167#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {24167#false} is VALID [2018-11-23 12:14:24,725 INFO L273 TraceCheckUtils]: 152: Hoare triple {24167#false} assume !!(~i~1 < 40); {24167#false} is VALID [2018-11-23 12:14:24,725 INFO L273 TraceCheckUtils]: 153: Hoare triple {24167#false} assume !(~i~1 > 20); {24167#false} is VALID [2018-11-23 12:14:24,725 INFO L273 TraceCheckUtils]: 154: Hoare triple {24167#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {24167#false} is VALID [2018-11-23 12:14:24,726 INFO L273 TraceCheckUtils]: 155: Hoare triple {24167#false} assume !!(~i~1 < 40); {24167#false} is VALID [2018-11-23 12:14:24,726 INFO L273 TraceCheckUtils]: 156: Hoare triple {24167#false} assume !(~i~1 > 20); {24167#false} is VALID [2018-11-23 12:14:24,726 INFO L273 TraceCheckUtils]: 157: Hoare triple {24167#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {24167#false} is VALID [2018-11-23 12:14:24,726 INFO L273 TraceCheckUtils]: 158: Hoare triple {24167#false} assume !!(~i~1 < 40); {24167#false} is VALID [2018-11-23 12:14:24,726 INFO L273 TraceCheckUtils]: 159: Hoare triple {24167#false} assume !(~i~1 > 20); {24167#false} is VALID [2018-11-23 12:14:24,726 INFO L273 TraceCheckUtils]: 160: Hoare triple {24167#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {24167#false} is VALID [2018-11-23 12:14:24,727 INFO L273 TraceCheckUtils]: 161: Hoare triple {24167#false} assume !!(~i~1 < 40); {24167#false} is VALID [2018-11-23 12:14:24,727 INFO L273 TraceCheckUtils]: 162: Hoare triple {24167#false} assume !(~i~1 > 20); {24167#false} is VALID [2018-11-23 12:14:24,727 INFO L273 TraceCheckUtils]: 163: Hoare triple {24167#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {24167#false} is VALID [2018-11-23 12:14:24,727 INFO L273 TraceCheckUtils]: 164: Hoare triple {24167#false} assume !!(~i~1 < 40); {24167#false} is VALID [2018-11-23 12:14:24,727 INFO L273 TraceCheckUtils]: 165: Hoare triple {24167#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {24167#false} is VALID [2018-11-23 12:14:24,727 INFO L273 TraceCheckUtils]: 166: Hoare triple {24167#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {24167#false} is VALID [2018-11-23 12:14:24,727 INFO L273 TraceCheckUtils]: 167: Hoare triple {24167#false} assume !!(~i~1 < 40); {24167#false} is VALID [2018-11-23 12:14:24,728 INFO L273 TraceCheckUtils]: 168: Hoare triple {24167#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {24167#false} is VALID [2018-11-23 12:14:24,728 INFO L273 TraceCheckUtils]: 169: Hoare triple {24167#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {24167#false} is VALID [2018-11-23 12:14:24,728 INFO L273 TraceCheckUtils]: 170: Hoare triple {24167#false} assume !!(~i~1 < 40); {24167#false} is VALID [2018-11-23 12:14:24,728 INFO L273 TraceCheckUtils]: 171: Hoare triple {24167#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {24167#false} is VALID [2018-11-23 12:14:24,728 INFO L273 TraceCheckUtils]: 172: Hoare triple {24167#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {24167#false} is VALID [2018-11-23 12:14:24,728 INFO L273 TraceCheckUtils]: 173: Hoare triple {24167#false} assume !!(~i~1 < 40); {24167#false} is VALID [2018-11-23 12:14:24,729 INFO L273 TraceCheckUtils]: 174: Hoare triple {24167#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {24167#false} is VALID [2018-11-23 12:14:24,729 INFO L273 TraceCheckUtils]: 175: Hoare triple {24167#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {24167#false} is VALID [2018-11-23 12:14:24,729 INFO L273 TraceCheckUtils]: 176: Hoare triple {24167#false} assume !!(~i~1 < 40); {24167#false} is VALID [2018-11-23 12:14:24,729 INFO L273 TraceCheckUtils]: 177: Hoare triple {24167#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {24167#false} is VALID [2018-11-23 12:14:24,729 INFO L273 TraceCheckUtils]: 178: Hoare triple {24167#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {24167#false} is VALID [2018-11-23 12:14:24,729 INFO L273 TraceCheckUtils]: 179: Hoare triple {24167#false} assume !!(~i~1 < 40); {24167#false} is VALID [2018-11-23 12:14:24,729 INFO L273 TraceCheckUtils]: 180: Hoare triple {24167#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {24167#false} is VALID [2018-11-23 12:14:24,730 INFO L273 TraceCheckUtils]: 181: Hoare triple {24167#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {24167#false} is VALID [2018-11-23 12:14:24,730 INFO L273 TraceCheckUtils]: 182: Hoare triple {24167#false} assume !(~i~1 < 40); {24167#false} is VALID [2018-11-23 12:14:24,730 INFO L273 TraceCheckUtils]: 183: Hoare triple {24167#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {24167#false} is VALID [2018-11-23 12:14:24,730 INFO L273 TraceCheckUtils]: 184: Hoare triple {24167#false} assume true; {24167#false} is VALID [2018-11-23 12:14:24,730 INFO L268 TraceCheckUtils]: 185: Hoare quadruple {24167#false} {24167#false} #88#return; {24167#false} is VALID [2018-11-23 12:14:24,730 INFO L273 TraceCheckUtils]: 186: Hoare triple {24167#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {24167#false} is VALID [2018-11-23 12:14:24,731 INFO L273 TraceCheckUtils]: 187: Hoare triple {24167#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {24167#false} is VALID [2018-11-23 12:14:24,731 INFO L273 TraceCheckUtils]: 188: Hoare triple {24167#false} assume !false; {24167#false} is VALID [2018-11-23 12:14:24,749 INFO L134 CoverageAnalysis]: Checked inductivity of 2263 backedges. 1029 proven. 57 refuted. 0 times theorem prover too weak. 1177 trivial. 0 not checked. [2018-11-23 12:14:24,774 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:14:24,774 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [10] total 10 [2018-11-23 12:14:24,774 INFO L78 Accepts]: Start accepts. Automaton has 10 states. Word has length 189 [2018-11-23 12:14:24,775 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:14:24,775 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states. [2018-11-23 12:14:24,844 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 62 edges. 62 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:14:24,844 INFO L459 AbstractCegarLoop]: Interpolant automaton has 10 states [2018-11-23 12:14:24,844 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2018-11-23 12:14:24,845 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=45, Invalid=45, Unknown=0, NotChecked=0, Total=90 [2018-11-23 12:14:24,845 INFO L87 Difference]: Start difference. First operand 108 states and 119 transitions. Second operand 10 states. [2018-11-23 12:14:25,065 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:25,065 INFO L93 Difference]: Finished difference Result 182 states and 208 transitions. [2018-11-23 12:14:25,065 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2018-11-23 12:14:25,066 INFO L78 Accepts]: Start accepts. Automaton has 10 states. Word has length 189 [2018-11-23 12:14:25,066 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:14:25,066 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2018-11-23 12:14:25,067 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 95 transitions. [2018-11-23 12:14:25,067 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2018-11-23 12:14:25,067 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 95 transitions. [2018-11-23 12:14:25,068 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 95 transitions. [2018-11-23 12:14:25,155 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 95 edges. 95 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:14:25,158 INFO L225 Difference]: With dead ends: 182 [2018-11-23 12:14:25,159 INFO L226 Difference]: Without dead ends: 113 [2018-11-23 12:14:25,160 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 188 GetRequests, 180 SyntacticMatches, 0 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=45, Invalid=45, Unknown=0, NotChecked=0, Total=90 [2018-11-23 12:14:25,160 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 113 states. [2018-11-23 12:14:25,393 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 113 to 111. [2018-11-23 12:14:25,393 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:14:25,393 INFO L82 GeneralOperation]: Start isEquivalent. First operand 113 states. Second operand 111 states. [2018-11-23 12:14:25,393 INFO L74 IsIncluded]: Start isIncluded. First operand 113 states. Second operand 111 states. [2018-11-23 12:14:25,393 INFO L87 Difference]: Start difference. First operand 113 states. Second operand 111 states. [2018-11-23 12:14:25,396 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:25,396 INFO L93 Difference]: Finished difference Result 113 states and 126 transitions. [2018-11-23 12:14:25,396 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 126 transitions. [2018-11-23 12:14:25,396 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:14:25,397 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:14:25,397 INFO L74 IsIncluded]: Start isIncluded. First operand 111 states. Second operand 113 states. [2018-11-23 12:14:25,397 INFO L87 Difference]: Start difference. First operand 111 states. Second operand 113 states. [2018-11-23 12:14:25,399 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:25,399 INFO L93 Difference]: Finished difference Result 113 states and 126 transitions. [2018-11-23 12:14:25,399 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 126 transitions. [2018-11-23 12:14:25,399 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:14:25,399 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:14:25,400 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:14:25,400 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:14:25,400 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 111 states. [2018-11-23 12:14:25,402 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 111 states to 111 states and 123 transitions. [2018-11-23 12:14:25,402 INFO L78 Accepts]: Start accepts. Automaton has 111 states and 123 transitions. Word has length 189 [2018-11-23 12:14:25,402 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:14:25,402 INFO L480 AbstractCegarLoop]: Abstraction has 111 states and 123 transitions. [2018-11-23 12:14:25,402 INFO L481 AbstractCegarLoop]: Interpolant automaton has 10 states. [2018-11-23 12:14:25,402 INFO L276 IsEmpty]: Start isEmpty. Operand 111 states and 123 transitions. [2018-11-23 12:14:25,403 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 199 [2018-11-23 12:14:25,403 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:14:25,404 INFO L402 BasicCegarLoop]: trace histogram [39, 39, 21, 18, 13, 13, 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, 1, 1, 1, 1, 1] [2018-11-23 12:14:25,404 INFO L423 AbstractCegarLoop]: === Iteration 35 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:14:25,404 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:14:25,404 INFO L82 PathProgramCache]: Analyzing trace with hash 70179402, now seen corresponding path program 30 times [2018-11-23 12:14:25,404 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:14:25,405 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:14:25,405 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:14:25,405 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:14:25,405 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:14:25,416 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:14:25,417 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:14:25,417 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 36 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 36 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:14:25,428 INFO L103 rtionOrderModulation]: Keeping assertion order MIX_INSIDE_OUTSIDE [2018-11-23 12:14:39,035 INFO L249 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 20 check-sat command(s) [2018-11-23 12:14:39,035 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:14:39,085 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:14:39,087 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:14:39,555 INFO L256 TraceCheckUtils]: 0: Hoare triple {25383#true} call ULTIMATE.init(); {25383#true} is VALID [2018-11-23 12:14:39,555 INFO L273 TraceCheckUtils]: 1: Hoare triple {25383#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {25383#true} is VALID [2018-11-23 12:14:39,555 INFO L273 TraceCheckUtils]: 2: Hoare triple {25383#true} assume true; {25383#true} is VALID [2018-11-23 12:14:39,555 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {25383#true} {25383#true} #78#return; {25383#true} is VALID [2018-11-23 12:14:39,556 INFO L256 TraceCheckUtils]: 4: Hoare triple {25383#true} call #t~ret12 := main(); {25383#true} is VALID [2018-11-23 12:14:39,556 INFO L273 TraceCheckUtils]: 5: Hoare triple {25383#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {25403#(= |main_~#x~0.offset| 0)} is VALID [2018-11-23 12:14:39,557 INFO L256 TraceCheckUtils]: 6: Hoare triple {25403#(= |main_~#x~0.offset| 0)} call init_nondet(~#x~0.base, ~#x~0.offset); {25383#true} is VALID [2018-11-23 12:14:39,557 INFO L273 TraceCheckUtils]: 7: Hoare triple {25383#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {25383#true} is VALID [2018-11-23 12:14:39,557 INFO L273 TraceCheckUtils]: 8: Hoare triple {25383#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {25383#true} is VALID [2018-11-23 12:14:39,557 INFO L273 TraceCheckUtils]: 9: Hoare triple {25383#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25383#true} is VALID [2018-11-23 12:14:39,557 INFO L273 TraceCheckUtils]: 10: Hoare triple {25383#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {25383#true} is VALID [2018-11-23 12:14:39,557 INFO L273 TraceCheckUtils]: 11: Hoare triple {25383#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25383#true} is VALID [2018-11-23 12:14:39,558 INFO L273 TraceCheckUtils]: 12: Hoare triple {25383#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {25383#true} is VALID [2018-11-23 12:14:39,558 INFO L273 TraceCheckUtils]: 13: Hoare triple {25383#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25383#true} is VALID [2018-11-23 12:14:39,558 INFO L273 TraceCheckUtils]: 14: Hoare triple {25383#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {25383#true} is VALID [2018-11-23 12:14:39,558 INFO L273 TraceCheckUtils]: 15: Hoare triple {25383#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25383#true} is VALID [2018-11-23 12:14:39,558 INFO L273 TraceCheckUtils]: 16: Hoare triple {25383#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {25383#true} is VALID [2018-11-23 12:14:39,558 INFO L273 TraceCheckUtils]: 17: Hoare triple {25383#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25383#true} is VALID [2018-11-23 12:14:39,559 INFO L273 TraceCheckUtils]: 18: Hoare triple {25383#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {25383#true} is VALID [2018-11-23 12:14:39,559 INFO L273 TraceCheckUtils]: 19: Hoare triple {25383#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25383#true} is VALID [2018-11-23 12:14:39,559 INFO L273 TraceCheckUtils]: 20: Hoare triple {25383#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {25383#true} is VALID [2018-11-23 12:14:39,559 INFO L273 TraceCheckUtils]: 21: Hoare triple {25383#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25383#true} is VALID [2018-11-23 12:14:39,559 INFO L273 TraceCheckUtils]: 22: Hoare triple {25383#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {25383#true} is VALID [2018-11-23 12:14:39,560 INFO L273 TraceCheckUtils]: 23: Hoare triple {25383#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25383#true} is VALID [2018-11-23 12:14:39,560 INFO L273 TraceCheckUtils]: 24: Hoare triple {25383#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {25383#true} is VALID [2018-11-23 12:14:39,560 INFO L273 TraceCheckUtils]: 25: Hoare triple {25383#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25383#true} is VALID [2018-11-23 12:14:39,560 INFO L273 TraceCheckUtils]: 26: Hoare triple {25383#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {25383#true} is VALID [2018-11-23 12:14:39,560 INFO L273 TraceCheckUtils]: 27: Hoare triple {25383#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25383#true} is VALID [2018-11-23 12:14:39,560 INFO L273 TraceCheckUtils]: 28: Hoare triple {25383#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {25383#true} is VALID [2018-11-23 12:14:39,560 INFO L273 TraceCheckUtils]: 29: Hoare triple {25383#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25383#true} is VALID [2018-11-23 12:14:39,560 INFO L273 TraceCheckUtils]: 30: Hoare triple {25383#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {25383#true} is VALID [2018-11-23 12:14:39,560 INFO L273 TraceCheckUtils]: 31: Hoare triple {25383#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25383#true} is VALID [2018-11-23 12:14:39,561 INFO L273 TraceCheckUtils]: 32: Hoare triple {25383#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {25485#(< init_nondet_~i~0 40)} is VALID [2018-11-23 12:14:39,561 INFO L273 TraceCheckUtils]: 33: Hoare triple {25485#(< init_nondet_~i~0 40)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25489#(<= init_nondet_~i~0 40)} is VALID [2018-11-23 12:14:39,561 INFO L273 TraceCheckUtils]: 34: Hoare triple {25489#(<= init_nondet_~i~0 40)} assume !(~i~0 < 40); {25383#true} is VALID [2018-11-23 12:14:39,562 INFO L273 TraceCheckUtils]: 35: Hoare triple {25383#true} assume true; {25383#true} is VALID [2018-11-23 12:14:39,562 INFO L268 TraceCheckUtils]: 36: Hoare quadruple {25383#true} {25403#(= |main_~#x~0.offset| 0)} #82#return; {25403#(= |main_~#x~0.offset| 0)} is VALID [2018-11-23 12:14:39,563 INFO L273 TraceCheckUtils]: 37: Hoare triple {25403#(= |main_~#x~0.offset| 0)} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {25403#(= |main_~#x~0.offset| 0)} is VALID [2018-11-23 12:14:39,563 INFO L256 TraceCheckUtils]: 38: Hoare triple {25403#(= |main_~#x~0.offset| 0)} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {25383#true} is VALID [2018-11-23 12:14:39,563 INFO L273 TraceCheckUtils]: 39: Hoare triple {25383#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {25383#true} is VALID [2018-11-23 12:14:39,563 INFO L273 TraceCheckUtils]: 40: Hoare triple {25383#true} assume !!(~i~1 < 40); {25383#true} is VALID [2018-11-23 12:14:39,563 INFO L273 TraceCheckUtils]: 41: Hoare triple {25383#true} assume !(~i~1 > 20); {25383#true} is VALID [2018-11-23 12:14:39,563 INFO L273 TraceCheckUtils]: 42: Hoare triple {25383#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {25383#true} is VALID [2018-11-23 12:14:39,563 INFO L273 TraceCheckUtils]: 43: Hoare triple {25383#true} assume !!(~i~1 < 40); {25383#true} is VALID [2018-11-23 12:14:39,563 INFO L273 TraceCheckUtils]: 44: Hoare triple {25383#true} assume !(~i~1 > 20); {25383#true} is VALID [2018-11-23 12:14:39,563 INFO L273 TraceCheckUtils]: 45: Hoare triple {25383#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {25383#true} is VALID [2018-11-23 12:14:39,564 INFO L273 TraceCheckUtils]: 46: Hoare triple {25383#true} assume !!(~i~1 < 40); {25383#true} is VALID [2018-11-23 12:14:39,564 INFO L273 TraceCheckUtils]: 47: Hoare triple {25383#true} assume !(~i~1 > 20); {25383#true} is VALID [2018-11-23 12:14:39,564 INFO L273 TraceCheckUtils]: 48: Hoare triple {25383#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {25383#true} is VALID [2018-11-23 12:14:39,564 INFO L273 TraceCheckUtils]: 49: Hoare triple {25383#true} assume !!(~i~1 < 40); {25383#true} is VALID [2018-11-23 12:14:39,564 INFO L273 TraceCheckUtils]: 50: Hoare triple {25383#true} assume !(~i~1 > 20); {25383#true} is VALID [2018-11-23 12:14:39,564 INFO L273 TraceCheckUtils]: 51: Hoare triple {25383#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {25383#true} is VALID [2018-11-23 12:14:39,564 INFO L273 TraceCheckUtils]: 52: Hoare triple {25383#true} assume !!(~i~1 < 40); {25383#true} is VALID [2018-11-23 12:14:39,564 INFO L273 TraceCheckUtils]: 53: Hoare triple {25383#true} assume !(~i~1 > 20); {25383#true} is VALID [2018-11-23 12:14:39,564 INFO L273 TraceCheckUtils]: 54: Hoare triple {25383#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {25383#true} is VALID [2018-11-23 12:14:39,564 INFO L273 TraceCheckUtils]: 55: Hoare triple {25383#true} assume !!(~i~1 < 40); {25383#true} is VALID [2018-11-23 12:14:39,565 INFO L273 TraceCheckUtils]: 56: Hoare triple {25383#true} assume !(~i~1 > 20); {25559#(<= rangesum_~i~1 20)} is VALID [2018-11-23 12:14:39,566 INFO L273 TraceCheckUtils]: 57: Hoare triple {25559#(<= rangesum_~i~1 20)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {25563#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:14:39,566 INFO L273 TraceCheckUtils]: 58: Hoare triple {25563#(<= rangesum_~i~1 21)} assume !!(~i~1 < 40); {25563#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:14:39,567 INFO L273 TraceCheckUtils]: 59: Hoare triple {25563#(<= rangesum_~i~1 21)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {25563#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:14:39,567 INFO L273 TraceCheckUtils]: 60: Hoare triple {25563#(<= rangesum_~i~1 21)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {25573#(<= rangesum_~i~1 22)} is VALID [2018-11-23 12:14:39,568 INFO L273 TraceCheckUtils]: 61: Hoare triple {25573#(<= rangesum_~i~1 22)} assume !!(~i~1 < 40); {25573#(<= rangesum_~i~1 22)} is VALID [2018-11-23 12:14:39,568 INFO L273 TraceCheckUtils]: 62: Hoare triple {25573#(<= rangesum_~i~1 22)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {25573#(<= rangesum_~i~1 22)} is VALID [2018-11-23 12:14:39,568 INFO L273 TraceCheckUtils]: 63: Hoare triple {25573#(<= rangesum_~i~1 22)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {25583#(<= rangesum_~i~1 23)} is VALID [2018-11-23 12:14:39,569 INFO L273 TraceCheckUtils]: 64: Hoare triple {25583#(<= rangesum_~i~1 23)} assume !!(~i~1 < 40); {25583#(<= rangesum_~i~1 23)} is VALID [2018-11-23 12:14:39,569 INFO L273 TraceCheckUtils]: 65: Hoare triple {25583#(<= rangesum_~i~1 23)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {25583#(<= rangesum_~i~1 23)} is VALID [2018-11-23 12:14:39,570 INFO L273 TraceCheckUtils]: 66: Hoare triple {25583#(<= rangesum_~i~1 23)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {25593#(<= rangesum_~i~1 24)} is VALID [2018-11-23 12:14:39,570 INFO L273 TraceCheckUtils]: 67: Hoare triple {25593#(<= rangesum_~i~1 24)} assume !!(~i~1 < 40); {25593#(<= rangesum_~i~1 24)} is VALID [2018-11-23 12:14:39,571 INFO L273 TraceCheckUtils]: 68: Hoare triple {25593#(<= rangesum_~i~1 24)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {25593#(<= rangesum_~i~1 24)} is VALID [2018-11-23 12:14:39,571 INFO L273 TraceCheckUtils]: 69: Hoare triple {25593#(<= rangesum_~i~1 24)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {25603#(<= rangesum_~i~1 25)} is VALID [2018-11-23 12:14:39,572 INFO L273 TraceCheckUtils]: 70: Hoare triple {25603#(<= rangesum_~i~1 25)} assume !!(~i~1 < 40); {25603#(<= rangesum_~i~1 25)} is VALID [2018-11-23 12:14:39,572 INFO L273 TraceCheckUtils]: 71: Hoare triple {25603#(<= rangesum_~i~1 25)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {25603#(<= rangesum_~i~1 25)} is VALID [2018-11-23 12:14:39,573 INFO L273 TraceCheckUtils]: 72: Hoare triple {25603#(<= rangesum_~i~1 25)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {25613#(<= rangesum_~i~1 26)} is VALID [2018-11-23 12:14:39,574 INFO L273 TraceCheckUtils]: 73: Hoare triple {25613#(<= rangesum_~i~1 26)} assume !!(~i~1 < 40); {25613#(<= rangesum_~i~1 26)} is VALID [2018-11-23 12:14:39,574 INFO L273 TraceCheckUtils]: 74: Hoare triple {25613#(<= rangesum_~i~1 26)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {25613#(<= rangesum_~i~1 26)} is VALID [2018-11-23 12:14:39,575 INFO L273 TraceCheckUtils]: 75: Hoare triple {25613#(<= rangesum_~i~1 26)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {25623#(<= rangesum_~i~1 27)} is VALID [2018-11-23 12:14:39,575 INFO L273 TraceCheckUtils]: 76: Hoare triple {25623#(<= rangesum_~i~1 27)} assume !!(~i~1 < 40); {25623#(<= rangesum_~i~1 27)} is VALID [2018-11-23 12:14:39,576 INFO L273 TraceCheckUtils]: 77: Hoare triple {25623#(<= rangesum_~i~1 27)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {25623#(<= rangesum_~i~1 27)} is VALID [2018-11-23 12:14:39,577 INFO L273 TraceCheckUtils]: 78: Hoare triple {25623#(<= rangesum_~i~1 27)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {25633#(<= rangesum_~i~1 28)} is VALID [2018-11-23 12:14:39,581 INFO L273 TraceCheckUtils]: 79: Hoare triple {25633#(<= rangesum_~i~1 28)} assume !(~i~1 < 40); {25384#false} is VALID [2018-11-23 12:14:39,581 INFO L273 TraceCheckUtils]: 80: Hoare triple {25384#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {25384#false} is VALID [2018-11-23 12:14:39,581 INFO L273 TraceCheckUtils]: 81: Hoare triple {25384#false} assume true; {25384#false} is VALID [2018-11-23 12:14:39,582 INFO L268 TraceCheckUtils]: 82: Hoare quadruple {25384#false} {25403#(= |main_~#x~0.offset| 0)} #84#return; {25384#false} is VALID [2018-11-23 12:14:39,582 INFO L273 TraceCheckUtils]: 83: Hoare triple {25384#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {25384#false} is VALID [2018-11-23 12:14:39,582 INFO L256 TraceCheckUtils]: 84: Hoare triple {25384#false} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {25384#false} is VALID [2018-11-23 12:14:39,582 INFO L273 TraceCheckUtils]: 85: Hoare triple {25384#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {25384#false} is VALID [2018-11-23 12:14:39,582 INFO L273 TraceCheckUtils]: 86: Hoare triple {25384#false} assume !!(~i~1 < 40); {25384#false} is VALID [2018-11-23 12:14:39,582 INFO L273 TraceCheckUtils]: 87: Hoare triple {25384#false} assume !(~i~1 > 20); {25384#false} is VALID [2018-11-23 12:14:39,582 INFO L273 TraceCheckUtils]: 88: Hoare triple {25384#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {25384#false} is VALID [2018-11-23 12:14:39,582 INFO L273 TraceCheckUtils]: 89: Hoare triple {25384#false} assume !!(~i~1 < 40); {25384#false} is VALID [2018-11-23 12:14:39,582 INFO L273 TraceCheckUtils]: 90: Hoare triple {25384#false} assume !(~i~1 > 20); {25384#false} is VALID [2018-11-23 12:14:39,583 INFO L273 TraceCheckUtils]: 91: Hoare triple {25384#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {25384#false} is VALID [2018-11-23 12:14:39,583 INFO L273 TraceCheckUtils]: 92: Hoare triple {25384#false} assume !!(~i~1 < 40); {25384#false} is VALID [2018-11-23 12:14:39,583 INFO L273 TraceCheckUtils]: 93: Hoare triple {25384#false} assume !(~i~1 > 20); {25384#false} is VALID [2018-11-23 12:14:39,583 INFO L273 TraceCheckUtils]: 94: Hoare triple {25384#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {25384#false} is VALID [2018-11-23 12:14:39,583 INFO L273 TraceCheckUtils]: 95: Hoare triple {25384#false} assume !!(~i~1 < 40); {25384#false} is VALID [2018-11-23 12:14:39,583 INFO L273 TraceCheckUtils]: 96: Hoare triple {25384#false} assume !(~i~1 > 20); {25384#false} is VALID [2018-11-23 12:14:39,583 INFO L273 TraceCheckUtils]: 97: Hoare triple {25384#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {25384#false} is VALID [2018-11-23 12:14:39,583 INFO L273 TraceCheckUtils]: 98: Hoare triple {25384#false} assume !!(~i~1 < 40); {25384#false} is VALID [2018-11-23 12:14:39,583 INFO L273 TraceCheckUtils]: 99: Hoare triple {25384#false} assume !(~i~1 > 20); {25384#false} is VALID [2018-11-23 12:14:39,583 INFO L273 TraceCheckUtils]: 100: Hoare triple {25384#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {25384#false} is VALID [2018-11-23 12:14:39,584 INFO L273 TraceCheckUtils]: 101: Hoare triple {25384#false} assume !!(~i~1 < 40); {25384#false} is VALID [2018-11-23 12:14:39,584 INFO L273 TraceCheckUtils]: 102: Hoare triple {25384#false} assume !(~i~1 > 20); {25384#false} is VALID [2018-11-23 12:14:39,584 INFO L273 TraceCheckUtils]: 103: Hoare triple {25384#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {25384#false} is VALID [2018-11-23 12:14:39,584 INFO L273 TraceCheckUtils]: 104: Hoare triple {25384#false} assume !!(~i~1 < 40); {25384#false} is VALID [2018-11-23 12:14:39,584 INFO L273 TraceCheckUtils]: 105: Hoare triple {25384#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {25384#false} is VALID [2018-11-23 12:14:39,584 INFO L273 TraceCheckUtils]: 106: Hoare triple {25384#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {25384#false} is VALID [2018-11-23 12:14:39,584 INFO L273 TraceCheckUtils]: 107: Hoare triple {25384#false} assume !!(~i~1 < 40); {25384#false} is VALID [2018-11-23 12:14:39,584 INFO L273 TraceCheckUtils]: 108: Hoare triple {25384#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {25384#false} is VALID [2018-11-23 12:14:39,584 INFO L273 TraceCheckUtils]: 109: Hoare triple {25384#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {25384#false} is VALID [2018-11-23 12:14:39,584 INFO L273 TraceCheckUtils]: 110: Hoare triple {25384#false} assume !!(~i~1 < 40); {25384#false} is VALID [2018-11-23 12:14:39,585 INFO L273 TraceCheckUtils]: 111: Hoare triple {25384#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {25384#false} is VALID [2018-11-23 12:14:39,585 INFO L273 TraceCheckUtils]: 112: Hoare triple {25384#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {25384#false} is VALID [2018-11-23 12:14:39,585 INFO L273 TraceCheckUtils]: 113: Hoare triple {25384#false} assume !!(~i~1 < 40); {25384#false} is VALID [2018-11-23 12:14:39,585 INFO L273 TraceCheckUtils]: 114: Hoare triple {25384#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {25384#false} is VALID [2018-11-23 12:14:39,585 INFO L273 TraceCheckUtils]: 115: Hoare triple {25384#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {25384#false} is VALID [2018-11-23 12:14:39,585 INFO L273 TraceCheckUtils]: 116: Hoare triple {25384#false} assume !!(~i~1 < 40); {25384#false} is VALID [2018-11-23 12:14:39,585 INFO L273 TraceCheckUtils]: 117: Hoare triple {25384#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {25384#false} is VALID [2018-11-23 12:14:39,585 INFO L273 TraceCheckUtils]: 118: Hoare triple {25384#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {25384#false} is VALID [2018-11-23 12:14:39,585 INFO L273 TraceCheckUtils]: 119: Hoare triple {25384#false} assume !!(~i~1 < 40); {25384#false} is VALID [2018-11-23 12:14:39,586 INFO L273 TraceCheckUtils]: 120: Hoare triple {25384#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {25384#false} is VALID [2018-11-23 12:14:39,586 INFO L273 TraceCheckUtils]: 121: Hoare triple {25384#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {25384#false} is VALID [2018-11-23 12:14:39,586 INFO L273 TraceCheckUtils]: 122: Hoare triple {25384#false} assume !!(~i~1 < 40); {25384#false} is VALID [2018-11-23 12:14:39,586 INFO L273 TraceCheckUtils]: 123: Hoare triple {25384#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {25384#false} is VALID [2018-11-23 12:14:39,586 INFO L273 TraceCheckUtils]: 124: Hoare triple {25384#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {25384#false} is VALID [2018-11-23 12:14:39,586 INFO L273 TraceCheckUtils]: 125: Hoare triple {25384#false} assume !(~i~1 < 40); {25384#false} is VALID [2018-11-23 12:14:39,586 INFO L273 TraceCheckUtils]: 126: Hoare triple {25384#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {25384#false} is VALID [2018-11-23 12:14:39,587 INFO L273 TraceCheckUtils]: 127: Hoare triple {25384#false} assume true; {25384#false} is VALID [2018-11-23 12:14:39,587 INFO L268 TraceCheckUtils]: 128: Hoare quadruple {25384#false} {25384#false} #86#return; {25384#false} is VALID [2018-11-23 12:14:39,587 INFO L273 TraceCheckUtils]: 129: Hoare triple {25384#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {25384#false} is VALID [2018-11-23 12:14:39,587 INFO L273 TraceCheckUtils]: 130: Hoare triple {25384#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {25384#false} is VALID [2018-11-23 12:14:39,587 INFO L273 TraceCheckUtils]: 131: Hoare triple {25384#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {25384#false} is VALID [2018-11-23 12:14:39,587 INFO L273 TraceCheckUtils]: 132: Hoare triple {25384#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {25384#false} is VALID [2018-11-23 12:14:39,587 INFO L273 TraceCheckUtils]: 133: Hoare triple {25384#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {25384#false} is VALID [2018-11-23 12:14:39,587 INFO L273 TraceCheckUtils]: 134: Hoare triple {25384#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {25384#false} is VALID [2018-11-23 12:14:39,587 INFO L273 TraceCheckUtils]: 135: Hoare triple {25384#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {25384#false} is VALID [2018-11-23 12:14:39,588 INFO L273 TraceCheckUtils]: 136: Hoare triple {25384#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {25384#false} is VALID [2018-11-23 12:14:39,588 INFO L273 TraceCheckUtils]: 137: Hoare triple {25384#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {25384#false} is VALID [2018-11-23 12:14:39,588 INFO L273 TraceCheckUtils]: 138: Hoare triple {25384#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {25384#false} is VALID [2018-11-23 12:14:39,588 INFO L273 TraceCheckUtils]: 139: Hoare triple {25384#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {25384#false} is VALID [2018-11-23 12:14:39,588 INFO L273 TraceCheckUtils]: 140: Hoare triple {25384#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {25384#false} is VALID [2018-11-23 12:14:39,588 INFO L273 TraceCheckUtils]: 141: Hoare triple {25384#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {25384#false} is VALID [2018-11-23 12:14:39,588 INFO L273 TraceCheckUtils]: 142: Hoare triple {25384#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {25384#false} is VALID [2018-11-23 12:14:39,588 INFO L273 TraceCheckUtils]: 143: Hoare triple {25384#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {25384#false} is VALID [2018-11-23 12:14:39,589 INFO L273 TraceCheckUtils]: 144: Hoare triple {25384#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {25384#false} is VALID [2018-11-23 12:14:39,589 INFO L273 TraceCheckUtils]: 145: Hoare triple {25384#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {25384#false} is VALID [2018-11-23 12:14:39,589 INFO L273 TraceCheckUtils]: 146: Hoare triple {25384#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {25384#false} is VALID [2018-11-23 12:14:39,589 INFO L273 TraceCheckUtils]: 147: Hoare triple {25384#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {25384#false} is VALID [2018-11-23 12:14:39,589 INFO L273 TraceCheckUtils]: 148: Hoare triple {25384#false} assume !(~i~2 < 39); {25384#false} is VALID [2018-11-23 12:14:39,589 INFO L273 TraceCheckUtils]: 149: Hoare triple {25384#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {25384#false} is VALID [2018-11-23 12:14:39,589 INFO L256 TraceCheckUtils]: 150: Hoare triple {25384#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {25384#false} is VALID [2018-11-23 12:14:39,590 INFO L273 TraceCheckUtils]: 151: Hoare triple {25384#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {25384#false} is VALID [2018-11-23 12:14:39,590 INFO L273 TraceCheckUtils]: 152: Hoare triple {25384#false} assume !!(~i~1 < 40); {25384#false} is VALID [2018-11-23 12:14:39,590 INFO L273 TraceCheckUtils]: 153: Hoare triple {25384#false} assume !(~i~1 > 20); {25384#false} is VALID [2018-11-23 12:14:39,590 INFO L273 TraceCheckUtils]: 154: Hoare triple {25384#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {25384#false} is VALID [2018-11-23 12:14:39,590 INFO L273 TraceCheckUtils]: 155: Hoare triple {25384#false} assume !!(~i~1 < 40); {25384#false} is VALID [2018-11-23 12:14:39,590 INFO L273 TraceCheckUtils]: 156: Hoare triple {25384#false} assume !(~i~1 > 20); {25384#false} is VALID [2018-11-23 12:14:39,591 INFO L273 TraceCheckUtils]: 157: Hoare triple {25384#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {25384#false} is VALID [2018-11-23 12:14:39,591 INFO L273 TraceCheckUtils]: 158: Hoare triple {25384#false} assume !!(~i~1 < 40); {25384#false} is VALID [2018-11-23 12:14:39,591 INFO L273 TraceCheckUtils]: 159: Hoare triple {25384#false} assume !(~i~1 > 20); {25384#false} is VALID [2018-11-23 12:14:39,591 INFO L273 TraceCheckUtils]: 160: Hoare triple {25384#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {25384#false} is VALID [2018-11-23 12:14:39,591 INFO L273 TraceCheckUtils]: 161: Hoare triple {25384#false} assume !!(~i~1 < 40); {25384#false} is VALID [2018-11-23 12:14:39,591 INFO L273 TraceCheckUtils]: 162: Hoare triple {25384#false} assume !(~i~1 > 20); {25384#false} is VALID [2018-11-23 12:14:39,592 INFO L273 TraceCheckUtils]: 163: Hoare triple {25384#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {25384#false} is VALID [2018-11-23 12:14:39,592 INFO L273 TraceCheckUtils]: 164: Hoare triple {25384#false} assume !!(~i~1 < 40); {25384#false} is VALID [2018-11-23 12:14:39,592 INFO L273 TraceCheckUtils]: 165: Hoare triple {25384#false} assume !(~i~1 > 20); {25384#false} is VALID [2018-11-23 12:14:39,592 INFO L273 TraceCheckUtils]: 166: Hoare triple {25384#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {25384#false} is VALID [2018-11-23 12:14:39,592 INFO L273 TraceCheckUtils]: 167: Hoare triple {25384#false} assume !!(~i~1 < 40); {25384#false} is VALID [2018-11-23 12:14:39,592 INFO L273 TraceCheckUtils]: 168: Hoare triple {25384#false} assume !(~i~1 > 20); {25384#false} is VALID [2018-11-23 12:14:39,592 INFO L273 TraceCheckUtils]: 169: Hoare triple {25384#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {25384#false} is VALID [2018-11-23 12:14:39,593 INFO L273 TraceCheckUtils]: 170: Hoare triple {25384#false} assume !!(~i~1 < 40); {25384#false} is VALID [2018-11-23 12:14:39,593 INFO L273 TraceCheckUtils]: 171: Hoare triple {25384#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {25384#false} is VALID [2018-11-23 12:14:39,593 INFO L273 TraceCheckUtils]: 172: Hoare triple {25384#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {25384#false} is VALID [2018-11-23 12:14:39,593 INFO L273 TraceCheckUtils]: 173: Hoare triple {25384#false} assume !!(~i~1 < 40); {25384#false} is VALID [2018-11-23 12:14:39,593 INFO L273 TraceCheckUtils]: 174: Hoare triple {25384#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {25384#false} is VALID [2018-11-23 12:14:39,593 INFO L273 TraceCheckUtils]: 175: Hoare triple {25384#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {25384#false} is VALID [2018-11-23 12:14:39,594 INFO L273 TraceCheckUtils]: 176: Hoare triple {25384#false} assume !!(~i~1 < 40); {25384#false} is VALID [2018-11-23 12:14:39,594 INFO L273 TraceCheckUtils]: 177: Hoare triple {25384#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {25384#false} is VALID [2018-11-23 12:14:39,594 INFO L273 TraceCheckUtils]: 178: Hoare triple {25384#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {25384#false} is VALID [2018-11-23 12:14:39,594 INFO L273 TraceCheckUtils]: 179: Hoare triple {25384#false} assume !!(~i~1 < 40); {25384#false} is VALID [2018-11-23 12:14:39,594 INFO L273 TraceCheckUtils]: 180: Hoare triple {25384#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {25384#false} is VALID [2018-11-23 12:14:39,594 INFO L273 TraceCheckUtils]: 181: Hoare triple {25384#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {25384#false} is VALID [2018-11-23 12:14:39,594 INFO L273 TraceCheckUtils]: 182: Hoare triple {25384#false} assume !!(~i~1 < 40); {25384#false} is VALID [2018-11-23 12:14:39,595 INFO L273 TraceCheckUtils]: 183: Hoare triple {25384#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {25384#false} is VALID [2018-11-23 12:14:39,595 INFO L273 TraceCheckUtils]: 184: Hoare triple {25384#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {25384#false} is VALID [2018-11-23 12:14:39,595 INFO L273 TraceCheckUtils]: 185: Hoare triple {25384#false} assume !!(~i~1 < 40); {25384#false} is VALID [2018-11-23 12:14:39,595 INFO L273 TraceCheckUtils]: 186: Hoare triple {25384#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {25384#false} is VALID [2018-11-23 12:14:39,595 INFO L273 TraceCheckUtils]: 187: Hoare triple {25384#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {25384#false} is VALID [2018-11-23 12:14:39,595 INFO L273 TraceCheckUtils]: 188: Hoare triple {25384#false} assume !!(~i~1 < 40); {25384#false} is VALID [2018-11-23 12:14:39,595 INFO L273 TraceCheckUtils]: 189: Hoare triple {25384#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {25384#false} is VALID [2018-11-23 12:14:39,596 INFO L273 TraceCheckUtils]: 190: Hoare triple {25384#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {25384#false} is VALID [2018-11-23 12:14:39,596 INFO L273 TraceCheckUtils]: 191: Hoare triple {25384#false} assume !(~i~1 < 40); {25384#false} is VALID [2018-11-23 12:14:39,596 INFO L273 TraceCheckUtils]: 192: Hoare triple {25384#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {25384#false} is VALID [2018-11-23 12:14:39,596 INFO L273 TraceCheckUtils]: 193: Hoare triple {25384#false} assume true; {25384#false} is VALID [2018-11-23 12:14:39,596 INFO L268 TraceCheckUtils]: 194: Hoare quadruple {25384#false} {25384#false} #88#return; {25384#false} is VALID [2018-11-23 12:14:39,596 INFO L273 TraceCheckUtils]: 195: Hoare triple {25384#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {25384#false} is VALID [2018-11-23 12:14:39,597 INFO L273 TraceCheckUtils]: 196: Hoare triple {25384#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {25384#false} is VALID [2018-11-23 12:14:39,597 INFO L273 TraceCheckUtils]: 197: Hoare triple {25384#false} assume !false; {25384#false} is VALID [2018-11-23 12:14:39,622 INFO L134 CoverageAnalysis]: Checked inductivity of 2605 backedges. 1225 proven. 77 refuted. 0 times theorem prover too weak. 1303 trivial. 0 not checked. [2018-11-23 12:14:39,648 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:14:39,648 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [14] total 14 [2018-11-23 12:14:39,648 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 198 [2018-11-23 12:14:39,649 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:14:39,649 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states. [2018-11-23 12:14:39,741 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 67 edges. 67 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:14:39,741 INFO L459 AbstractCegarLoop]: Interpolant automaton has 14 states [2018-11-23 12:14:39,741 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2018-11-23 12:14:39,742 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=62, Invalid=120, Unknown=0, NotChecked=0, Total=182 [2018-11-23 12:14:39,742 INFO L87 Difference]: Start difference. First operand 111 states and 123 transitions. Second operand 14 states. [2018-11-23 12:14:41,270 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:41,271 INFO L93 Difference]: Finished difference Result 188 states and 216 transitions. [2018-11-23 12:14:41,271 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2018-11-23 12:14:41,271 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 198 [2018-11-23 12:14:41,271 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:14:41,271 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2018-11-23 12:14:41,272 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 100 transitions. [2018-11-23 12:14:41,272 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2018-11-23 12:14:41,273 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 100 transitions. [2018-11-23 12:14:41,273 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states and 100 transitions. [2018-11-23 12:14:41,391 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-23 12:14:41,393 INFO L225 Difference]: With dead ends: 188 [2018-11-23 12:14:41,394 INFO L226 Difference]: Without dead ends: 116 [2018-11-23 12:14:41,394 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 197 GetRequests, 185 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=62, Invalid=120, Unknown=0, NotChecked=0, Total=182 [2018-11-23 12:14:41,395 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 116 states. [2018-11-23 12:14:41,463 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 116 to 114. [2018-11-23 12:14:41,463 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:14:41,463 INFO L82 GeneralOperation]: Start isEquivalent. First operand 116 states. Second operand 114 states. [2018-11-23 12:14:41,464 INFO L74 IsIncluded]: Start isIncluded. First operand 116 states. Second operand 114 states. [2018-11-23 12:14:41,464 INFO L87 Difference]: Start difference. First operand 116 states. Second operand 114 states. [2018-11-23 12:14:41,466 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:41,466 INFO L93 Difference]: Finished difference Result 116 states and 130 transitions. [2018-11-23 12:14:41,467 INFO L276 IsEmpty]: Start isEmpty. Operand 116 states and 130 transitions. [2018-11-23 12:14:41,467 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:14:41,467 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:14:41,467 INFO L74 IsIncluded]: Start isIncluded. First operand 114 states. Second operand 116 states. [2018-11-23 12:14:41,467 INFO L87 Difference]: Start difference. First operand 114 states. Second operand 116 states. [2018-11-23 12:14:41,469 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:41,470 INFO L93 Difference]: Finished difference Result 116 states and 130 transitions. [2018-11-23 12:14:41,470 INFO L276 IsEmpty]: Start isEmpty. Operand 116 states and 130 transitions. [2018-11-23 12:14:41,470 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:14:41,470 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:14:41,470 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:14:41,470 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:14:41,471 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 114 states. [2018-11-23 12:14:41,472 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 114 states to 114 states and 127 transitions. [2018-11-23 12:14:41,473 INFO L78 Accepts]: Start accepts. Automaton has 114 states and 127 transitions. Word has length 198 [2018-11-23 12:14:41,473 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:14:41,473 INFO L480 AbstractCegarLoop]: Abstraction has 114 states and 127 transitions. [2018-11-23 12:14:41,473 INFO L481 AbstractCegarLoop]: Interpolant automaton has 14 states. [2018-11-23 12:14:41,473 INFO L276 IsEmpty]: Start isEmpty. Operand 114 states and 127 transitions. [2018-11-23 12:14:41,474 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 208 [2018-11-23 12:14:41,474 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:14:41,474 INFO L402 BasicCegarLoop]: trace histogram [42, 42, 24, 18, 13, 13, 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, 1, 1, 1, 1, 1] [2018-11-23 12:14:41,475 INFO L423 AbstractCegarLoop]: === Iteration 36 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:14:41,475 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:14:41,475 INFO L82 PathProgramCache]: Analyzing trace with hash 1687671948, now seen corresponding path program 31 times [2018-11-23 12:14:41,475 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:14:41,475 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:14:41,476 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:14:41,476 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:14:41,476 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:14:41,488 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:14:41,488 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:14:41,488 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 37 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 37 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:14:41,506 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:14:41,579 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:14:41,621 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:14:41,623 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:14:41,936 INFO L256 TraceCheckUtils]: 0: Hoare triple {26649#true} call ULTIMATE.init(); {26649#true} is VALID [2018-11-23 12:14:41,936 INFO L273 TraceCheckUtils]: 1: Hoare triple {26649#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {26649#true} is VALID [2018-11-23 12:14:41,937 INFO L273 TraceCheckUtils]: 2: Hoare triple {26649#true} assume true; {26649#true} is VALID [2018-11-23 12:14:41,937 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {26649#true} {26649#true} #78#return; {26649#true} is VALID [2018-11-23 12:14:41,937 INFO L256 TraceCheckUtils]: 4: Hoare triple {26649#true} call #t~ret12 := main(); {26649#true} is VALID [2018-11-23 12:14:41,937 INFO L273 TraceCheckUtils]: 5: Hoare triple {26649#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {26649#true} is VALID [2018-11-23 12:14:41,937 INFO L256 TraceCheckUtils]: 6: Hoare triple {26649#true} call init_nondet(~#x~0.base, ~#x~0.offset); {26649#true} is VALID [2018-11-23 12:14:41,938 INFO L273 TraceCheckUtils]: 7: Hoare triple {26649#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {26675#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:14:41,938 INFO L273 TraceCheckUtils]: 8: Hoare triple {26675#(<= init_nondet_~i~0 0)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {26675#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:14:41,939 INFO L273 TraceCheckUtils]: 9: Hoare triple {26675#(<= init_nondet_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26682#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:14:41,939 INFO L273 TraceCheckUtils]: 10: Hoare triple {26682#(<= init_nondet_~i~0 1)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {26682#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:14:41,939 INFO L273 TraceCheckUtils]: 11: Hoare triple {26682#(<= init_nondet_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26689#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:14:41,940 INFO L273 TraceCheckUtils]: 12: Hoare triple {26689#(<= init_nondet_~i~0 2)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {26689#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:14:41,940 INFO L273 TraceCheckUtils]: 13: Hoare triple {26689#(<= init_nondet_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26696#(<= init_nondet_~i~0 3)} is VALID [2018-11-23 12:14:41,940 INFO L273 TraceCheckUtils]: 14: Hoare triple {26696#(<= init_nondet_~i~0 3)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {26696#(<= init_nondet_~i~0 3)} is VALID [2018-11-23 12:14:41,941 INFO L273 TraceCheckUtils]: 15: Hoare triple {26696#(<= init_nondet_~i~0 3)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26703#(<= init_nondet_~i~0 4)} is VALID [2018-11-23 12:14:41,942 INFO L273 TraceCheckUtils]: 16: Hoare triple {26703#(<= init_nondet_~i~0 4)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {26703#(<= init_nondet_~i~0 4)} is VALID [2018-11-23 12:14:41,942 INFO L273 TraceCheckUtils]: 17: Hoare triple {26703#(<= init_nondet_~i~0 4)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26710#(<= init_nondet_~i~0 5)} is VALID [2018-11-23 12:14:41,943 INFO L273 TraceCheckUtils]: 18: Hoare triple {26710#(<= init_nondet_~i~0 5)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {26710#(<= init_nondet_~i~0 5)} is VALID [2018-11-23 12:14:41,943 INFO L273 TraceCheckUtils]: 19: Hoare triple {26710#(<= init_nondet_~i~0 5)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26717#(<= init_nondet_~i~0 6)} is VALID [2018-11-23 12:14:41,944 INFO L273 TraceCheckUtils]: 20: Hoare triple {26717#(<= init_nondet_~i~0 6)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {26717#(<= init_nondet_~i~0 6)} is VALID [2018-11-23 12:14:41,945 INFO L273 TraceCheckUtils]: 21: Hoare triple {26717#(<= init_nondet_~i~0 6)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26724#(<= init_nondet_~i~0 7)} is VALID [2018-11-23 12:14:41,945 INFO L273 TraceCheckUtils]: 22: Hoare triple {26724#(<= init_nondet_~i~0 7)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {26724#(<= init_nondet_~i~0 7)} is VALID [2018-11-23 12:14:41,946 INFO L273 TraceCheckUtils]: 23: Hoare triple {26724#(<= init_nondet_~i~0 7)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26731#(<= init_nondet_~i~0 8)} is VALID [2018-11-23 12:14:41,946 INFO L273 TraceCheckUtils]: 24: Hoare triple {26731#(<= init_nondet_~i~0 8)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {26731#(<= init_nondet_~i~0 8)} is VALID [2018-11-23 12:14:41,947 INFO L273 TraceCheckUtils]: 25: Hoare triple {26731#(<= init_nondet_~i~0 8)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26738#(<= init_nondet_~i~0 9)} is VALID [2018-11-23 12:14:41,948 INFO L273 TraceCheckUtils]: 26: Hoare triple {26738#(<= init_nondet_~i~0 9)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {26738#(<= init_nondet_~i~0 9)} is VALID [2018-11-23 12:14:41,948 INFO L273 TraceCheckUtils]: 27: Hoare triple {26738#(<= init_nondet_~i~0 9)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26745#(<= init_nondet_~i~0 10)} is VALID [2018-11-23 12:14:41,949 INFO L273 TraceCheckUtils]: 28: Hoare triple {26745#(<= init_nondet_~i~0 10)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {26745#(<= init_nondet_~i~0 10)} is VALID [2018-11-23 12:14:41,949 INFO L273 TraceCheckUtils]: 29: Hoare triple {26745#(<= init_nondet_~i~0 10)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26752#(<= init_nondet_~i~0 11)} is VALID [2018-11-23 12:14:41,950 INFO L273 TraceCheckUtils]: 30: Hoare triple {26752#(<= init_nondet_~i~0 11)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {26752#(<= init_nondet_~i~0 11)} is VALID [2018-11-23 12:14:41,951 INFO L273 TraceCheckUtils]: 31: Hoare triple {26752#(<= init_nondet_~i~0 11)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26759#(<= init_nondet_~i~0 12)} is VALID [2018-11-23 12:14:41,951 INFO L273 TraceCheckUtils]: 32: Hoare triple {26759#(<= init_nondet_~i~0 12)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {26759#(<= init_nondet_~i~0 12)} is VALID [2018-11-23 12:14:41,952 INFO L273 TraceCheckUtils]: 33: Hoare triple {26759#(<= init_nondet_~i~0 12)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26766#(<= init_nondet_~i~0 13)} is VALID [2018-11-23 12:14:41,952 INFO L273 TraceCheckUtils]: 34: Hoare triple {26766#(<= init_nondet_~i~0 13)} assume !(~i~0 < 40); {26650#false} is VALID [2018-11-23 12:14:41,953 INFO L273 TraceCheckUtils]: 35: Hoare triple {26650#false} assume true; {26650#false} is VALID [2018-11-23 12:14:41,953 INFO L268 TraceCheckUtils]: 36: Hoare quadruple {26650#false} {26649#true} #82#return; {26650#false} is VALID [2018-11-23 12:14:41,953 INFO L273 TraceCheckUtils]: 37: Hoare triple {26650#false} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {26650#false} is VALID [2018-11-23 12:14:41,953 INFO L256 TraceCheckUtils]: 38: Hoare triple {26650#false} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {26650#false} is VALID [2018-11-23 12:14:41,953 INFO L273 TraceCheckUtils]: 39: Hoare triple {26650#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {26650#false} is VALID [2018-11-23 12:14:41,953 INFO L273 TraceCheckUtils]: 40: Hoare triple {26650#false} assume !!(~i~1 < 40); {26650#false} is VALID [2018-11-23 12:14:41,954 INFO L273 TraceCheckUtils]: 41: Hoare triple {26650#false} assume !(~i~1 > 20); {26650#false} is VALID [2018-11-23 12:14:41,954 INFO L273 TraceCheckUtils]: 42: Hoare triple {26650#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {26650#false} is VALID [2018-11-23 12:14:41,954 INFO L273 TraceCheckUtils]: 43: Hoare triple {26650#false} assume !!(~i~1 < 40); {26650#false} is VALID [2018-11-23 12:14:41,954 INFO L273 TraceCheckUtils]: 44: Hoare triple {26650#false} assume !(~i~1 > 20); {26650#false} is VALID [2018-11-23 12:14:41,954 INFO L273 TraceCheckUtils]: 45: Hoare triple {26650#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {26650#false} is VALID [2018-11-23 12:14:41,954 INFO L273 TraceCheckUtils]: 46: Hoare triple {26650#false} assume !!(~i~1 < 40); {26650#false} is VALID [2018-11-23 12:14:41,955 INFO L273 TraceCheckUtils]: 47: Hoare triple {26650#false} assume !(~i~1 > 20); {26650#false} is VALID [2018-11-23 12:14:41,955 INFO L273 TraceCheckUtils]: 48: Hoare triple {26650#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {26650#false} is VALID [2018-11-23 12:14:41,955 INFO L273 TraceCheckUtils]: 49: Hoare triple {26650#false} assume !!(~i~1 < 40); {26650#false} is VALID [2018-11-23 12:14:41,955 INFO L273 TraceCheckUtils]: 50: Hoare triple {26650#false} assume !(~i~1 > 20); {26650#false} is VALID [2018-11-23 12:14:41,955 INFO L273 TraceCheckUtils]: 51: Hoare triple {26650#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {26650#false} is VALID [2018-11-23 12:14:41,955 INFO L273 TraceCheckUtils]: 52: Hoare triple {26650#false} assume !!(~i~1 < 40); {26650#false} is VALID [2018-11-23 12:14:41,956 INFO L273 TraceCheckUtils]: 53: Hoare triple {26650#false} assume !(~i~1 > 20); {26650#false} is VALID [2018-11-23 12:14:41,956 INFO L273 TraceCheckUtils]: 54: Hoare triple {26650#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {26650#false} is VALID [2018-11-23 12:14:41,956 INFO L273 TraceCheckUtils]: 55: Hoare triple {26650#false} assume !!(~i~1 < 40); {26650#false} is VALID [2018-11-23 12:14:41,956 INFO L273 TraceCheckUtils]: 56: Hoare triple {26650#false} assume !(~i~1 > 20); {26650#false} is VALID [2018-11-23 12:14:41,956 INFO L273 TraceCheckUtils]: 57: Hoare triple {26650#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {26650#false} is VALID [2018-11-23 12:14:41,956 INFO L273 TraceCheckUtils]: 58: Hoare triple {26650#false} assume !!(~i~1 < 40); {26650#false} is VALID [2018-11-23 12:14:41,956 INFO L273 TraceCheckUtils]: 59: Hoare triple {26650#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {26650#false} is VALID [2018-11-23 12:14:41,956 INFO L273 TraceCheckUtils]: 60: Hoare triple {26650#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {26650#false} is VALID [2018-11-23 12:14:41,956 INFO L273 TraceCheckUtils]: 61: Hoare triple {26650#false} assume !!(~i~1 < 40); {26650#false} is VALID [2018-11-23 12:14:41,956 INFO L273 TraceCheckUtils]: 62: Hoare triple {26650#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {26650#false} is VALID [2018-11-23 12:14:41,957 INFO L273 TraceCheckUtils]: 63: Hoare triple {26650#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {26650#false} is VALID [2018-11-23 12:14:41,957 INFO L273 TraceCheckUtils]: 64: Hoare triple {26650#false} assume !!(~i~1 < 40); {26650#false} is VALID [2018-11-23 12:14:41,957 INFO L273 TraceCheckUtils]: 65: Hoare triple {26650#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {26650#false} is VALID [2018-11-23 12:14:41,957 INFO L273 TraceCheckUtils]: 66: Hoare triple {26650#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {26650#false} is VALID [2018-11-23 12:14:41,957 INFO L273 TraceCheckUtils]: 67: Hoare triple {26650#false} assume !!(~i~1 < 40); {26650#false} is VALID [2018-11-23 12:14:41,957 INFO L273 TraceCheckUtils]: 68: Hoare triple {26650#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {26650#false} is VALID [2018-11-23 12:14:41,957 INFO L273 TraceCheckUtils]: 69: Hoare triple {26650#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {26650#false} is VALID [2018-11-23 12:14:41,957 INFO L273 TraceCheckUtils]: 70: Hoare triple {26650#false} assume !!(~i~1 < 40); {26650#false} is VALID [2018-11-23 12:14:41,957 INFO L273 TraceCheckUtils]: 71: Hoare triple {26650#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {26650#false} is VALID [2018-11-23 12:14:41,957 INFO L273 TraceCheckUtils]: 72: Hoare triple {26650#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {26650#false} is VALID [2018-11-23 12:14:41,958 INFO L273 TraceCheckUtils]: 73: Hoare triple {26650#false} assume !!(~i~1 < 40); {26650#false} is VALID [2018-11-23 12:14:41,958 INFO L273 TraceCheckUtils]: 74: Hoare triple {26650#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {26650#false} is VALID [2018-11-23 12:14:41,958 INFO L273 TraceCheckUtils]: 75: Hoare triple {26650#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {26650#false} is VALID [2018-11-23 12:14:41,958 INFO L273 TraceCheckUtils]: 76: Hoare triple {26650#false} assume !!(~i~1 < 40); {26650#false} is VALID [2018-11-23 12:14:41,958 INFO L273 TraceCheckUtils]: 77: Hoare triple {26650#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {26650#false} is VALID [2018-11-23 12:14:41,958 INFO L273 TraceCheckUtils]: 78: Hoare triple {26650#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {26650#false} is VALID [2018-11-23 12:14:41,958 INFO L273 TraceCheckUtils]: 79: Hoare triple {26650#false} assume !!(~i~1 < 40); {26650#false} is VALID [2018-11-23 12:14:41,958 INFO L273 TraceCheckUtils]: 80: Hoare triple {26650#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {26650#false} is VALID [2018-11-23 12:14:41,958 INFO L273 TraceCheckUtils]: 81: Hoare triple {26650#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {26650#false} is VALID [2018-11-23 12:14:41,959 INFO L273 TraceCheckUtils]: 82: Hoare triple {26650#false} assume !(~i~1 < 40); {26650#false} is VALID [2018-11-23 12:14:41,959 INFO L273 TraceCheckUtils]: 83: Hoare triple {26650#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {26650#false} is VALID [2018-11-23 12:14:41,959 INFO L273 TraceCheckUtils]: 84: Hoare triple {26650#false} assume true; {26650#false} is VALID [2018-11-23 12:14:41,959 INFO L268 TraceCheckUtils]: 85: Hoare quadruple {26650#false} {26650#false} #84#return; {26650#false} is VALID [2018-11-23 12:14:41,959 INFO L273 TraceCheckUtils]: 86: Hoare triple {26650#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {26650#false} is VALID [2018-11-23 12:14:41,959 INFO L256 TraceCheckUtils]: 87: Hoare triple {26650#false} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {26650#false} is VALID [2018-11-23 12:14:41,959 INFO L273 TraceCheckUtils]: 88: Hoare triple {26650#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {26650#false} is VALID [2018-11-23 12:14:41,959 INFO L273 TraceCheckUtils]: 89: Hoare triple {26650#false} assume !!(~i~1 < 40); {26650#false} is VALID [2018-11-23 12:14:41,959 INFO L273 TraceCheckUtils]: 90: Hoare triple {26650#false} assume !(~i~1 > 20); {26650#false} is VALID [2018-11-23 12:14:41,959 INFO L273 TraceCheckUtils]: 91: Hoare triple {26650#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {26650#false} is VALID [2018-11-23 12:14:41,960 INFO L273 TraceCheckUtils]: 92: Hoare triple {26650#false} assume !!(~i~1 < 40); {26650#false} is VALID [2018-11-23 12:14:41,960 INFO L273 TraceCheckUtils]: 93: Hoare triple {26650#false} assume !(~i~1 > 20); {26650#false} is VALID [2018-11-23 12:14:41,960 INFO L273 TraceCheckUtils]: 94: Hoare triple {26650#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {26650#false} is VALID [2018-11-23 12:14:41,960 INFO L273 TraceCheckUtils]: 95: Hoare triple {26650#false} assume !!(~i~1 < 40); {26650#false} is VALID [2018-11-23 12:14:41,960 INFO L273 TraceCheckUtils]: 96: Hoare triple {26650#false} assume !(~i~1 > 20); {26650#false} is VALID [2018-11-23 12:14:41,960 INFO L273 TraceCheckUtils]: 97: Hoare triple {26650#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {26650#false} is VALID [2018-11-23 12:14:41,960 INFO L273 TraceCheckUtils]: 98: Hoare triple {26650#false} assume !!(~i~1 < 40); {26650#false} is VALID [2018-11-23 12:14:41,960 INFO L273 TraceCheckUtils]: 99: Hoare triple {26650#false} assume !(~i~1 > 20); {26650#false} is VALID [2018-11-23 12:14:41,960 INFO L273 TraceCheckUtils]: 100: Hoare triple {26650#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {26650#false} is VALID [2018-11-23 12:14:41,961 INFO L273 TraceCheckUtils]: 101: Hoare triple {26650#false} assume !!(~i~1 < 40); {26650#false} is VALID [2018-11-23 12:14:41,961 INFO L273 TraceCheckUtils]: 102: Hoare triple {26650#false} assume !(~i~1 > 20); {26650#false} is VALID [2018-11-23 12:14:41,961 INFO L273 TraceCheckUtils]: 103: Hoare triple {26650#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {26650#false} is VALID [2018-11-23 12:14:41,961 INFO L273 TraceCheckUtils]: 104: Hoare triple {26650#false} assume !!(~i~1 < 40); {26650#false} is VALID [2018-11-23 12:14:41,961 INFO L273 TraceCheckUtils]: 105: Hoare triple {26650#false} assume !(~i~1 > 20); {26650#false} is VALID [2018-11-23 12:14:41,961 INFO L273 TraceCheckUtils]: 106: Hoare triple {26650#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {26650#false} is VALID [2018-11-23 12:14:41,961 INFO L273 TraceCheckUtils]: 107: Hoare triple {26650#false} assume !!(~i~1 < 40); {26650#false} is VALID [2018-11-23 12:14:41,961 INFO L273 TraceCheckUtils]: 108: Hoare triple {26650#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {26650#false} is VALID [2018-11-23 12:14:41,961 INFO L273 TraceCheckUtils]: 109: Hoare triple {26650#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {26650#false} is VALID [2018-11-23 12:14:41,961 INFO L273 TraceCheckUtils]: 110: Hoare triple {26650#false} assume !!(~i~1 < 40); {26650#false} is VALID [2018-11-23 12:14:41,962 INFO L273 TraceCheckUtils]: 111: Hoare triple {26650#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {26650#false} is VALID [2018-11-23 12:14:41,962 INFO L273 TraceCheckUtils]: 112: Hoare triple {26650#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {26650#false} is VALID [2018-11-23 12:14:41,962 INFO L273 TraceCheckUtils]: 113: Hoare triple {26650#false} assume !!(~i~1 < 40); {26650#false} is VALID [2018-11-23 12:14:41,962 INFO L273 TraceCheckUtils]: 114: Hoare triple {26650#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {26650#false} is VALID [2018-11-23 12:14:41,962 INFO L273 TraceCheckUtils]: 115: Hoare triple {26650#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {26650#false} is VALID [2018-11-23 12:14:41,962 INFO L273 TraceCheckUtils]: 116: Hoare triple {26650#false} assume !!(~i~1 < 40); {26650#false} is VALID [2018-11-23 12:14:41,962 INFO L273 TraceCheckUtils]: 117: Hoare triple {26650#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {26650#false} is VALID [2018-11-23 12:14:41,962 INFO L273 TraceCheckUtils]: 118: Hoare triple {26650#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {26650#false} is VALID [2018-11-23 12:14:41,962 INFO L273 TraceCheckUtils]: 119: Hoare triple {26650#false} assume !!(~i~1 < 40); {26650#false} is VALID [2018-11-23 12:14:41,963 INFO L273 TraceCheckUtils]: 120: Hoare triple {26650#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {26650#false} is VALID [2018-11-23 12:14:41,963 INFO L273 TraceCheckUtils]: 121: Hoare triple {26650#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {26650#false} is VALID [2018-11-23 12:14:41,963 INFO L273 TraceCheckUtils]: 122: Hoare triple {26650#false} assume !!(~i~1 < 40); {26650#false} is VALID [2018-11-23 12:14:41,963 INFO L273 TraceCheckUtils]: 123: Hoare triple {26650#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {26650#false} is VALID [2018-11-23 12:14:41,963 INFO L273 TraceCheckUtils]: 124: Hoare triple {26650#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {26650#false} is VALID [2018-11-23 12:14:41,963 INFO L273 TraceCheckUtils]: 125: Hoare triple {26650#false} assume !!(~i~1 < 40); {26650#false} is VALID [2018-11-23 12:14:41,963 INFO L273 TraceCheckUtils]: 126: Hoare triple {26650#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {26650#false} is VALID [2018-11-23 12:14:41,963 INFO L273 TraceCheckUtils]: 127: Hoare triple {26650#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {26650#false} is VALID [2018-11-23 12:14:41,963 INFO L273 TraceCheckUtils]: 128: Hoare triple {26650#false} assume !!(~i~1 < 40); {26650#false} is VALID [2018-11-23 12:14:41,963 INFO L273 TraceCheckUtils]: 129: Hoare triple {26650#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {26650#false} is VALID [2018-11-23 12:14:41,964 INFO L273 TraceCheckUtils]: 130: Hoare triple {26650#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {26650#false} is VALID [2018-11-23 12:14:41,964 INFO L273 TraceCheckUtils]: 131: Hoare triple {26650#false} assume !(~i~1 < 40); {26650#false} is VALID [2018-11-23 12:14:41,964 INFO L273 TraceCheckUtils]: 132: Hoare triple {26650#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {26650#false} is VALID [2018-11-23 12:14:41,964 INFO L273 TraceCheckUtils]: 133: Hoare triple {26650#false} assume true; {26650#false} is VALID [2018-11-23 12:14:41,964 INFO L268 TraceCheckUtils]: 134: Hoare quadruple {26650#false} {26650#false} #86#return; {26650#false} is VALID [2018-11-23 12:14:41,964 INFO L273 TraceCheckUtils]: 135: Hoare triple {26650#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {26650#false} is VALID [2018-11-23 12:14:41,964 INFO L273 TraceCheckUtils]: 136: Hoare triple {26650#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {26650#false} is VALID [2018-11-23 12:14:41,964 INFO L273 TraceCheckUtils]: 137: Hoare triple {26650#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {26650#false} is VALID [2018-11-23 12:14:41,964 INFO L273 TraceCheckUtils]: 138: Hoare triple {26650#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {26650#false} is VALID [2018-11-23 12:14:41,964 INFO L273 TraceCheckUtils]: 139: Hoare triple {26650#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {26650#false} is VALID [2018-11-23 12:14:41,965 INFO L273 TraceCheckUtils]: 140: Hoare triple {26650#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {26650#false} is VALID [2018-11-23 12:14:41,965 INFO L273 TraceCheckUtils]: 141: Hoare triple {26650#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {26650#false} is VALID [2018-11-23 12:14:41,965 INFO L273 TraceCheckUtils]: 142: Hoare triple {26650#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {26650#false} is VALID [2018-11-23 12:14:41,965 INFO L273 TraceCheckUtils]: 143: Hoare triple {26650#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {26650#false} is VALID [2018-11-23 12:14:41,965 INFO L273 TraceCheckUtils]: 144: Hoare triple {26650#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {26650#false} is VALID [2018-11-23 12:14:41,965 INFO L273 TraceCheckUtils]: 145: Hoare triple {26650#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {26650#false} is VALID [2018-11-23 12:14:41,965 INFO L273 TraceCheckUtils]: 146: Hoare triple {26650#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {26650#false} is VALID [2018-11-23 12:14:41,965 INFO L273 TraceCheckUtils]: 147: Hoare triple {26650#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {26650#false} is VALID [2018-11-23 12:14:41,965 INFO L273 TraceCheckUtils]: 148: Hoare triple {26650#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {26650#false} is VALID [2018-11-23 12:14:41,966 INFO L273 TraceCheckUtils]: 149: Hoare triple {26650#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {26650#false} is VALID [2018-11-23 12:14:41,966 INFO L273 TraceCheckUtils]: 150: Hoare triple {26650#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {26650#false} is VALID [2018-11-23 12:14:41,966 INFO L273 TraceCheckUtils]: 151: Hoare triple {26650#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {26650#false} is VALID [2018-11-23 12:14:41,966 INFO L273 TraceCheckUtils]: 152: Hoare triple {26650#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {26650#false} is VALID [2018-11-23 12:14:41,966 INFO L273 TraceCheckUtils]: 153: Hoare triple {26650#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {26650#false} is VALID [2018-11-23 12:14:41,966 INFO L273 TraceCheckUtils]: 154: Hoare triple {26650#false} assume !(~i~2 < 39); {26650#false} is VALID [2018-11-23 12:14:41,966 INFO L273 TraceCheckUtils]: 155: Hoare triple {26650#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {26650#false} is VALID [2018-11-23 12:14:41,966 INFO L256 TraceCheckUtils]: 156: Hoare triple {26650#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {26650#false} is VALID [2018-11-23 12:14:41,966 INFO L273 TraceCheckUtils]: 157: Hoare triple {26650#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {26650#false} is VALID [2018-11-23 12:14:41,966 INFO L273 TraceCheckUtils]: 158: Hoare triple {26650#false} assume !!(~i~1 < 40); {26650#false} is VALID [2018-11-23 12:14:41,967 INFO L273 TraceCheckUtils]: 159: Hoare triple {26650#false} assume !(~i~1 > 20); {26650#false} is VALID [2018-11-23 12:14:41,967 INFO L273 TraceCheckUtils]: 160: Hoare triple {26650#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {26650#false} is VALID [2018-11-23 12:14:41,967 INFO L273 TraceCheckUtils]: 161: Hoare triple {26650#false} assume !!(~i~1 < 40); {26650#false} is VALID [2018-11-23 12:14:41,967 INFO L273 TraceCheckUtils]: 162: Hoare triple {26650#false} assume !(~i~1 > 20); {26650#false} is VALID [2018-11-23 12:14:41,967 INFO L273 TraceCheckUtils]: 163: Hoare triple {26650#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {26650#false} is VALID [2018-11-23 12:14:41,967 INFO L273 TraceCheckUtils]: 164: Hoare triple {26650#false} assume !!(~i~1 < 40); {26650#false} is VALID [2018-11-23 12:14:41,967 INFO L273 TraceCheckUtils]: 165: Hoare triple {26650#false} assume !(~i~1 > 20); {26650#false} is VALID [2018-11-23 12:14:41,967 INFO L273 TraceCheckUtils]: 166: Hoare triple {26650#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {26650#false} is VALID [2018-11-23 12:14:41,967 INFO L273 TraceCheckUtils]: 167: Hoare triple {26650#false} assume !!(~i~1 < 40); {26650#false} is VALID [2018-11-23 12:14:41,967 INFO L273 TraceCheckUtils]: 168: Hoare triple {26650#false} assume !(~i~1 > 20); {26650#false} is VALID [2018-11-23 12:14:41,968 INFO L273 TraceCheckUtils]: 169: Hoare triple {26650#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {26650#false} is VALID [2018-11-23 12:14:41,968 INFO L273 TraceCheckUtils]: 170: Hoare triple {26650#false} assume !!(~i~1 < 40); {26650#false} is VALID [2018-11-23 12:14:41,968 INFO L273 TraceCheckUtils]: 171: Hoare triple {26650#false} assume !(~i~1 > 20); {26650#false} is VALID [2018-11-23 12:14:41,968 INFO L273 TraceCheckUtils]: 172: Hoare triple {26650#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {26650#false} is VALID [2018-11-23 12:14:41,968 INFO L273 TraceCheckUtils]: 173: Hoare triple {26650#false} assume !!(~i~1 < 40); {26650#false} is VALID [2018-11-23 12:14:41,968 INFO L273 TraceCheckUtils]: 174: Hoare triple {26650#false} assume !(~i~1 > 20); {26650#false} is VALID [2018-11-23 12:14:41,968 INFO L273 TraceCheckUtils]: 175: Hoare triple {26650#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {26650#false} is VALID [2018-11-23 12:14:41,968 INFO L273 TraceCheckUtils]: 176: Hoare triple {26650#false} assume !!(~i~1 < 40); {26650#false} is VALID [2018-11-23 12:14:41,968 INFO L273 TraceCheckUtils]: 177: Hoare triple {26650#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {26650#false} is VALID [2018-11-23 12:14:41,968 INFO L273 TraceCheckUtils]: 178: Hoare triple {26650#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {26650#false} is VALID [2018-11-23 12:14:41,969 INFO L273 TraceCheckUtils]: 179: Hoare triple {26650#false} assume !!(~i~1 < 40); {26650#false} is VALID [2018-11-23 12:14:41,969 INFO L273 TraceCheckUtils]: 180: Hoare triple {26650#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {26650#false} is VALID [2018-11-23 12:14:41,969 INFO L273 TraceCheckUtils]: 181: Hoare triple {26650#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {26650#false} is VALID [2018-11-23 12:14:41,969 INFO L273 TraceCheckUtils]: 182: Hoare triple {26650#false} assume !!(~i~1 < 40); {26650#false} is VALID [2018-11-23 12:14:41,969 INFO L273 TraceCheckUtils]: 183: Hoare triple {26650#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {26650#false} is VALID [2018-11-23 12:14:41,969 INFO L273 TraceCheckUtils]: 184: Hoare triple {26650#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {26650#false} is VALID [2018-11-23 12:14:41,969 INFO L273 TraceCheckUtils]: 185: Hoare triple {26650#false} assume !!(~i~1 < 40); {26650#false} is VALID [2018-11-23 12:14:41,969 INFO L273 TraceCheckUtils]: 186: Hoare triple {26650#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {26650#false} is VALID [2018-11-23 12:14:41,969 INFO L273 TraceCheckUtils]: 187: Hoare triple {26650#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {26650#false} is VALID [2018-11-23 12:14:41,970 INFO L273 TraceCheckUtils]: 188: Hoare triple {26650#false} assume !!(~i~1 < 40); {26650#false} is VALID [2018-11-23 12:14:41,970 INFO L273 TraceCheckUtils]: 189: Hoare triple {26650#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {26650#false} is VALID [2018-11-23 12:14:41,970 INFO L273 TraceCheckUtils]: 190: Hoare triple {26650#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {26650#false} is VALID [2018-11-23 12:14:41,970 INFO L273 TraceCheckUtils]: 191: Hoare triple {26650#false} assume !!(~i~1 < 40); {26650#false} is VALID [2018-11-23 12:14:41,970 INFO L273 TraceCheckUtils]: 192: Hoare triple {26650#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {26650#false} is VALID [2018-11-23 12:14:41,970 INFO L273 TraceCheckUtils]: 193: Hoare triple {26650#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {26650#false} is VALID [2018-11-23 12:14:41,970 INFO L273 TraceCheckUtils]: 194: Hoare triple {26650#false} assume !!(~i~1 < 40); {26650#false} is VALID [2018-11-23 12:14:41,970 INFO L273 TraceCheckUtils]: 195: Hoare triple {26650#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {26650#false} is VALID [2018-11-23 12:14:41,970 INFO L273 TraceCheckUtils]: 196: Hoare triple {26650#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {26650#false} is VALID [2018-11-23 12:14:41,970 INFO L273 TraceCheckUtils]: 197: Hoare triple {26650#false} assume !!(~i~1 < 40); {26650#false} is VALID [2018-11-23 12:14:41,971 INFO L273 TraceCheckUtils]: 198: Hoare triple {26650#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {26650#false} is VALID [2018-11-23 12:14:41,971 INFO L273 TraceCheckUtils]: 199: Hoare triple {26650#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {26650#false} is VALID [2018-11-23 12:14:41,971 INFO L273 TraceCheckUtils]: 200: Hoare triple {26650#false} assume !(~i~1 < 40); {26650#false} is VALID [2018-11-23 12:14:41,971 INFO L273 TraceCheckUtils]: 201: Hoare triple {26650#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {26650#false} is VALID [2018-11-23 12:14:41,971 INFO L273 TraceCheckUtils]: 202: Hoare triple {26650#false} assume true; {26650#false} is VALID [2018-11-23 12:14:41,971 INFO L268 TraceCheckUtils]: 203: Hoare quadruple {26650#false} {26650#false} #88#return; {26650#false} is VALID [2018-11-23 12:14:41,971 INFO L273 TraceCheckUtils]: 204: Hoare triple {26650#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {26650#false} is VALID [2018-11-23 12:14:41,971 INFO L273 TraceCheckUtils]: 205: Hoare triple {26650#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {26650#false} is VALID [2018-11-23 12:14:41,971 INFO L273 TraceCheckUtils]: 206: Hoare triple {26650#false} assume !false; {26650#false} is VALID [2018-11-23 12:14:41,988 INFO L134 CoverageAnalysis]: Checked inductivity of 2974 backedges. 0 proven. 169 refuted. 0 times theorem prover too weak. 2805 trivial. 0 not checked. [2018-11-23 12:14:42,007 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:14:42,007 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [16] total 16 [2018-11-23 12:14:42,007 INFO L78 Accepts]: Start accepts. Automaton has 16 states. Word has length 207 [2018-11-23 12:14:42,008 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:14:42,008 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states. [2018-11-23 12:14:42,069 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-23 12:14:42,069 INFO L459 AbstractCegarLoop]: Interpolant automaton has 16 states [2018-11-23 12:14:42,070 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2018-11-23 12:14:42,070 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=120, Invalid=120, Unknown=0, NotChecked=0, Total=240 [2018-11-23 12:14:42,070 INFO L87 Difference]: Start difference. First operand 114 states and 127 transitions. Second operand 16 states. [2018-11-23 12:14:42,318 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:42,318 INFO L93 Difference]: Finished difference Result 196 states and 222 transitions. [2018-11-23 12:14:42,318 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2018-11-23 12:14:42,318 INFO L78 Accepts]: Start accepts. Automaton has 16 states. Word has length 207 [2018-11-23 12:14:42,318 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:14:42,319 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2018-11-23 12:14:42,319 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 94 transitions. [2018-11-23 12:14:42,319 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2018-11-23 12:14:42,320 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 94 transitions. [2018-11-23 12:14:42,320 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states and 94 transitions. [2018-11-23 12:14:43,003 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 94 edges. 94 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:14:43,006 INFO L225 Difference]: With dead ends: 196 [2018-11-23 12:14:43,006 INFO L226 Difference]: Without dead ends: 117 [2018-11-23 12:14:43,007 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 206 GetRequests, 192 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=120, Invalid=120, Unknown=0, NotChecked=0, Total=240 [2018-11-23 12:14:43,007 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 117 states. [2018-11-23 12:14:44,498 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 117 to 116. [2018-11-23 12:14:44,498 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:14:44,498 INFO L82 GeneralOperation]: Start isEquivalent. First operand 117 states. Second operand 116 states. [2018-11-23 12:14:44,498 INFO L74 IsIncluded]: Start isIncluded. First operand 117 states. Second operand 116 states. [2018-11-23 12:14:44,499 INFO L87 Difference]: Start difference. First operand 117 states. Second operand 116 states. [2018-11-23 12:14:44,501 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:44,501 INFO L93 Difference]: Finished difference Result 117 states and 130 transitions. [2018-11-23 12:14:44,501 INFO L276 IsEmpty]: Start isEmpty. Operand 117 states and 130 transitions. [2018-11-23 12:14:44,502 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:14:44,502 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:14:44,502 INFO L74 IsIncluded]: Start isIncluded. First operand 116 states. Second operand 117 states. [2018-11-23 12:14:44,502 INFO L87 Difference]: Start difference. First operand 116 states. Second operand 117 states. [2018-11-23 12:14:44,505 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:44,505 INFO L93 Difference]: Finished difference Result 117 states and 130 transitions. [2018-11-23 12:14:44,505 INFO L276 IsEmpty]: Start isEmpty. Operand 117 states and 130 transitions. [2018-11-23 12:14:44,505 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:14:44,506 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:14:44,506 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:14:44,506 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:14:44,506 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 116 states. [2018-11-23 12:14:44,508 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 116 states to 116 states and 129 transitions. [2018-11-23 12:14:44,509 INFO L78 Accepts]: Start accepts. Automaton has 116 states and 129 transitions. Word has length 207 [2018-11-23 12:14:44,509 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:14:44,509 INFO L480 AbstractCegarLoop]: Abstraction has 116 states and 129 transitions. [2018-11-23 12:14:44,509 INFO L481 AbstractCegarLoop]: Interpolant automaton has 16 states. [2018-11-23 12:14:44,509 INFO L276 IsEmpty]: Start isEmpty. Operand 116 states and 129 transitions. [2018-11-23 12:14:44,510 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 210 [2018-11-23 12:14:44,510 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:14:44,511 INFO L402 BasicCegarLoop]: trace histogram [42, 42, 24, 18, 14, 14, 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, 1, 1, 1, 1, 1] [2018-11-23 12:14:44,511 INFO L423 AbstractCegarLoop]: === Iteration 37 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:14:44,511 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:14:44,511 INFO L82 PathProgramCache]: Analyzing trace with hash -692775286, now seen corresponding path program 32 times [2018-11-23 12:14:44,512 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:14:44,512 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:14:44,512 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:14:44,513 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:14:44,513 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:14:44,532 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:14:44,532 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:14:44,532 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 38 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 38 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:14:44,549 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-23 12:14:44,637 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-23 12:14:44,637 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:14:44,687 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:14:44,689 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:14:45,913 INFO L256 TraceCheckUtils]: 0: Hoare triple {27960#true} call ULTIMATE.init(); {27960#true} is VALID [2018-11-23 12:14:45,913 INFO L273 TraceCheckUtils]: 1: Hoare triple {27960#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {27960#true} is VALID [2018-11-23 12:14:45,914 INFO L273 TraceCheckUtils]: 2: Hoare triple {27960#true} assume true; {27960#true} is VALID [2018-11-23 12:14:45,914 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {27960#true} {27960#true} #78#return; {27960#true} is VALID [2018-11-23 12:14:45,914 INFO L256 TraceCheckUtils]: 4: Hoare triple {27960#true} call #t~ret12 := main(); {27960#true} is VALID [2018-11-23 12:14:45,914 INFO L273 TraceCheckUtils]: 5: Hoare triple {27960#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {27960#true} is VALID [2018-11-23 12:14:45,914 INFO L256 TraceCheckUtils]: 6: Hoare triple {27960#true} call init_nondet(~#x~0.base, ~#x~0.offset); {27960#true} is VALID [2018-11-23 12:14:45,915 INFO L273 TraceCheckUtils]: 7: Hoare triple {27960#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {27986#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:14:45,915 INFO L273 TraceCheckUtils]: 8: Hoare triple {27986#(<= init_nondet_~i~0 0)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {27986#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:14:45,916 INFO L273 TraceCheckUtils]: 9: Hoare triple {27986#(<= init_nondet_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {27993#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:14:45,916 INFO L273 TraceCheckUtils]: 10: Hoare triple {27993#(<= init_nondet_~i~0 1)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {27993#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:14:45,917 INFO L273 TraceCheckUtils]: 11: Hoare triple {27993#(<= init_nondet_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28000#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:14:45,917 INFO L273 TraceCheckUtils]: 12: Hoare triple {28000#(<= init_nondet_~i~0 2)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {28000#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:14:45,918 INFO L273 TraceCheckUtils]: 13: Hoare triple {28000#(<= init_nondet_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28007#(<= init_nondet_~i~0 3)} is VALID [2018-11-23 12:14:45,918 INFO L273 TraceCheckUtils]: 14: Hoare triple {28007#(<= init_nondet_~i~0 3)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {28007#(<= init_nondet_~i~0 3)} is VALID [2018-11-23 12:14:45,919 INFO L273 TraceCheckUtils]: 15: Hoare triple {28007#(<= init_nondet_~i~0 3)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28014#(<= init_nondet_~i~0 4)} is VALID [2018-11-23 12:14:45,919 INFO L273 TraceCheckUtils]: 16: Hoare triple {28014#(<= init_nondet_~i~0 4)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {28014#(<= init_nondet_~i~0 4)} is VALID [2018-11-23 12:14:45,920 INFO L273 TraceCheckUtils]: 17: Hoare triple {28014#(<= init_nondet_~i~0 4)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28021#(<= init_nondet_~i~0 5)} is VALID [2018-11-23 12:14:45,921 INFO L273 TraceCheckUtils]: 18: Hoare triple {28021#(<= init_nondet_~i~0 5)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {28021#(<= init_nondet_~i~0 5)} is VALID [2018-11-23 12:14:45,921 INFO L273 TraceCheckUtils]: 19: Hoare triple {28021#(<= init_nondet_~i~0 5)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28028#(<= init_nondet_~i~0 6)} is VALID [2018-11-23 12:14:45,922 INFO L273 TraceCheckUtils]: 20: Hoare triple {28028#(<= init_nondet_~i~0 6)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {28028#(<= init_nondet_~i~0 6)} is VALID [2018-11-23 12:14:45,923 INFO L273 TraceCheckUtils]: 21: Hoare triple {28028#(<= init_nondet_~i~0 6)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28035#(<= init_nondet_~i~0 7)} is VALID [2018-11-23 12:14:45,923 INFO L273 TraceCheckUtils]: 22: Hoare triple {28035#(<= init_nondet_~i~0 7)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {28035#(<= init_nondet_~i~0 7)} is VALID [2018-11-23 12:14:45,924 INFO L273 TraceCheckUtils]: 23: Hoare triple {28035#(<= init_nondet_~i~0 7)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28042#(<= init_nondet_~i~0 8)} is VALID [2018-11-23 12:14:45,924 INFO L273 TraceCheckUtils]: 24: Hoare triple {28042#(<= init_nondet_~i~0 8)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {28042#(<= init_nondet_~i~0 8)} is VALID [2018-11-23 12:14:45,925 INFO L273 TraceCheckUtils]: 25: Hoare triple {28042#(<= init_nondet_~i~0 8)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28049#(<= init_nondet_~i~0 9)} is VALID [2018-11-23 12:14:45,926 INFO L273 TraceCheckUtils]: 26: Hoare triple {28049#(<= init_nondet_~i~0 9)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {28049#(<= init_nondet_~i~0 9)} is VALID [2018-11-23 12:14:45,926 INFO L273 TraceCheckUtils]: 27: Hoare triple {28049#(<= init_nondet_~i~0 9)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28056#(<= init_nondet_~i~0 10)} is VALID [2018-11-23 12:14:45,927 INFO L273 TraceCheckUtils]: 28: Hoare triple {28056#(<= init_nondet_~i~0 10)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {28056#(<= init_nondet_~i~0 10)} is VALID [2018-11-23 12:14:45,928 INFO L273 TraceCheckUtils]: 29: Hoare triple {28056#(<= init_nondet_~i~0 10)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28063#(<= init_nondet_~i~0 11)} is VALID [2018-11-23 12:14:45,928 INFO L273 TraceCheckUtils]: 30: Hoare triple {28063#(<= init_nondet_~i~0 11)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {28063#(<= init_nondet_~i~0 11)} is VALID [2018-11-23 12:14:45,929 INFO L273 TraceCheckUtils]: 31: Hoare triple {28063#(<= init_nondet_~i~0 11)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28070#(<= init_nondet_~i~0 12)} is VALID [2018-11-23 12:14:45,929 INFO L273 TraceCheckUtils]: 32: Hoare triple {28070#(<= init_nondet_~i~0 12)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {28070#(<= init_nondet_~i~0 12)} is VALID [2018-11-23 12:14:45,930 INFO L273 TraceCheckUtils]: 33: Hoare triple {28070#(<= init_nondet_~i~0 12)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28077#(<= init_nondet_~i~0 13)} is VALID [2018-11-23 12:14:45,931 INFO L273 TraceCheckUtils]: 34: Hoare triple {28077#(<= init_nondet_~i~0 13)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {28077#(<= init_nondet_~i~0 13)} is VALID [2018-11-23 12:14:45,931 INFO L273 TraceCheckUtils]: 35: Hoare triple {28077#(<= init_nondet_~i~0 13)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28084#(<= init_nondet_~i~0 14)} is VALID [2018-11-23 12:14:45,932 INFO L273 TraceCheckUtils]: 36: Hoare triple {28084#(<= init_nondet_~i~0 14)} assume !(~i~0 < 40); {27961#false} is VALID [2018-11-23 12:14:45,932 INFO L273 TraceCheckUtils]: 37: Hoare triple {27961#false} assume true; {27961#false} is VALID [2018-11-23 12:14:45,932 INFO L268 TraceCheckUtils]: 38: Hoare quadruple {27961#false} {27960#true} #82#return; {27961#false} is VALID [2018-11-23 12:14:45,933 INFO L273 TraceCheckUtils]: 39: Hoare triple {27961#false} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {27961#false} is VALID [2018-11-23 12:14:45,933 INFO L256 TraceCheckUtils]: 40: Hoare triple {27961#false} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {27961#false} is VALID [2018-11-23 12:14:45,933 INFO L273 TraceCheckUtils]: 41: Hoare triple {27961#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {27961#false} is VALID [2018-11-23 12:14:45,933 INFO L273 TraceCheckUtils]: 42: Hoare triple {27961#false} assume !!(~i~1 < 40); {27961#false} is VALID [2018-11-23 12:14:45,933 INFO L273 TraceCheckUtils]: 43: Hoare triple {27961#false} assume !(~i~1 > 20); {27961#false} is VALID [2018-11-23 12:14:45,933 INFO L273 TraceCheckUtils]: 44: Hoare triple {27961#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {27961#false} is VALID [2018-11-23 12:14:45,934 INFO L273 TraceCheckUtils]: 45: Hoare triple {27961#false} assume !!(~i~1 < 40); {27961#false} is VALID [2018-11-23 12:14:45,934 INFO L273 TraceCheckUtils]: 46: Hoare triple {27961#false} assume !(~i~1 > 20); {27961#false} is VALID [2018-11-23 12:14:45,934 INFO L273 TraceCheckUtils]: 47: Hoare triple {27961#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {27961#false} is VALID [2018-11-23 12:14:45,934 INFO L273 TraceCheckUtils]: 48: Hoare triple {27961#false} assume !!(~i~1 < 40); {27961#false} is VALID [2018-11-23 12:14:45,934 INFO L273 TraceCheckUtils]: 49: Hoare triple {27961#false} assume !(~i~1 > 20); {27961#false} is VALID [2018-11-23 12:14:45,935 INFO L273 TraceCheckUtils]: 50: Hoare triple {27961#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {27961#false} is VALID [2018-11-23 12:14:45,935 INFO L273 TraceCheckUtils]: 51: Hoare triple {27961#false} assume !!(~i~1 < 40); {27961#false} is VALID [2018-11-23 12:14:45,935 INFO L273 TraceCheckUtils]: 52: Hoare triple {27961#false} assume !(~i~1 > 20); {27961#false} is VALID [2018-11-23 12:14:45,935 INFO L273 TraceCheckUtils]: 53: Hoare triple {27961#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {27961#false} is VALID [2018-11-23 12:14:45,935 INFO L273 TraceCheckUtils]: 54: Hoare triple {27961#false} assume !!(~i~1 < 40); {27961#false} is VALID [2018-11-23 12:14:45,935 INFO L273 TraceCheckUtils]: 55: Hoare triple {27961#false} assume !(~i~1 > 20); {27961#false} is VALID [2018-11-23 12:14:45,935 INFO L273 TraceCheckUtils]: 56: Hoare triple {27961#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {27961#false} is VALID [2018-11-23 12:14:45,935 INFO L273 TraceCheckUtils]: 57: Hoare triple {27961#false} assume !!(~i~1 < 40); {27961#false} is VALID [2018-11-23 12:14:45,935 INFO L273 TraceCheckUtils]: 58: Hoare triple {27961#false} assume !(~i~1 > 20); {27961#false} is VALID [2018-11-23 12:14:45,936 INFO L273 TraceCheckUtils]: 59: Hoare triple {27961#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {27961#false} is VALID [2018-11-23 12:14:45,936 INFO L273 TraceCheckUtils]: 60: Hoare triple {27961#false} assume !!(~i~1 < 40); {27961#false} is VALID [2018-11-23 12:14:45,936 INFO L273 TraceCheckUtils]: 61: Hoare triple {27961#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {27961#false} is VALID [2018-11-23 12:14:45,936 INFO L273 TraceCheckUtils]: 62: Hoare triple {27961#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {27961#false} is VALID [2018-11-23 12:14:45,936 INFO L273 TraceCheckUtils]: 63: Hoare triple {27961#false} assume !!(~i~1 < 40); {27961#false} is VALID [2018-11-23 12:14:45,936 INFO L273 TraceCheckUtils]: 64: Hoare triple {27961#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {27961#false} is VALID [2018-11-23 12:14:45,936 INFO L273 TraceCheckUtils]: 65: Hoare triple {27961#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {27961#false} is VALID [2018-11-23 12:14:45,936 INFO L273 TraceCheckUtils]: 66: Hoare triple {27961#false} assume !!(~i~1 < 40); {27961#false} is VALID [2018-11-23 12:14:45,936 INFO L273 TraceCheckUtils]: 67: Hoare triple {27961#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {27961#false} is VALID [2018-11-23 12:14:45,937 INFO L273 TraceCheckUtils]: 68: Hoare triple {27961#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {27961#false} is VALID [2018-11-23 12:14:45,937 INFO L273 TraceCheckUtils]: 69: Hoare triple {27961#false} assume !!(~i~1 < 40); {27961#false} is VALID [2018-11-23 12:14:45,937 INFO L273 TraceCheckUtils]: 70: Hoare triple {27961#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {27961#false} is VALID [2018-11-23 12:14:45,937 INFO L273 TraceCheckUtils]: 71: Hoare triple {27961#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {27961#false} is VALID [2018-11-23 12:14:45,937 INFO L273 TraceCheckUtils]: 72: Hoare triple {27961#false} assume !!(~i~1 < 40); {27961#false} is VALID [2018-11-23 12:14:45,937 INFO L273 TraceCheckUtils]: 73: Hoare triple {27961#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {27961#false} is VALID [2018-11-23 12:14:45,937 INFO L273 TraceCheckUtils]: 74: Hoare triple {27961#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {27961#false} is VALID [2018-11-23 12:14:45,937 INFO L273 TraceCheckUtils]: 75: Hoare triple {27961#false} assume !!(~i~1 < 40); {27961#false} is VALID [2018-11-23 12:14:45,937 INFO L273 TraceCheckUtils]: 76: Hoare triple {27961#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {27961#false} is VALID [2018-11-23 12:14:45,938 INFO L273 TraceCheckUtils]: 77: Hoare triple {27961#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {27961#false} is VALID [2018-11-23 12:14:45,938 INFO L273 TraceCheckUtils]: 78: Hoare triple {27961#false} assume !!(~i~1 < 40); {27961#false} is VALID [2018-11-23 12:14:45,938 INFO L273 TraceCheckUtils]: 79: Hoare triple {27961#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {27961#false} is VALID [2018-11-23 12:14:45,938 INFO L273 TraceCheckUtils]: 80: Hoare triple {27961#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {27961#false} is VALID [2018-11-23 12:14:45,938 INFO L273 TraceCheckUtils]: 81: Hoare triple {27961#false} assume !!(~i~1 < 40); {27961#false} is VALID [2018-11-23 12:14:45,938 INFO L273 TraceCheckUtils]: 82: Hoare triple {27961#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {27961#false} is VALID [2018-11-23 12:14:45,938 INFO L273 TraceCheckUtils]: 83: Hoare triple {27961#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {27961#false} is VALID [2018-11-23 12:14:45,938 INFO L273 TraceCheckUtils]: 84: Hoare triple {27961#false} assume !(~i~1 < 40); {27961#false} is VALID [2018-11-23 12:14:45,938 INFO L273 TraceCheckUtils]: 85: Hoare triple {27961#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {27961#false} is VALID [2018-11-23 12:14:45,939 INFO L273 TraceCheckUtils]: 86: Hoare triple {27961#false} assume true; {27961#false} is VALID [2018-11-23 12:14:45,939 INFO L268 TraceCheckUtils]: 87: Hoare quadruple {27961#false} {27961#false} #84#return; {27961#false} is VALID [2018-11-23 12:14:45,939 INFO L273 TraceCheckUtils]: 88: Hoare triple {27961#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {27961#false} is VALID [2018-11-23 12:14:45,939 INFO L256 TraceCheckUtils]: 89: Hoare triple {27961#false} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {27961#false} is VALID [2018-11-23 12:14:45,939 INFO L273 TraceCheckUtils]: 90: Hoare triple {27961#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {27961#false} is VALID [2018-11-23 12:14:45,939 INFO L273 TraceCheckUtils]: 91: Hoare triple {27961#false} assume !!(~i~1 < 40); {27961#false} is VALID [2018-11-23 12:14:45,939 INFO L273 TraceCheckUtils]: 92: Hoare triple {27961#false} assume !(~i~1 > 20); {27961#false} is VALID [2018-11-23 12:14:45,939 INFO L273 TraceCheckUtils]: 93: Hoare triple {27961#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {27961#false} is VALID [2018-11-23 12:14:45,939 INFO L273 TraceCheckUtils]: 94: Hoare triple {27961#false} assume !!(~i~1 < 40); {27961#false} is VALID [2018-11-23 12:14:45,939 INFO L273 TraceCheckUtils]: 95: Hoare triple {27961#false} assume !(~i~1 > 20); {27961#false} is VALID [2018-11-23 12:14:45,940 INFO L273 TraceCheckUtils]: 96: Hoare triple {27961#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {27961#false} is VALID [2018-11-23 12:14:45,940 INFO L273 TraceCheckUtils]: 97: Hoare triple {27961#false} assume !!(~i~1 < 40); {27961#false} is VALID [2018-11-23 12:14:45,940 INFO L273 TraceCheckUtils]: 98: Hoare triple {27961#false} assume !(~i~1 > 20); {27961#false} is VALID [2018-11-23 12:14:45,940 INFO L273 TraceCheckUtils]: 99: Hoare triple {27961#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {27961#false} is VALID [2018-11-23 12:14:45,940 INFO L273 TraceCheckUtils]: 100: Hoare triple {27961#false} assume !!(~i~1 < 40); {27961#false} is VALID [2018-11-23 12:14:45,940 INFO L273 TraceCheckUtils]: 101: Hoare triple {27961#false} assume !(~i~1 > 20); {27961#false} is VALID [2018-11-23 12:14:45,940 INFO L273 TraceCheckUtils]: 102: Hoare triple {27961#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {27961#false} is VALID [2018-11-23 12:14:45,940 INFO L273 TraceCheckUtils]: 103: Hoare triple {27961#false} assume !!(~i~1 < 40); {27961#false} is VALID [2018-11-23 12:14:45,940 INFO L273 TraceCheckUtils]: 104: Hoare triple {27961#false} assume !(~i~1 > 20); {27961#false} is VALID [2018-11-23 12:14:45,941 INFO L273 TraceCheckUtils]: 105: Hoare triple {27961#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {27961#false} is VALID [2018-11-23 12:14:45,941 INFO L273 TraceCheckUtils]: 106: Hoare triple {27961#false} assume !!(~i~1 < 40); {27961#false} is VALID [2018-11-23 12:14:45,941 INFO L273 TraceCheckUtils]: 107: Hoare triple {27961#false} assume !(~i~1 > 20); {27961#false} is VALID [2018-11-23 12:14:45,941 INFO L273 TraceCheckUtils]: 108: Hoare triple {27961#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {27961#false} is VALID [2018-11-23 12:14:45,941 INFO L273 TraceCheckUtils]: 109: Hoare triple {27961#false} assume !!(~i~1 < 40); {27961#false} is VALID [2018-11-23 12:14:45,941 INFO L273 TraceCheckUtils]: 110: Hoare triple {27961#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {27961#false} is VALID [2018-11-23 12:14:45,941 INFO L273 TraceCheckUtils]: 111: Hoare triple {27961#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {27961#false} is VALID [2018-11-23 12:14:45,941 INFO L273 TraceCheckUtils]: 112: Hoare triple {27961#false} assume !!(~i~1 < 40); {27961#false} is VALID [2018-11-23 12:14:45,941 INFO L273 TraceCheckUtils]: 113: Hoare triple {27961#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {27961#false} is VALID [2018-11-23 12:14:45,942 INFO L273 TraceCheckUtils]: 114: Hoare triple {27961#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {27961#false} is VALID [2018-11-23 12:14:45,942 INFO L273 TraceCheckUtils]: 115: Hoare triple {27961#false} assume !!(~i~1 < 40); {27961#false} is VALID [2018-11-23 12:14:45,942 INFO L273 TraceCheckUtils]: 116: Hoare triple {27961#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {27961#false} is VALID [2018-11-23 12:14:45,942 INFO L273 TraceCheckUtils]: 117: Hoare triple {27961#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {27961#false} is VALID [2018-11-23 12:14:45,942 INFO L273 TraceCheckUtils]: 118: Hoare triple {27961#false} assume !!(~i~1 < 40); {27961#false} is VALID [2018-11-23 12:14:45,942 INFO L273 TraceCheckUtils]: 119: Hoare triple {27961#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {27961#false} is VALID [2018-11-23 12:14:45,942 INFO L273 TraceCheckUtils]: 120: Hoare triple {27961#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {27961#false} is VALID [2018-11-23 12:14:45,942 INFO L273 TraceCheckUtils]: 121: Hoare triple {27961#false} assume !!(~i~1 < 40); {27961#false} is VALID [2018-11-23 12:14:45,942 INFO L273 TraceCheckUtils]: 122: Hoare triple {27961#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {27961#false} is VALID [2018-11-23 12:14:45,942 INFO L273 TraceCheckUtils]: 123: Hoare triple {27961#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {27961#false} is VALID [2018-11-23 12:14:45,943 INFO L273 TraceCheckUtils]: 124: Hoare triple {27961#false} assume !!(~i~1 < 40); {27961#false} is VALID [2018-11-23 12:14:45,943 INFO L273 TraceCheckUtils]: 125: Hoare triple {27961#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {27961#false} is VALID [2018-11-23 12:14:45,943 INFO L273 TraceCheckUtils]: 126: Hoare triple {27961#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {27961#false} is VALID [2018-11-23 12:14:45,943 INFO L273 TraceCheckUtils]: 127: Hoare triple {27961#false} assume !!(~i~1 < 40); {27961#false} is VALID [2018-11-23 12:14:45,943 INFO L273 TraceCheckUtils]: 128: Hoare triple {27961#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {27961#false} is VALID [2018-11-23 12:14:45,943 INFO L273 TraceCheckUtils]: 129: Hoare triple {27961#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {27961#false} is VALID [2018-11-23 12:14:45,943 INFO L273 TraceCheckUtils]: 130: Hoare triple {27961#false} assume !!(~i~1 < 40); {27961#false} is VALID [2018-11-23 12:14:45,943 INFO L273 TraceCheckUtils]: 131: Hoare triple {27961#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {27961#false} is VALID [2018-11-23 12:14:45,943 INFO L273 TraceCheckUtils]: 132: Hoare triple {27961#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {27961#false} is VALID [2018-11-23 12:14:45,944 INFO L273 TraceCheckUtils]: 133: Hoare triple {27961#false} assume !(~i~1 < 40); {27961#false} is VALID [2018-11-23 12:14:45,944 INFO L273 TraceCheckUtils]: 134: Hoare triple {27961#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {27961#false} is VALID [2018-11-23 12:14:45,944 INFO L273 TraceCheckUtils]: 135: Hoare triple {27961#false} assume true; {27961#false} is VALID [2018-11-23 12:14:45,944 INFO L268 TraceCheckUtils]: 136: Hoare quadruple {27961#false} {27961#false} #86#return; {27961#false} is VALID [2018-11-23 12:14:45,944 INFO L273 TraceCheckUtils]: 137: Hoare triple {27961#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {27961#false} is VALID [2018-11-23 12:14:45,944 INFO L273 TraceCheckUtils]: 138: Hoare triple {27961#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {27961#false} is VALID [2018-11-23 12:14:45,944 INFO L273 TraceCheckUtils]: 139: Hoare triple {27961#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {27961#false} is VALID [2018-11-23 12:14:45,944 INFO L273 TraceCheckUtils]: 140: Hoare triple {27961#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {27961#false} is VALID [2018-11-23 12:14:45,944 INFO L273 TraceCheckUtils]: 141: Hoare triple {27961#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {27961#false} is VALID [2018-11-23 12:14:45,944 INFO L273 TraceCheckUtils]: 142: Hoare triple {27961#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {27961#false} is VALID [2018-11-23 12:14:45,945 INFO L273 TraceCheckUtils]: 143: Hoare triple {27961#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {27961#false} is VALID [2018-11-23 12:14:45,945 INFO L273 TraceCheckUtils]: 144: Hoare triple {27961#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {27961#false} is VALID [2018-11-23 12:14:45,945 INFO L273 TraceCheckUtils]: 145: Hoare triple {27961#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {27961#false} is VALID [2018-11-23 12:14:45,945 INFO L273 TraceCheckUtils]: 146: Hoare triple {27961#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {27961#false} is VALID [2018-11-23 12:14:45,945 INFO L273 TraceCheckUtils]: 147: Hoare triple {27961#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {27961#false} is VALID [2018-11-23 12:14:45,945 INFO L273 TraceCheckUtils]: 148: Hoare triple {27961#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {27961#false} is VALID [2018-11-23 12:14:45,945 INFO L273 TraceCheckUtils]: 149: Hoare triple {27961#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {27961#false} is VALID [2018-11-23 12:14:45,945 INFO L273 TraceCheckUtils]: 150: Hoare triple {27961#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {27961#false} is VALID [2018-11-23 12:14:45,945 INFO L273 TraceCheckUtils]: 151: Hoare triple {27961#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {27961#false} is VALID [2018-11-23 12:14:45,946 INFO L273 TraceCheckUtils]: 152: Hoare triple {27961#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {27961#false} is VALID [2018-11-23 12:14:45,946 INFO L273 TraceCheckUtils]: 153: Hoare triple {27961#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {27961#false} is VALID [2018-11-23 12:14:45,946 INFO L273 TraceCheckUtils]: 154: Hoare triple {27961#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {27961#false} is VALID [2018-11-23 12:14:45,946 INFO L273 TraceCheckUtils]: 155: Hoare triple {27961#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {27961#false} is VALID [2018-11-23 12:14:45,946 INFO L273 TraceCheckUtils]: 156: Hoare triple {27961#false} assume !(~i~2 < 39); {27961#false} is VALID [2018-11-23 12:14:45,946 INFO L273 TraceCheckUtils]: 157: Hoare triple {27961#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {27961#false} is VALID [2018-11-23 12:14:45,946 INFO L256 TraceCheckUtils]: 158: Hoare triple {27961#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {27961#false} is VALID [2018-11-23 12:14:45,946 INFO L273 TraceCheckUtils]: 159: Hoare triple {27961#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {27961#false} is VALID [2018-11-23 12:14:45,946 INFO L273 TraceCheckUtils]: 160: Hoare triple {27961#false} assume !!(~i~1 < 40); {27961#false} is VALID [2018-11-23 12:14:45,946 INFO L273 TraceCheckUtils]: 161: Hoare triple {27961#false} assume !(~i~1 > 20); {27961#false} is VALID [2018-11-23 12:14:45,947 INFO L273 TraceCheckUtils]: 162: Hoare triple {27961#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {27961#false} is VALID [2018-11-23 12:14:45,947 INFO L273 TraceCheckUtils]: 163: Hoare triple {27961#false} assume !!(~i~1 < 40); {27961#false} is VALID [2018-11-23 12:14:45,947 INFO L273 TraceCheckUtils]: 164: Hoare triple {27961#false} assume !(~i~1 > 20); {27961#false} is VALID [2018-11-23 12:14:45,947 INFO L273 TraceCheckUtils]: 165: Hoare triple {27961#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {27961#false} is VALID [2018-11-23 12:14:45,947 INFO L273 TraceCheckUtils]: 166: Hoare triple {27961#false} assume !!(~i~1 < 40); {27961#false} is VALID [2018-11-23 12:14:45,947 INFO L273 TraceCheckUtils]: 167: Hoare triple {27961#false} assume !(~i~1 > 20); {27961#false} is VALID [2018-11-23 12:14:45,947 INFO L273 TraceCheckUtils]: 168: Hoare triple {27961#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {27961#false} is VALID [2018-11-23 12:14:45,947 INFO L273 TraceCheckUtils]: 169: Hoare triple {27961#false} assume !!(~i~1 < 40); {27961#false} is VALID [2018-11-23 12:14:45,947 INFO L273 TraceCheckUtils]: 170: Hoare triple {27961#false} assume !(~i~1 > 20); {27961#false} is VALID [2018-11-23 12:14:45,948 INFO L273 TraceCheckUtils]: 171: Hoare triple {27961#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {27961#false} is VALID [2018-11-23 12:14:45,948 INFO L273 TraceCheckUtils]: 172: Hoare triple {27961#false} assume !!(~i~1 < 40); {27961#false} is VALID [2018-11-23 12:14:45,948 INFO L273 TraceCheckUtils]: 173: Hoare triple {27961#false} assume !(~i~1 > 20); {27961#false} is VALID [2018-11-23 12:14:45,948 INFO L273 TraceCheckUtils]: 174: Hoare triple {27961#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {27961#false} is VALID [2018-11-23 12:14:45,948 INFO L273 TraceCheckUtils]: 175: Hoare triple {27961#false} assume !!(~i~1 < 40); {27961#false} is VALID [2018-11-23 12:14:45,948 INFO L273 TraceCheckUtils]: 176: Hoare triple {27961#false} assume !(~i~1 > 20); {27961#false} is VALID [2018-11-23 12:14:45,948 INFO L273 TraceCheckUtils]: 177: Hoare triple {27961#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {27961#false} is VALID [2018-11-23 12:14:45,948 INFO L273 TraceCheckUtils]: 178: Hoare triple {27961#false} assume !!(~i~1 < 40); {27961#false} is VALID [2018-11-23 12:14:45,948 INFO L273 TraceCheckUtils]: 179: Hoare triple {27961#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {27961#false} is VALID [2018-11-23 12:14:45,948 INFO L273 TraceCheckUtils]: 180: Hoare triple {27961#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {27961#false} is VALID [2018-11-23 12:14:45,949 INFO L273 TraceCheckUtils]: 181: Hoare triple {27961#false} assume !!(~i~1 < 40); {27961#false} is VALID [2018-11-23 12:14:45,949 INFO L273 TraceCheckUtils]: 182: Hoare triple {27961#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {27961#false} is VALID [2018-11-23 12:14:45,949 INFO L273 TraceCheckUtils]: 183: Hoare triple {27961#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {27961#false} is VALID [2018-11-23 12:14:45,949 INFO L273 TraceCheckUtils]: 184: Hoare triple {27961#false} assume !!(~i~1 < 40); {27961#false} is VALID [2018-11-23 12:14:45,949 INFO L273 TraceCheckUtils]: 185: Hoare triple {27961#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {27961#false} is VALID [2018-11-23 12:14:45,949 INFO L273 TraceCheckUtils]: 186: Hoare triple {27961#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {27961#false} is VALID [2018-11-23 12:14:45,949 INFO L273 TraceCheckUtils]: 187: Hoare triple {27961#false} assume !!(~i~1 < 40); {27961#false} is VALID [2018-11-23 12:14:45,949 INFO L273 TraceCheckUtils]: 188: Hoare triple {27961#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {27961#false} is VALID [2018-11-23 12:14:45,949 INFO L273 TraceCheckUtils]: 189: Hoare triple {27961#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {27961#false} is VALID [2018-11-23 12:14:45,950 INFO L273 TraceCheckUtils]: 190: Hoare triple {27961#false} assume !!(~i~1 < 40); {27961#false} is VALID [2018-11-23 12:14:45,950 INFO L273 TraceCheckUtils]: 191: Hoare triple {27961#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {27961#false} is VALID [2018-11-23 12:14:45,950 INFO L273 TraceCheckUtils]: 192: Hoare triple {27961#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {27961#false} is VALID [2018-11-23 12:14:45,950 INFO L273 TraceCheckUtils]: 193: Hoare triple {27961#false} assume !!(~i~1 < 40); {27961#false} is VALID [2018-11-23 12:14:45,950 INFO L273 TraceCheckUtils]: 194: Hoare triple {27961#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {27961#false} is VALID [2018-11-23 12:14:45,950 INFO L273 TraceCheckUtils]: 195: Hoare triple {27961#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {27961#false} is VALID [2018-11-23 12:14:45,950 INFO L273 TraceCheckUtils]: 196: Hoare triple {27961#false} assume !!(~i~1 < 40); {27961#false} is VALID [2018-11-23 12:14:45,950 INFO L273 TraceCheckUtils]: 197: Hoare triple {27961#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {27961#false} is VALID [2018-11-23 12:14:45,950 INFO L273 TraceCheckUtils]: 198: Hoare triple {27961#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {27961#false} is VALID [2018-11-23 12:14:45,950 INFO L273 TraceCheckUtils]: 199: Hoare triple {27961#false} assume !!(~i~1 < 40); {27961#false} is VALID [2018-11-23 12:14:45,951 INFO L273 TraceCheckUtils]: 200: Hoare triple {27961#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {27961#false} is VALID [2018-11-23 12:14:45,951 INFO L273 TraceCheckUtils]: 201: Hoare triple {27961#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {27961#false} is VALID [2018-11-23 12:14:45,951 INFO L273 TraceCheckUtils]: 202: Hoare triple {27961#false} assume !(~i~1 < 40); {27961#false} is VALID [2018-11-23 12:14:45,951 INFO L273 TraceCheckUtils]: 203: Hoare triple {27961#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {27961#false} is VALID [2018-11-23 12:14:45,951 INFO L273 TraceCheckUtils]: 204: Hoare triple {27961#false} assume true; {27961#false} is VALID [2018-11-23 12:14:45,951 INFO L268 TraceCheckUtils]: 205: Hoare quadruple {27961#false} {27961#false} #88#return; {27961#false} is VALID [2018-11-23 12:14:45,951 INFO L273 TraceCheckUtils]: 206: Hoare triple {27961#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {27961#false} is VALID [2018-11-23 12:14:45,951 INFO L273 TraceCheckUtils]: 207: Hoare triple {27961#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {27961#false} is VALID [2018-11-23 12:14:45,951 INFO L273 TraceCheckUtils]: 208: Hoare triple {27961#false} assume !false; {27961#false} is VALID [2018-11-23 12:14:45,968 INFO L134 CoverageAnalysis]: Checked inductivity of 3001 backedges. 0 proven. 196 refuted. 0 times theorem prover too weak. 2805 trivial. 0 not checked. [2018-11-23 12:14:45,987 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:14:45,988 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [17] total 17 [2018-11-23 12:14:45,988 INFO L78 Accepts]: Start accepts. Automaton has 17 states. Word has length 209 [2018-11-23 12:14:45,989 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:14:45,989 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states. [2018-11-23 12:14:46,049 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 63 edges. 63 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:14:46,049 INFO L459 AbstractCegarLoop]: Interpolant automaton has 17 states [2018-11-23 12:14:46,049 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2018-11-23 12:14:46,049 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=136, Invalid=136, Unknown=0, NotChecked=0, Total=272 [2018-11-23 12:14:46,050 INFO L87 Difference]: Start difference. First operand 116 states and 129 transitions. Second operand 17 states. [2018-11-23 12:14:47,116 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:47,117 INFO L93 Difference]: Finished difference Result 198 states and 224 transitions. [2018-11-23 12:14:47,117 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2018-11-23 12:14:47,117 INFO L78 Accepts]: Start accepts. Automaton has 17 states. Word has length 209 [2018-11-23 12:14:47,117 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:14:47,117 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 17 states. [2018-11-23 12:14:47,118 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 96 transitions. [2018-11-23 12:14:47,118 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 17 states. [2018-11-23 12:14:47,119 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 96 transitions. [2018-11-23 12:14:47,119 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states and 96 transitions. [2018-11-23 12:14:47,228 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-23 12:14:47,231 INFO L225 Difference]: With dead ends: 198 [2018-11-23 12:14:47,231 INFO L226 Difference]: Without dead ends: 119 [2018-11-23 12:14:47,232 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 208 GetRequests, 193 SyntacticMatches, 0 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=136, Invalid=136, Unknown=0, NotChecked=0, Total=272 [2018-11-23 12:14:47,232 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 119 states. [2018-11-23 12:14:47,375 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 119 to 118. [2018-11-23 12:14:47,375 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:14:47,375 INFO L82 GeneralOperation]: Start isEquivalent. First operand 119 states. Second operand 118 states. [2018-11-23 12:14:47,375 INFO L74 IsIncluded]: Start isIncluded. First operand 119 states. Second operand 118 states. [2018-11-23 12:14:47,376 INFO L87 Difference]: Start difference. First operand 119 states. Second operand 118 states. [2018-11-23 12:14:47,378 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:47,378 INFO L93 Difference]: Finished difference Result 119 states and 132 transitions. [2018-11-23 12:14:47,378 INFO L276 IsEmpty]: Start isEmpty. Operand 119 states and 132 transitions. [2018-11-23 12:14:47,378 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:14:47,379 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:14:47,379 INFO L74 IsIncluded]: Start isIncluded. First operand 118 states. Second operand 119 states. [2018-11-23 12:14:47,379 INFO L87 Difference]: Start difference. First operand 118 states. Second operand 119 states. [2018-11-23 12:14:47,381 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:47,381 INFO L93 Difference]: Finished difference Result 119 states and 132 transitions. [2018-11-23 12:14:47,381 INFO L276 IsEmpty]: Start isEmpty. Operand 119 states and 132 transitions. [2018-11-23 12:14:47,381 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:14:47,382 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:14:47,382 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:14:47,382 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:14:47,382 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 118 states. [2018-11-23 12:14:47,384 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 118 states to 118 states and 131 transitions. [2018-11-23 12:14:47,384 INFO L78 Accepts]: Start accepts. Automaton has 118 states and 131 transitions. Word has length 209 [2018-11-23 12:14:47,384 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:14:47,385 INFO L480 AbstractCegarLoop]: Abstraction has 118 states and 131 transitions. [2018-11-23 12:14:47,385 INFO L481 AbstractCegarLoop]: Interpolant automaton has 17 states. [2018-11-23 12:14:47,385 INFO L276 IsEmpty]: Start isEmpty. Operand 118 states and 131 transitions. [2018-11-23 12:14:47,386 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 212 [2018-11-23 12:14:47,386 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:14:47,386 INFO L402 BasicCegarLoop]: trace histogram [42, 42, 24, 18, 15, 15, 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, 1, 1, 1, 1, 1] [2018-11-23 12:14:47,386 INFO L423 AbstractCegarLoop]: === Iteration 38 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:14:47,387 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:14:47,387 INFO L82 PathProgramCache]: Analyzing trace with hash 915001608, now seen corresponding path program 33 times [2018-11-23 12:14:47,387 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:14:47,387 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:14:47,388 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:14:47,388 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:14:47,388 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:14:47,400 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:14:47,400 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:14:47,400 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 39 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 39 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:14:47,417 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-23 12:14:47,751 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 11 check-sat command(s) [2018-11-23 12:14:47,751 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:14:47,790 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:14:47,792 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:14:48,165 INFO L256 TraceCheckUtils]: 0: Hoare triple {29288#true} call ULTIMATE.init(); {29288#true} is VALID [2018-11-23 12:14:48,166 INFO L273 TraceCheckUtils]: 1: Hoare triple {29288#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {29288#true} is VALID [2018-11-23 12:14:48,166 INFO L273 TraceCheckUtils]: 2: Hoare triple {29288#true} assume true; {29288#true} is VALID [2018-11-23 12:14:48,166 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {29288#true} {29288#true} #78#return; {29288#true} is VALID [2018-11-23 12:14:48,166 INFO L256 TraceCheckUtils]: 4: Hoare triple {29288#true} call #t~ret12 := main(); {29288#true} is VALID [2018-11-23 12:14:48,166 INFO L273 TraceCheckUtils]: 5: Hoare triple {29288#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {29288#true} is VALID [2018-11-23 12:14:48,166 INFO L256 TraceCheckUtils]: 6: Hoare triple {29288#true} call init_nondet(~#x~0.base, ~#x~0.offset); {29288#true} is VALID [2018-11-23 12:14:48,166 INFO L273 TraceCheckUtils]: 7: Hoare triple {29288#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {29288#true} is VALID [2018-11-23 12:14:48,166 INFO L273 TraceCheckUtils]: 8: Hoare triple {29288#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {29288#true} is VALID [2018-11-23 12:14:48,166 INFO L273 TraceCheckUtils]: 9: Hoare triple {29288#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {29288#true} is VALID [2018-11-23 12:14:48,167 INFO L273 TraceCheckUtils]: 10: Hoare triple {29288#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {29288#true} is VALID [2018-11-23 12:14:48,167 INFO L273 TraceCheckUtils]: 11: Hoare triple {29288#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {29288#true} is VALID [2018-11-23 12:14:48,167 INFO L273 TraceCheckUtils]: 12: Hoare triple {29288#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {29288#true} is VALID [2018-11-23 12:14:48,167 INFO L273 TraceCheckUtils]: 13: Hoare triple {29288#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {29288#true} is VALID [2018-11-23 12:14:48,167 INFO L273 TraceCheckUtils]: 14: Hoare triple {29288#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {29288#true} is VALID [2018-11-23 12:14:48,167 INFO L273 TraceCheckUtils]: 15: Hoare triple {29288#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {29288#true} is VALID [2018-11-23 12:14:48,167 INFO L273 TraceCheckUtils]: 16: Hoare triple {29288#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {29288#true} is VALID [2018-11-23 12:14:48,167 INFO L273 TraceCheckUtils]: 17: Hoare triple {29288#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {29288#true} is VALID [2018-11-23 12:14:48,167 INFO L273 TraceCheckUtils]: 18: Hoare triple {29288#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {29288#true} is VALID [2018-11-23 12:14:48,168 INFO L273 TraceCheckUtils]: 19: Hoare triple {29288#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {29288#true} is VALID [2018-11-23 12:14:48,168 INFO L273 TraceCheckUtils]: 20: Hoare triple {29288#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {29288#true} is VALID [2018-11-23 12:14:48,168 INFO L273 TraceCheckUtils]: 21: Hoare triple {29288#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {29288#true} is VALID [2018-11-23 12:14:48,168 INFO L273 TraceCheckUtils]: 22: Hoare triple {29288#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {29288#true} is VALID [2018-11-23 12:14:48,168 INFO L273 TraceCheckUtils]: 23: Hoare triple {29288#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {29288#true} is VALID [2018-11-23 12:14:48,168 INFO L273 TraceCheckUtils]: 24: Hoare triple {29288#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {29288#true} is VALID [2018-11-23 12:14:48,168 INFO L273 TraceCheckUtils]: 25: Hoare triple {29288#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {29288#true} is VALID [2018-11-23 12:14:48,168 INFO L273 TraceCheckUtils]: 26: Hoare triple {29288#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {29288#true} is VALID [2018-11-23 12:14:48,168 INFO L273 TraceCheckUtils]: 27: Hoare triple {29288#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {29288#true} is VALID [2018-11-23 12:14:48,168 INFO L273 TraceCheckUtils]: 28: Hoare triple {29288#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {29288#true} is VALID [2018-11-23 12:14:48,169 INFO L273 TraceCheckUtils]: 29: Hoare triple {29288#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {29288#true} is VALID [2018-11-23 12:14:48,169 INFO L273 TraceCheckUtils]: 30: Hoare triple {29288#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {29288#true} is VALID [2018-11-23 12:14:48,169 INFO L273 TraceCheckUtils]: 31: Hoare triple {29288#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {29288#true} is VALID [2018-11-23 12:14:48,169 INFO L273 TraceCheckUtils]: 32: Hoare triple {29288#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {29288#true} is VALID [2018-11-23 12:14:48,169 INFO L273 TraceCheckUtils]: 33: Hoare triple {29288#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {29288#true} is VALID [2018-11-23 12:14:48,169 INFO L273 TraceCheckUtils]: 34: Hoare triple {29288#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {29288#true} is VALID [2018-11-23 12:14:48,169 INFO L273 TraceCheckUtils]: 35: Hoare triple {29288#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {29288#true} is VALID [2018-11-23 12:14:48,169 INFO L273 TraceCheckUtils]: 36: Hoare triple {29288#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {29288#true} is VALID [2018-11-23 12:14:48,169 INFO L273 TraceCheckUtils]: 37: Hoare triple {29288#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {29288#true} is VALID [2018-11-23 12:14:48,170 INFO L273 TraceCheckUtils]: 38: Hoare triple {29288#true} assume !(~i~0 < 40); {29288#true} is VALID [2018-11-23 12:14:48,170 INFO L273 TraceCheckUtils]: 39: Hoare triple {29288#true} assume true; {29288#true} is VALID [2018-11-23 12:14:48,170 INFO L268 TraceCheckUtils]: 40: Hoare quadruple {29288#true} {29288#true} #82#return; {29288#true} is VALID [2018-11-23 12:14:48,170 INFO L273 TraceCheckUtils]: 41: Hoare triple {29288#true} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {29288#true} is VALID [2018-11-23 12:14:48,170 INFO L256 TraceCheckUtils]: 42: Hoare triple {29288#true} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {29288#true} is VALID [2018-11-23 12:14:48,170 INFO L273 TraceCheckUtils]: 43: Hoare triple {29288#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {29288#true} is VALID [2018-11-23 12:14:48,170 INFO L273 TraceCheckUtils]: 44: Hoare triple {29288#true} assume !!(~i~1 < 40); {29288#true} is VALID [2018-11-23 12:14:48,170 INFO L273 TraceCheckUtils]: 45: Hoare triple {29288#true} assume !(~i~1 > 20); {29288#true} is VALID [2018-11-23 12:14:48,170 INFO L273 TraceCheckUtils]: 46: Hoare triple {29288#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {29288#true} is VALID [2018-11-23 12:14:48,170 INFO L273 TraceCheckUtils]: 47: Hoare triple {29288#true} assume !!(~i~1 < 40); {29288#true} is VALID [2018-11-23 12:14:48,171 INFO L273 TraceCheckUtils]: 48: Hoare triple {29288#true} assume !(~i~1 > 20); {29288#true} is VALID [2018-11-23 12:14:48,171 INFO L273 TraceCheckUtils]: 49: Hoare triple {29288#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {29288#true} is VALID [2018-11-23 12:14:48,171 INFO L273 TraceCheckUtils]: 50: Hoare triple {29288#true} assume !!(~i~1 < 40); {29288#true} is VALID [2018-11-23 12:14:48,171 INFO L273 TraceCheckUtils]: 51: Hoare triple {29288#true} assume !(~i~1 > 20); {29288#true} is VALID [2018-11-23 12:14:48,171 INFO L273 TraceCheckUtils]: 52: Hoare triple {29288#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {29288#true} is VALID [2018-11-23 12:14:48,171 INFO L273 TraceCheckUtils]: 53: Hoare triple {29288#true} assume !!(~i~1 < 40); {29288#true} is VALID [2018-11-23 12:14:48,171 INFO L273 TraceCheckUtils]: 54: Hoare triple {29288#true} assume !(~i~1 > 20); {29288#true} is VALID [2018-11-23 12:14:48,171 INFO L273 TraceCheckUtils]: 55: Hoare triple {29288#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {29288#true} is VALID [2018-11-23 12:14:48,171 INFO L273 TraceCheckUtils]: 56: Hoare triple {29288#true} assume !!(~i~1 < 40); {29288#true} is VALID [2018-11-23 12:14:48,172 INFO L273 TraceCheckUtils]: 57: Hoare triple {29288#true} assume !(~i~1 > 20); {29288#true} is VALID [2018-11-23 12:14:48,172 INFO L273 TraceCheckUtils]: 58: Hoare triple {29288#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {29288#true} is VALID [2018-11-23 12:14:48,172 INFO L273 TraceCheckUtils]: 59: Hoare triple {29288#true} assume !!(~i~1 < 40); {29288#true} is VALID [2018-11-23 12:14:48,172 INFO L273 TraceCheckUtils]: 60: Hoare triple {29288#true} assume !(~i~1 > 20); {29288#true} is VALID [2018-11-23 12:14:48,172 INFO L273 TraceCheckUtils]: 61: Hoare triple {29288#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {29288#true} is VALID [2018-11-23 12:14:48,172 INFO L273 TraceCheckUtils]: 62: Hoare triple {29288#true} assume !!(~i~1 < 40); {29288#true} is VALID [2018-11-23 12:14:48,172 INFO L273 TraceCheckUtils]: 63: Hoare triple {29288#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {29288#true} is VALID [2018-11-23 12:14:48,172 INFO L273 TraceCheckUtils]: 64: Hoare triple {29288#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {29288#true} is VALID [2018-11-23 12:14:48,172 INFO L273 TraceCheckUtils]: 65: Hoare triple {29288#true} assume !!(~i~1 < 40); {29288#true} is VALID [2018-11-23 12:14:48,172 INFO L273 TraceCheckUtils]: 66: Hoare triple {29288#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {29288#true} is VALID [2018-11-23 12:14:48,173 INFO L273 TraceCheckUtils]: 67: Hoare triple {29288#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {29288#true} is VALID [2018-11-23 12:14:48,173 INFO L273 TraceCheckUtils]: 68: Hoare triple {29288#true} assume !!(~i~1 < 40); {29288#true} is VALID [2018-11-23 12:14:48,173 INFO L273 TraceCheckUtils]: 69: Hoare triple {29288#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {29288#true} is VALID [2018-11-23 12:14:48,173 INFO L273 TraceCheckUtils]: 70: Hoare triple {29288#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {29288#true} is VALID [2018-11-23 12:14:48,173 INFO L273 TraceCheckUtils]: 71: Hoare triple {29288#true} assume !!(~i~1 < 40); {29288#true} is VALID [2018-11-23 12:14:48,173 INFO L273 TraceCheckUtils]: 72: Hoare triple {29288#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {29288#true} is VALID [2018-11-23 12:14:48,173 INFO L273 TraceCheckUtils]: 73: Hoare triple {29288#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {29288#true} is VALID [2018-11-23 12:14:48,173 INFO L273 TraceCheckUtils]: 74: Hoare triple {29288#true} assume !!(~i~1 < 40); {29288#true} is VALID [2018-11-23 12:14:48,173 INFO L273 TraceCheckUtils]: 75: Hoare triple {29288#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {29288#true} is VALID [2018-11-23 12:14:48,173 INFO L273 TraceCheckUtils]: 76: Hoare triple {29288#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {29288#true} is VALID [2018-11-23 12:14:48,174 INFO L273 TraceCheckUtils]: 77: Hoare triple {29288#true} assume !!(~i~1 < 40); {29288#true} is VALID [2018-11-23 12:14:48,174 INFO L273 TraceCheckUtils]: 78: Hoare triple {29288#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {29288#true} is VALID [2018-11-23 12:14:48,174 INFO L273 TraceCheckUtils]: 79: Hoare triple {29288#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {29288#true} is VALID [2018-11-23 12:14:48,174 INFO L273 TraceCheckUtils]: 80: Hoare triple {29288#true} assume !!(~i~1 < 40); {29288#true} is VALID [2018-11-23 12:14:48,174 INFO L273 TraceCheckUtils]: 81: Hoare triple {29288#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {29288#true} is VALID [2018-11-23 12:14:48,174 INFO L273 TraceCheckUtils]: 82: Hoare triple {29288#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {29288#true} is VALID [2018-11-23 12:14:48,174 INFO L273 TraceCheckUtils]: 83: Hoare triple {29288#true} assume !!(~i~1 < 40); {29288#true} is VALID [2018-11-23 12:14:48,174 INFO L273 TraceCheckUtils]: 84: Hoare triple {29288#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {29288#true} is VALID [2018-11-23 12:14:48,174 INFO L273 TraceCheckUtils]: 85: Hoare triple {29288#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {29288#true} is VALID [2018-11-23 12:14:48,175 INFO L273 TraceCheckUtils]: 86: Hoare triple {29288#true} assume !(~i~1 < 40); {29288#true} is VALID [2018-11-23 12:14:48,175 INFO L273 TraceCheckUtils]: 87: Hoare triple {29288#true} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {29288#true} is VALID [2018-11-23 12:14:48,175 INFO L273 TraceCheckUtils]: 88: Hoare triple {29288#true} assume true; {29288#true} is VALID [2018-11-23 12:14:48,175 INFO L268 TraceCheckUtils]: 89: Hoare quadruple {29288#true} {29288#true} #84#return; {29288#true} is VALID [2018-11-23 12:14:48,175 INFO L273 TraceCheckUtils]: 90: Hoare triple {29288#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {29288#true} is VALID [2018-11-23 12:14:48,175 INFO L256 TraceCheckUtils]: 91: Hoare triple {29288#true} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {29288#true} is VALID [2018-11-23 12:14:48,175 INFO L273 TraceCheckUtils]: 92: Hoare triple {29288#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {29288#true} is VALID [2018-11-23 12:14:48,175 INFO L273 TraceCheckUtils]: 93: Hoare triple {29288#true} assume !!(~i~1 < 40); {29288#true} is VALID [2018-11-23 12:14:48,175 INFO L273 TraceCheckUtils]: 94: Hoare triple {29288#true} assume !(~i~1 > 20); {29288#true} is VALID [2018-11-23 12:14:48,175 INFO L273 TraceCheckUtils]: 95: Hoare triple {29288#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {29288#true} is VALID [2018-11-23 12:14:48,176 INFO L273 TraceCheckUtils]: 96: Hoare triple {29288#true} assume !!(~i~1 < 40); {29288#true} is VALID [2018-11-23 12:14:48,176 INFO L273 TraceCheckUtils]: 97: Hoare triple {29288#true} assume !(~i~1 > 20); {29288#true} is VALID [2018-11-23 12:14:48,176 INFO L273 TraceCheckUtils]: 98: Hoare triple {29288#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {29288#true} is VALID [2018-11-23 12:14:48,176 INFO L273 TraceCheckUtils]: 99: Hoare triple {29288#true} assume !!(~i~1 < 40); {29288#true} is VALID [2018-11-23 12:14:48,176 INFO L273 TraceCheckUtils]: 100: Hoare triple {29288#true} assume !(~i~1 > 20); {29288#true} is VALID [2018-11-23 12:14:48,176 INFO L273 TraceCheckUtils]: 101: Hoare triple {29288#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {29288#true} is VALID [2018-11-23 12:14:48,176 INFO L273 TraceCheckUtils]: 102: Hoare triple {29288#true} assume !!(~i~1 < 40); {29288#true} is VALID [2018-11-23 12:14:48,176 INFO L273 TraceCheckUtils]: 103: Hoare triple {29288#true} assume !(~i~1 > 20); {29288#true} is VALID [2018-11-23 12:14:48,176 INFO L273 TraceCheckUtils]: 104: Hoare triple {29288#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {29288#true} is VALID [2018-11-23 12:14:48,177 INFO L273 TraceCheckUtils]: 105: Hoare triple {29288#true} assume !!(~i~1 < 40); {29288#true} is VALID [2018-11-23 12:14:48,177 INFO L273 TraceCheckUtils]: 106: Hoare triple {29288#true} assume !(~i~1 > 20); {29288#true} is VALID [2018-11-23 12:14:48,177 INFO L273 TraceCheckUtils]: 107: Hoare triple {29288#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {29288#true} is VALID [2018-11-23 12:14:48,177 INFO L273 TraceCheckUtils]: 108: Hoare triple {29288#true} assume !!(~i~1 < 40); {29288#true} is VALID [2018-11-23 12:14:48,177 INFO L273 TraceCheckUtils]: 109: Hoare triple {29288#true} assume !(~i~1 > 20); {29288#true} is VALID [2018-11-23 12:14:48,177 INFO L273 TraceCheckUtils]: 110: Hoare triple {29288#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {29288#true} is VALID [2018-11-23 12:14:48,177 INFO L273 TraceCheckUtils]: 111: Hoare triple {29288#true} assume !!(~i~1 < 40); {29288#true} is VALID [2018-11-23 12:14:48,177 INFO L273 TraceCheckUtils]: 112: Hoare triple {29288#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {29288#true} is VALID [2018-11-23 12:14:48,177 INFO L273 TraceCheckUtils]: 113: Hoare triple {29288#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {29288#true} is VALID [2018-11-23 12:14:48,177 INFO L273 TraceCheckUtils]: 114: Hoare triple {29288#true} assume !!(~i~1 < 40); {29288#true} is VALID [2018-11-23 12:14:48,178 INFO L273 TraceCheckUtils]: 115: Hoare triple {29288#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {29288#true} is VALID [2018-11-23 12:14:48,178 INFO L273 TraceCheckUtils]: 116: Hoare triple {29288#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {29288#true} is VALID [2018-11-23 12:14:48,178 INFO L273 TraceCheckUtils]: 117: Hoare triple {29288#true} assume !!(~i~1 < 40); {29288#true} is VALID [2018-11-23 12:14:48,178 INFO L273 TraceCheckUtils]: 118: Hoare triple {29288#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {29288#true} is VALID [2018-11-23 12:14:48,178 INFO L273 TraceCheckUtils]: 119: Hoare triple {29288#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {29288#true} is VALID [2018-11-23 12:14:48,178 INFO L273 TraceCheckUtils]: 120: Hoare triple {29288#true} assume !!(~i~1 < 40); {29288#true} is VALID [2018-11-23 12:14:48,178 INFO L273 TraceCheckUtils]: 121: Hoare triple {29288#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {29288#true} is VALID [2018-11-23 12:14:48,178 INFO L273 TraceCheckUtils]: 122: Hoare triple {29288#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {29288#true} is VALID [2018-11-23 12:14:48,178 INFO L273 TraceCheckUtils]: 123: Hoare triple {29288#true} assume !!(~i~1 < 40); {29288#true} is VALID [2018-11-23 12:14:48,179 INFO L273 TraceCheckUtils]: 124: Hoare triple {29288#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {29288#true} is VALID [2018-11-23 12:14:48,179 INFO L273 TraceCheckUtils]: 125: Hoare triple {29288#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {29288#true} is VALID [2018-11-23 12:14:48,179 INFO L273 TraceCheckUtils]: 126: Hoare triple {29288#true} assume !!(~i~1 < 40); {29288#true} is VALID [2018-11-23 12:14:48,179 INFO L273 TraceCheckUtils]: 127: Hoare triple {29288#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {29288#true} is VALID [2018-11-23 12:14:48,179 INFO L273 TraceCheckUtils]: 128: Hoare triple {29288#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {29288#true} is VALID [2018-11-23 12:14:48,179 INFO L273 TraceCheckUtils]: 129: Hoare triple {29288#true} assume !!(~i~1 < 40); {29288#true} is VALID [2018-11-23 12:14:48,179 INFO L273 TraceCheckUtils]: 130: Hoare triple {29288#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {29288#true} is VALID [2018-11-23 12:14:48,179 INFO L273 TraceCheckUtils]: 131: Hoare triple {29288#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {29288#true} is VALID [2018-11-23 12:14:48,179 INFO L273 TraceCheckUtils]: 132: Hoare triple {29288#true} assume !!(~i~1 < 40); {29288#true} is VALID [2018-11-23 12:14:48,179 INFO L273 TraceCheckUtils]: 133: Hoare triple {29288#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {29288#true} is VALID [2018-11-23 12:14:48,180 INFO L273 TraceCheckUtils]: 134: Hoare triple {29288#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {29288#true} is VALID [2018-11-23 12:14:48,180 INFO L273 TraceCheckUtils]: 135: Hoare triple {29288#true} assume !(~i~1 < 40); {29288#true} is VALID [2018-11-23 12:14:48,180 INFO L273 TraceCheckUtils]: 136: Hoare triple {29288#true} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {29288#true} is VALID [2018-11-23 12:14:48,180 INFO L273 TraceCheckUtils]: 137: Hoare triple {29288#true} assume true; {29288#true} is VALID [2018-11-23 12:14:48,180 INFO L268 TraceCheckUtils]: 138: Hoare quadruple {29288#true} {29288#true} #86#return; {29288#true} is VALID [2018-11-23 12:14:48,181 INFO L273 TraceCheckUtils]: 139: Hoare triple {29288#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {29710#(<= main_~i~2 0)} is VALID [2018-11-23 12:14:48,181 INFO L273 TraceCheckUtils]: 140: Hoare triple {29710#(<= main_~i~2 0)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {29710#(<= main_~i~2 0)} is VALID [2018-11-23 12:14:48,183 INFO L273 TraceCheckUtils]: 141: Hoare triple {29710#(<= main_~i~2 0)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {29717#(<= main_~i~2 1)} is VALID [2018-11-23 12:14:48,183 INFO L273 TraceCheckUtils]: 142: Hoare triple {29717#(<= main_~i~2 1)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {29717#(<= main_~i~2 1)} is VALID [2018-11-23 12:14:48,185 INFO L273 TraceCheckUtils]: 143: Hoare triple {29717#(<= main_~i~2 1)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {29724#(<= main_~i~2 2)} is VALID [2018-11-23 12:14:48,185 INFO L273 TraceCheckUtils]: 144: Hoare triple {29724#(<= main_~i~2 2)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {29724#(<= main_~i~2 2)} is VALID [2018-11-23 12:14:48,187 INFO L273 TraceCheckUtils]: 145: Hoare triple {29724#(<= main_~i~2 2)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {29731#(<= main_~i~2 3)} is VALID [2018-11-23 12:14:48,187 INFO L273 TraceCheckUtils]: 146: Hoare triple {29731#(<= main_~i~2 3)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {29731#(<= main_~i~2 3)} is VALID [2018-11-23 12:14:48,189 INFO L273 TraceCheckUtils]: 147: Hoare triple {29731#(<= main_~i~2 3)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {29738#(<= main_~i~2 4)} is VALID [2018-11-23 12:14:48,189 INFO L273 TraceCheckUtils]: 148: Hoare triple {29738#(<= main_~i~2 4)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {29738#(<= main_~i~2 4)} is VALID [2018-11-23 12:14:48,189 INFO L273 TraceCheckUtils]: 149: Hoare triple {29738#(<= main_~i~2 4)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {29745#(<= main_~i~2 5)} is VALID [2018-11-23 12:14:48,190 INFO L273 TraceCheckUtils]: 150: Hoare triple {29745#(<= main_~i~2 5)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {29745#(<= main_~i~2 5)} is VALID [2018-11-23 12:14:48,190 INFO L273 TraceCheckUtils]: 151: Hoare triple {29745#(<= main_~i~2 5)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {29752#(<= main_~i~2 6)} is VALID [2018-11-23 12:14:48,190 INFO L273 TraceCheckUtils]: 152: Hoare triple {29752#(<= main_~i~2 6)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {29752#(<= main_~i~2 6)} is VALID [2018-11-23 12:14:48,191 INFO L273 TraceCheckUtils]: 153: Hoare triple {29752#(<= main_~i~2 6)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {29759#(<= main_~i~2 7)} is VALID [2018-11-23 12:14:48,191 INFO L273 TraceCheckUtils]: 154: Hoare triple {29759#(<= main_~i~2 7)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {29759#(<= main_~i~2 7)} is VALID [2018-11-23 12:14:48,192 INFO L273 TraceCheckUtils]: 155: Hoare triple {29759#(<= main_~i~2 7)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {29766#(<= main_~i~2 8)} is VALID [2018-11-23 12:14:48,192 INFO L273 TraceCheckUtils]: 156: Hoare triple {29766#(<= main_~i~2 8)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {29766#(<= main_~i~2 8)} is VALID [2018-11-23 12:14:48,193 INFO L273 TraceCheckUtils]: 157: Hoare triple {29766#(<= main_~i~2 8)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {29773#(<= main_~i~2 9)} is VALID [2018-11-23 12:14:48,193 INFO L273 TraceCheckUtils]: 158: Hoare triple {29773#(<= main_~i~2 9)} assume !(~i~2 < 39); {29289#false} is VALID [2018-11-23 12:14:48,193 INFO L273 TraceCheckUtils]: 159: Hoare triple {29289#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {29289#false} is VALID [2018-11-23 12:14:48,194 INFO L256 TraceCheckUtils]: 160: Hoare triple {29289#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {29289#false} is VALID [2018-11-23 12:14:48,194 INFO L273 TraceCheckUtils]: 161: Hoare triple {29289#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {29289#false} is VALID [2018-11-23 12:14:48,194 INFO L273 TraceCheckUtils]: 162: Hoare triple {29289#false} assume !!(~i~1 < 40); {29289#false} is VALID [2018-11-23 12:14:48,194 INFO L273 TraceCheckUtils]: 163: Hoare triple {29289#false} assume !(~i~1 > 20); {29289#false} is VALID [2018-11-23 12:14:48,194 INFO L273 TraceCheckUtils]: 164: Hoare triple {29289#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {29289#false} is VALID [2018-11-23 12:14:48,194 INFO L273 TraceCheckUtils]: 165: Hoare triple {29289#false} assume !!(~i~1 < 40); {29289#false} is VALID [2018-11-23 12:14:48,195 INFO L273 TraceCheckUtils]: 166: Hoare triple {29289#false} assume !(~i~1 > 20); {29289#false} is VALID [2018-11-23 12:14:48,195 INFO L273 TraceCheckUtils]: 167: Hoare triple {29289#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {29289#false} is VALID [2018-11-23 12:14:48,195 INFO L273 TraceCheckUtils]: 168: Hoare triple {29289#false} assume !!(~i~1 < 40); {29289#false} is VALID [2018-11-23 12:14:48,195 INFO L273 TraceCheckUtils]: 169: Hoare triple {29289#false} assume !(~i~1 > 20); {29289#false} is VALID [2018-11-23 12:14:48,195 INFO L273 TraceCheckUtils]: 170: Hoare triple {29289#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {29289#false} is VALID [2018-11-23 12:14:48,195 INFO L273 TraceCheckUtils]: 171: Hoare triple {29289#false} assume !!(~i~1 < 40); {29289#false} is VALID [2018-11-23 12:14:48,196 INFO L273 TraceCheckUtils]: 172: Hoare triple {29289#false} assume !(~i~1 > 20); {29289#false} is VALID [2018-11-23 12:14:48,196 INFO L273 TraceCheckUtils]: 173: Hoare triple {29289#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {29289#false} is VALID [2018-11-23 12:14:48,196 INFO L273 TraceCheckUtils]: 174: Hoare triple {29289#false} assume !!(~i~1 < 40); {29289#false} is VALID [2018-11-23 12:14:48,196 INFO L273 TraceCheckUtils]: 175: Hoare triple {29289#false} assume !(~i~1 > 20); {29289#false} is VALID [2018-11-23 12:14:48,196 INFO L273 TraceCheckUtils]: 176: Hoare triple {29289#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {29289#false} is VALID [2018-11-23 12:14:48,196 INFO L273 TraceCheckUtils]: 177: Hoare triple {29289#false} assume !!(~i~1 < 40); {29289#false} is VALID [2018-11-23 12:14:48,196 INFO L273 TraceCheckUtils]: 178: Hoare triple {29289#false} assume !(~i~1 > 20); {29289#false} is VALID [2018-11-23 12:14:48,197 INFO L273 TraceCheckUtils]: 179: Hoare triple {29289#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {29289#false} is VALID [2018-11-23 12:14:48,197 INFO L273 TraceCheckUtils]: 180: Hoare triple {29289#false} assume !!(~i~1 < 40); {29289#false} is VALID [2018-11-23 12:14:48,197 INFO L273 TraceCheckUtils]: 181: Hoare triple {29289#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {29289#false} is VALID [2018-11-23 12:14:48,197 INFO L273 TraceCheckUtils]: 182: Hoare triple {29289#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {29289#false} is VALID [2018-11-23 12:14:48,197 INFO L273 TraceCheckUtils]: 183: Hoare triple {29289#false} assume !!(~i~1 < 40); {29289#false} is VALID [2018-11-23 12:14:48,197 INFO L273 TraceCheckUtils]: 184: Hoare triple {29289#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {29289#false} is VALID [2018-11-23 12:14:48,197 INFO L273 TraceCheckUtils]: 185: Hoare triple {29289#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {29289#false} is VALID [2018-11-23 12:14:48,197 INFO L273 TraceCheckUtils]: 186: Hoare triple {29289#false} assume !!(~i~1 < 40); {29289#false} is VALID [2018-11-23 12:14:48,197 INFO L273 TraceCheckUtils]: 187: Hoare triple {29289#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {29289#false} is VALID [2018-11-23 12:14:48,197 INFO L273 TraceCheckUtils]: 188: Hoare triple {29289#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {29289#false} is VALID [2018-11-23 12:14:48,198 INFO L273 TraceCheckUtils]: 189: Hoare triple {29289#false} assume !!(~i~1 < 40); {29289#false} is VALID [2018-11-23 12:14:48,198 INFO L273 TraceCheckUtils]: 190: Hoare triple {29289#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {29289#false} is VALID [2018-11-23 12:14:48,198 INFO L273 TraceCheckUtils]: 191: Hoare triple {29289#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {29289#false} is VALID [2018-11-23 12:14:48,198 INFO L273 TraceCheckUtils]: 192: Hoare triple {29289#false} assume !!(~i~1 < 40); {29289#false} is VALID [2018-11-23 12:14:48,198 INFO L273 TraceCheckUtils]: 193: Hoare triple {29289#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {29289#false} is VALID [2018-11-23 12:14:48,198 INFO L273 TraceCheckUtils]: 194: Hoare triple {29289#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {29289#false} is VALID [2018-11-23 12:14:48,198 INFO L273 TraceCheckUtils]: 195: Hoare triple {29289#false} assume !!(~i~1 < 40); {29289#false} is VALID [2018-11-23 12:14:48,198 INFO L273 TraceCheckUtils]: 196: Hoare triple {29289#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {29289#false} is VALID [2018-11-23 12:14:48,198 INFO L273 TraceCheckUtils]: 197: Hoare triple {29289#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {29289#false} is VALID [2018-11-23 12:14:48,198 INFO L273 TraceCheckUtils]: 198: Hoare triple {29289#false} assume !!(~i~1 < 40); {29289#false} is VALID [2018-11-23 12:14:48,199 INFO L273 TraceCheckUtils]: 199: Hoare triple {29289#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {29289#false} is VALID [2018-11-23 12:14:48,199 INFO L273 TraceCheckUtils]: 200: Hoare triple {29289#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {29289#false} is VALID [2018-11-23 12:14:48,199 INFO L273 TraceCheckUtils]: 201: Hoare triple {29289#false} assume !!(~i~1 < 40); {29289#false} is VALID [2018-11-23 12:14:48,199 INFO L273 TraceCheckUtils]: 202: Hoare triple {29289#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {29289#false} is VALID [2018-11-23 12:14:48,199 INFO L273 TraceCheckUtils]: 203: Hoare triple {29289#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {29289#false} is VALID [2018-11-23 12:14:48,199 INFO L273 TraceCheckUtils]: 204: Hoare triple {29289#false} assume !(~i~1 < 40); {29289#false} is VALID [2018-11-23 12:14:48,199 INFO L273 TraceCheckUtils]: 205: Hoare triple {29289#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {29289#false} is VALID [2018-11-23 12:14:48,199 INFO L273 TraceCheckUtils]: 206: Hoare triple {29289#false} assume true; {29289#false} is VALID [2018-11-23 12:14:48,199 INFO L268 TraceCheckUtils]: 207: Hoare quadruple {29289#false} {29289#false} #88#return; {29289#false} is VALID [2018-11-23 12:14:48,200 INFO L273 TraceCheckUtils]: 208: Hoare triple {29289#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {29289#false} is VALID [2018-11-23 12:14:48,200 INFO L273 TraceCheckUtils]: 209: Hoare triple {29289#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {29289#false} is VALID [2018-11-23 12:14:48,200 INFO L273 TraceCheckUtils]: 210: Hoare triple {29289#false} assume !false; {29289#false} is VALID [2018-11-23 12:14:48,216 INFO L134 CoverageAnalysis]: Checked inductivity of 3030 backedges. 1242 proven. 81 refuted. 0 times theorem prover too weak. 1707 trivial. 0 not checked. [2018-11-23 12:14:48,236 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:14:48,237 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [12] total 12 [2018-11-23 12:14:48,237 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 211 [2018-11-23 12:14:48,237 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:14:48,237 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states. [2018-11-23 12:14:48,295 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-23 12:14:48,295 INFO L459 AbstractCegarLoop]: Interpolant automaton has 12 states [2018-11-23 12:14:48,296 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2018-11-23 12:14:48,296 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=66, Invalid=66, Unknown=0, NotChecked=0, Total=132 [2018-11-23 12:14:48,296 INFO L87 Difference]: Start difference. First operand 118 states and 131 transitions. Second operand 12 states. [2018-11-23 12:14:48,522 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:48,522 INFO L93 Difference]: Finished difference Result 174 states and 197 transitions. [2018-11-23 12:14:48,522 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2018-11-23 12:14:48,522 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 211 [2018-11-23 12:14:48,523 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:14:48,523 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2018-11-23 12:14:48,524 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 74 transitions. [2018-11-23 12:14:48,524 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2018-11-23 12:14:48,525 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 74 transitions. [2018-11-23 12:14:48,525 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states and 74 transitions. [2018-11-23 12:14:48,615 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 74 edges. 74 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:14:48,618 INFO L225 Difference]: With dead ends: 174 [2018-11-23 12:14:48,618 INFO L226 Difference]: Without dead ends: 121 [2018-11-23 12:14:48,619 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 210 GetRequests, 200 SyntacticMatches, 0 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=66, Invalid=66, Unknown=0, NotChecked=0, Total=132 [2018-11-23 12:14:48,619 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 121 states. [2018-11-23 12:14:48,977 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 121 to 120. [2018-11-23 12:14:48,977 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:14:48,977 INFO L82 GeneralOperation]: Start isEquivalent. First operand 121 states. Second operand 120 states. [2018-11-23 12:14:48,977 INFO L74 IsIncluded]: Start isIncluded. First operand 121 states. Second operand 120 states. [2018-11-23 12:14:48,978 INFO L87 Difference]: Start difference. First operand 121 states. Second operand 120 states. [2018-11-23 12:14:48,980 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:48,980 INFO L93 Difference]: Finished difference Result 121 states and 134 transitions. [2018-11-23 12:14:48,980 INFO L276 IsEmpty]: Start isEmpty. Operand 121 states and 134 transitions. [2018-11-23 12:14:48,980 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:14:48,980 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:14:48,980 INFO L74 IsIncluded]: Start isIncluded. First operand 120 states. Second operand 121 states. [2018-11-23 12:14:48,980 INFO L87 Difference]: Start difference. First operand 120 states. Second operand 121 states. [2018-11-23 12:14:48,982 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:48,982 INFO L93 Difference]: Finished difference Result 121 states and 134 transitions. [2018-11-23 12:14:48,983 INFO L276 IsEmpty]: Start isEmpty. Operand 121 states and 134 transitions. [2018-11-23 12:14:48,983 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:14:48,983 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:14:48,983 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:14:48,983 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:14:48,983 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 120 states. [2018-11-23 12:14:48,985 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 120 states to 120 states and 133 transitions. [2018-11-23 12:14:48,986 INFO L78 Accepts]: Start accepts. Automaton has 120 states and 133 transitions. Word has length 211 [2018-11-23 12:14:48,986 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:14:48,986 INFO L480 AbstractCegarLoop]: Abstraction has 120 states and 133 transitions. [2018-11-23 12:14:48,986 INFO L481 AbstractCegarLoop]: Interpolant automaton has 12 states. [2018-11-23 12:14:48,986 INFO L276 IsEmpty]: Start isEmpty. Operand 120 states and 133 transitions. [2018-11-23 12:14:48,987 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 214 [2018-11-23 12:14:48,987 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:14:48,987 INFO L402 BasicCegarLoop]: trace histogram [42, 42, 24, 18, 15, 15, 10, 10, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:14:48,988 INFO L423 AbstractCegarLoop]: === Iteration 39 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:14:48,988 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:14:48,988 INFO L82 PathProgramCache]: Analyzing trace with hash -1618407258, now seen corresponding path program 34 times [2018-11-23 12:14:48,988 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:14:48,988 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:14:48,989 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:14:48,989 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:14:48,989 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:14:49,001 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:14:49,001 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:14:49,001 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 40 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 40 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:14:49,018 INFO L103 rtionOrderModulation]: Keeping assertion order TERMS_WITH_SMALL_CONSTANTS_FIRST [2018-11-23 12:14:49,101 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2018-11-23 12:14:49,102 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:14:49,136 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:14:49,138 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:14:49,531 INFO L256 TraceCheckUtils]: 0: Hoare triple {30589#true} call ULTIMATE.init(); {30589#true} is VALID [2018-11-23 12:14:49,531 INFO L273 TraceCheckUtils]: 1: Hoare triple {30589#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {30589#true} is VALID [2018-11-23 12:14:49,531 INFO L273 TraceCheckUtils]: 2: Hoare triple {30589#true} assume true; {30589#true} is VALID [2018-11-23 12:14:49,532 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {30589#true} {30589#true} #78#return; {30589#true} is VALID [2018-11-23 12:14:49,532 INFO L256 TraceCheckUtils]: 4: Hoare triple {30589#true} call #t~ret12 := main(); {30589#true} is VALID [2018-11-23 12:14:49,532 INFO L273 TraceCheckUtils]: 5: Hoare triple {30589#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {30589#true} is VALID [2018-11-23 12:14:49,532 INFO L256 TraceCheckUtils]: 6: Hoare triple {30589#true} call init_nondet(~#x~0.base, ~#x~0.offset); {30589#true} is VALID [2018-11-23 12:14:49,533 INFO L273 TraceCheckUtils]: 7: Hoare triple {30589#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {30589#true} is VALID [2018-11-23 12:14:49,533 INFO L273 TraceCheckUtils]: 8: Hoare triple {30589#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {30589#true} is VALID [2018-11-23 12:14:49,533 INFO L273 TraceCheckUtils]: 9: Hoare triple {30589#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30589#true} is VALID [2018-11-23 12:14:49,533 INFO L273 TraceCheckUtils]: 10: Hoare triple {30589#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {30589#true} is VALID [2018-11-23 12:14:49,533 INFO L273 TraceCheckUtils]: 11: Hoare triple {30589#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30589#true} is VALID [2018-11-23 12:14:49,533 INFO L273 TraceCheckUtils]: 12: Hoare triple {30589#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {30589#true} is VALID [2018-11-23 12:14:49,533 INFO L273 TraceCheckUtils]: 13: Hoare triple {30589#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30589#true} is VALID [2018-11-23 12:14:49,534 INFO L273 TraceCheckUtils]: 14: Hoare triple {30589#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {30589#true} is VALID [2018-11-23 12:14:49,534 INFO L273 TraceCheckUtils]: 15: Hoare triple {30589#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30589#true} is VALID [2018-11-23 12:14:49,534 INFO L273 TraceCheckUtils]: 16: Hoare triple {30589#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {30589#true} is VALID [2018-11-23 12:14:49,534 INFO L273 TraceCheckUtils]: 17: Hoare triple {30589#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30589#true} is VALID [2018-11-23 12:14:49,534 INFO L273 TraceCheckUtils]: 18: Hoare triple {30589#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {30589#true} is VALID [2018-11-23 12:14:49,534 INFO L273 TraceCheckUtils]: 19: Hoare triple {30589#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30589#true} is VALID [2018-11-23 12:14:49,534 INFO L273 TraceCheckUtils]: 20: Hoare triple {30589#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {30589#true} is VALID [2018-11-23 12:14:49,535 INFO L273 TraceCheckUtils]: 21: Hoare triple {30589#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30589#true} is VALID [2018-11-23 12:14:49,535 INFO L273 TraceCheckUtils]: 22: Hoare triple {30589#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {30589#true} is VALID [2018-11-23 12:14:49,535 INFO L273 TraceCheckUtils]: 23: Hoare triple {30589#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30589#true} is VALID [2018-11-23 12:14:49,535 INFO L273 TraceCheckUtils]: 24: Hoare triple {30589#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {30589#true} is VALID [2018-11-23 12:14:49,535 INFO L273 TraceCheckUtils]: 25: Hoare triple {30589#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30589#true} is VALID [2018-11-23 12:14:49,535 INFO L273 TraceCheckUtils]: 26: Hoare triple {30589#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {30589#true} is VALID [2018-11-23 12:14:49,535 INFO L273 TraceCheckUtils]: 27: Hoare triple {30589#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30589#true} is VALID [2018-11-23 12:14:49,536 INFO L273 TraceCheckUtils]: 28: Hoare triple {30589#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {30589#true} is VALID [2018-11-23 12:14:49,536 INFO L273 TraceCheckUtils]: 29: Hoare triple {30589#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30589#true} is VALID [2018-11-23 12:14:49,536 INFO L273 TraceCheckUtils]: 30: Hoare triple {30589#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {30589#true} is VALID [2018-11-23 12:14:49,536 INFO L273 TraceCheckUtils]: 31: Hoare triple {30589#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30589#true} is VALID [2018-11-23 12:14:49,536 INFO L273 TraceCheckUtils]: 32: Hoare triple {30589#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {30589#true} is VALID [2018-11-23 12:14:49,536 INFO L273 TraceCheckUtils]: 33: Hoare triple {30589#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30589#true} is VALID [2018-11-23 12:14:49,536 INFO L273 TraceCheckUtils]: 34: Hoare triple {30589#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {30589#true} is VALID [2018-11-23 12:14:49,537 INFO L273 TraceCheckUtils]: 35: Hoare triple {30589#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30589#true} is VALID [2018-11-23 12:14:49,537 INFO L273 TraceCheckUtils]: 36: Hoare triple {30589#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {30589#true} is VALID [2018-11-23 12:14:49,537 INFO L273 TraceCheckUtils]: 37: Hoare triple {30589#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30589#true} is VALID [2018-11-23 12:14:49,537 INFO L273 TraceCheckUtils]: 38: Hoare triple {30589#true} assume !(~i~0 < 40); {30589#true} is VALID [2018-11-23 12:14:49,537 INFO L273 TraceCheckUtils]: 39: Hoare triple {30589#true} assume true; {30589#true} is VALID [2018-11-23 12:14:49,537 INFO L268 TraceCheckUtils]: 40: Hoare quadruple {30589#true} {30589#true} #82#return; {30589#true} is VALID [2018-11-23 12:14:49,537 INFO L273 TraceCheckUtils]: 41: Hoare triple {30589#true} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {30589#true} is VALID [2018-11-23 12:14:49,537 INFO L256 TraceCheckUtils]: 42: Hoare triple {30589#true} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {30589#true} is VALID [2018-11-23 12:14:49,538 INFO L273 TraceCheckUtils]: 43: Hoare triple {30589#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {30589#true} is VALID [2018-11-23 12:14:49,538 INFO L273 TraceCheckUtils]: 44: Hoare triple {30589#true} assume !!(~i~1 < 40); {30589#true} is VALID [2018-11-23 12:14:49,538 INFO L273 TraceCheckUtils]: 45: Hoare triple {30589#true} assume !(~i~1 > 20); {30589#true} is VALID [2018-11-23 12:14:49,538 INFO L273 TraceCheckUtils]: 46: Hoare triple {30589#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {30589#true} is VALID [2018-11-23 12:14:49,538 INFO L273 TraceCheckUtils]: 47: Hoare triple {30589#true} assume !!(~i~1 < 40); {30589#true} is VALID [2018-11-23 12:14:49,538 INFO L273 TraceCheckUtils]: 48: Hoare triple {30589#true} assume !(~i~1 > 20); {30589#true} is VALID [2018-11-23 12:14:49,538 INFO L273 TraceCheckUtils]: 49: Hoare triple {30589#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {30589#true} is VALID [2018-11-23 12:14:49,539 INFO L273 TraceCheckUtils]: 50: Hoare triple {30589#true} assume !!(~i~1 < 40); {30589#true} is VALID [2018-11-23 12:14:49,539 INFO L273 TraceCheckUtils]: 51: Hoare triple {30589#true} assume !(~i~1 > 20); {30589#true} is VALID [2018-11-23 12:14:49,539 INFO L273 TraceCheckUtils]: 52: Hoare triple {30589#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {30589#true} is VALID [2018-11-23 12:14:49,539 INFO L273 TraceCheckUtils]: 53: Hoare triple {30589#true} assume !!(~i~1 < 40); {30589#true} is VALID [2018-11-23 12:14:49,539 INFO L273 TraceCheckUtils]: 54: Hoare triple {30589#true} assume !(~i~1 > 20); {30589#true} is VALID [2018-11-23 12:14:49,539 INFO L273 TraceCheckUtils]: 55: Hoare triple {30589#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {30589#true} is VALID [2018-11-23 12:14:49,539 INFO L273 TraceCheckUtils]: 56: Hoare triple {30589#true} assume !!(~i~1 < 40); {30589#true} is VALID [2018-11-23 12:14:49,540 INFO L273 TraceCheckUtils]: 57: Hoare triple {30589#true} assume !(~i~1 > 20); {30589#true} is VALID [2018-11-23 12:14:49,540 INFO L273 TraceCheckUtils]: 58: Hoare triple {30589#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {30589#true} is VALID [2018-11-23 12:14:49,540 INFO L273 TraceCheckUtils]: 59: Hoare triple {30589#true} assume !!(~i~1 < 40); {30589#true} is VALID [2018-11-23 12:14:49,540 INFO L273 TraceCheckUtils]: 60: Hoare triple {30589#true} assume !(~i~1 > 20); {30589#true} is VALID [2018-11-23 12:14:49,540 INFO L273 TraceCheckUtils]: 61: Hoare triple {30589#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {30589#true} is VALID [2018-11-23 12:14:49,541 INFO L273 TraceCheckUtils]: 62: Hoare triple {30589#true} assume !!(~i~1 < 40); {30589#true} is VALID [2018-11-23 12:14:49,541 INFO L273 TraceCheckUtils]: 63: Hoare triple {30589#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {30589#true} is VALID [2018-11-23 12:14:49,541 INFO L273 TraceCheckUtils]: 64: Hoare triple {30589#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {30589#true} is VALID [2018-11-23 12:14:49,541 INFO L273 TraceCheckUtils]: 65: Hoare triple {30589#true} assume !!(~i~1 < 40); {30589#true} is VALID [2018-11-23 12:14:49,541 INFO L273 TraceCheckUtils]: 66: Hoare triple {30589#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {30589#true} is VALID [2018-11-23 12:14:49,542 INFO L273 TraceCheckUtils]: 67: Hoare triple {30589#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {30589#true} is VALID [2018-11-23 12:14:49,542 INFO L273 TraceCheckUtils]: 68: Hoare triple {30589#true} assume !!(~i~1 < 40); {30589#true} is VALID [2018-11-23 12:14:49,542 INFO L273 TraceCheckUtils]: 69: Hoare triple {30589#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {30589#true} is VALID [2018-11-23 12:14:49,542 INFO L273 TraceCheckUtils]: 70: Hoare triple {30589#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {30589#true} is VALID [2018-11-23 12:14:49,542 INFO L273 TraceCheckUtils]: 71: Hoare triple {30589#true} assume !!(~i~1 < 40); {30589#true} is VALID [2018-11-23 12:14:49,543 INFO L273 TraceCheckUtils]: 72: Hoare triple {30589#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {30589#true} is VALID [2018-11-23 12:14:49,543 INFO L273 TraceCheckUtils]: 73: Hoare triple {30589#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {30589#true} is VALID [2018-11-23 12:14:49,543 INFO L273 TraceCheckUtils]: 74: Hoare triple {30589#true} assume !!(~i~1 < 40); {30589#true} is VALID [2018-11-23 12:14:49,543 INFO L273 TraceCheckUtils]: 75: Hoare triple {30589#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {30589#true} is VALID [2018-11-23 12:14:49,543 INFO L273 TraceCheckUtils]: 76: Hoare triple {30589#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {30589#true} is VALID [2018-11-23 12:14:49,544 INFO L273 TraceCheckUtils]: 77: Hoare triple {30589#true} assume !!(~i~1 < 40); {30589#true} is VALID [2018-11-23 12:14:49,544 INFO L273 TraceCheckUtils]: 78: Hoare triple {30589#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {30589#true} is VALID [2018-11-23 12:14:49,544 INFO L273 TraceCheckUtils]: 79: Hoare triple {30589#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {30589#true} is VALID [2018-11-23 12:14:49,544 INFO L273 TraceCheckUtils]: 80: Hoare triple {30589#true} assume !!(~i~1 < 40); {30589#true} is VALID [2018-11-23 12:14:49,544 INFO L273 TraceCheckUtils]: 81: Hoare triple {30589#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {30589#true} is VALID [2018-11-23 12:14:49,544 INFO L273 TraceCheckUtils]: 82: Hoare triple {30589#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {30589#true} is VALID [2018-11-23 12:14:49,545 INFO L273 TraceCheckUtils]: 83: Hoare triple {30589#true} assume !!(~i~1 < 40); {30589#true} is VALID [2018-11-23 12:14:49,545 INFO L273 TraceCheckUtils]: 84: Hoare triple {30589#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {30589#true} is VALID [2018-11-23 12:14:49,545 INFO L273 TraceCheckUtils]: 85: Hoare triple {30589#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {30589#true} is VALID [2018-11-23 12:14:49,545 INFO L273 TraceCheckUtils]: 86: Hoare triple {30589#true} assume !(~i~1 < 40); {30589#true} is VALID [2018-11-23 12:14:49,545 INFO L273 TraceCheckUtils]: 87: Hoare triple {30589#true} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {30589#true} is VALID [2018-11-23 12:14:49,546 INFO L273 TraceCheckUtils]: 88: Hoare triple {30589#true} assume true; {30589#true} is VALID [2018-11-23 12:14:49,546 INFO L268 TraceCheckUtils]: 89: Hoare quadruple {30589#true} {30589#true} #84#return; {30589#true} is VALID [2018-11-23 12:14:49,546 INFO L273 TraceCheckUtils]: 90: Hoare triple {30589#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {30589#true} is VALID [2018-11-23 12:14:49,546 INFO L256 TraceCheckUtils]: 91: Hoare triple {30589#true} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {30589#true} is VALID [2018-11-23 12:14:49,557 INFO L273 TraceCheckUtils]: 92: Hoare triple {30589#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {30870#(<= rangesum_~i~1 0)} is VALID [2018-11-23 12:14:49,558 INFO L273 TraceCheckUtils]: 93: Hoare triple {30870#(<= rangesum_~i~1 0)} assume !!(~i~1 < 40); {30870#(<= rangesum_~i~1 0)} is VALID [2018-11-23 12:14:49,558 INFO L273 TraceCheckUtils]: 94: Hoare triple {30870#(<= rangesum_~i~1 0)} assume !(~i~1 > 20); {30870#(<= rangesum_~i~1 0)} is VALID [2018-11-23 12:14:49,560 INFO L273 TraceCheckUtils]: 95: Hoare triple {30870#(<= rangesum_~i~1 0)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {30880#(<= rangesum_~i~1 1)} is VALID [2018-11-23 12:14:49,560 INFO L273 TraceCheckUtils]: 96: Hoare triple {30880#(<= rangesum_~i~1 1)} assume !!(~i~1 < 40); {30880#(<= rangesum_~i~1 1)} is VALID [2018-11-23 12:14:49,560 INFO L273 TraceCheckUtils]: 97: Hoare triple {30880#(<= rangesum_~i~1 1)} assume !(~i~1 > 20); {30880#(<= rangesum_~i~1 1)} is VALID [2018-11-23 12:14:49,561 INFO L273 TraceCheckUtils]: 98: Hoare triple {30880#(<= rangesum_~i~1 1)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {30890#(<= rangesum_~i~1 2)} is VALID [2018-11-23 12:14:49,561 INFO L273 TraceCheckUtils]: 99: Hoare triple {30890#(<= rangesum_~i~1 2)} assume !!(~i~1 < 40); {30890#(<= rangesum_~i~1 2)} is VALID [2018-11-23 12:14:49,562 INFO L273 TraceCheckUtils]: 100: Hoare triple {30890#(<= rangesum_~i~1 2)} assume !(~i~1 > 20); {30890#(<= rangesum_~i~1 2)} is VALID [2018-11-23 12:14:49,562 INFO L273 TraceCheckUtils]: 101: Hoare triple {30890#(<= rangesum_~i~1 2)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {30900#(<= rangesum_~i~1 3)} is VALID [2018-11-23 12:14:49,563 INFO L273 TraceCheckUtils]: 102: Hoare triple {30900#(<= rangesum_~i~1 3)} assume !!(~i~1 < 40); {30900#(<= rangesum_~i~1 3)} is VALID [2018-11-23 12:14:49,564 INFO L273 TraceCheckUtils]: 103: Hoare triple {30900#(<= rangesum_~i~1 3)} assume !(~i~1 > 20); {30900#(<= rangesum_~i~1 3)} is VALID [2018-11-23 12:14:49,564 INFO L273 TraceCheckUtils]: 104: Hoare triple {30900#(<= rangesum_~i~1 3)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {30910#(<= rangesum_~i~1 4)} is VALID [2018-11-23 12:14:49,565 INFO L273 TraceCheckUtils]: 105: Hoare triple {30910#(<= rangesum_~i~1 4)} assume !!(~i~1 < 40); {30910#(<= rangesum_~i~1 4)} is VALID [2018-11-23 12:14:49,566 INFO L273 TraceCheckUtils]: 106: Hoare triple {30910#(<= rangesum_~i~1 4)} assume !(~i~1 > 20); {30910#(<= rangesum_~i~1 4)} is VALID [2018-11-23 12:14:49,566 INFO L273 TraceCheckUtils]: 107: Hoare triple {30910#(<= rangesum_~i~1 4)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {30920#(<= rangesum_~i~1 5)} is VALID [2018-11-23 12:14:49,567 INFO L273 TraceCheckUtils]: 108: Hoare triple {30920#(<= rangesum_~i~1 5)} assume !!(~i~1 < 40); {30920#(<= rangesum_~i~1 5)} is VALID [2018-11-23 12:14:49,567 INFO L273 TraceCheckUtils]: 109: Hoare triple {30920#(<= rangesum_~i~1 5)} assume !(~i~1 > 20); {30920#(<= rangesum_~i~1 5)} is VALID [2018-11-23 12:14:49,568 INFO L273 TraceCheckUtils]: 110: Hoare triple {30920#(<= rangesum_~i~1 5)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {30930#(<= rangesum_~i~1 6)} is VALID [2018-11-23 12:14:49,569 INFO L273 TraceCheckUtils]: 111: Hoare triple {30930#(<= rangesum_~i~1 6)} assume !!(~i~1 < 40); {30930#(<= rangesum_~i~1 6)} is VALID [2018-11-23 12:14:49,569 INFO L273 TraceCheckUtils]: 112: Hoare triple {30930#(<= rangesum_~i~1 6)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {30930#(<= rangesum_~i~1 6)} is VALID [2018-11-23 12:14:49,570 INFO L273 TraceCheckUtils]: 113: Hoare triple {30930#(<= rangesum_~i~1 6)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {30940#(<= rangesum_~i~1 7)} is VALID [2018-11-23 12:14:49,571 INFO L273 TraceCheckUtils]: 114: Hoare triple {30940#(<= rangesum_~i~1 7)} assume !!(~i~1 < 40); {30940#(<= rangesum_~i~1 7)} is VALID [2018-11-23 12:14:49,571 INFO L273 TraceCheckUtils]: 115: Hoare triple {30940#(<= rangesum_~i~1 7)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {30940#(<= rangesum_~i~1 7)} is VALID [2018-11-23 12:14:49,572 INFO L273 TraceCheckUtils]: 116: Hoare triple {30940#(<= rangesum_~i~1 7)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {30950#(<= rangesum_~i~1 8)} is VALID [2018-11-23 12:14:49,573 INFO L273 TraceCheckUtils]: 117: Hoare triple {30950#(<= rangesum_~i~1 8)} assume !!(~i~1 < 40); {30950#(<= rangesum_~i~1 8)} is VALID [2018-11-23 12:14:49,573 INFO L273 TraceCheckUtils]: 118: Hoare triple {30950#(<= rangesum_~i~1 8)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {30950#(<= rangesum_~i~1 8)} is VALID [2018-11-23 12:14:49,574 INFO L273 TraceCheckUtils]: 119: Hoare triple {30950#(<= rangesum_~i~1 8)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {30960#(<= rangesum_~i~1 9)} is VALID [2018-11-23 12:14:49,575 INFO L273 TraceCheckUtils]: 120: Hoare triple {30960#(<= rangesum_~i~1 9)} assume !!(~i~1 < 40); {30960#(<= rangesum_~i~1 9)} is VALID [2018-11-23 12:14:49,575 INFO L273 TraceCheckUtils]: 121: Hoare triple {30960#(<= rangesum_~i~1 9)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {30960#(<= rangesum_~i~1 9)} is VALID [2018-11-23 12:14:49,576 INFO L273 TraceCheckUtils]: 122: Hoare triple {30960#(<= rangesum_~i~1 9)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {30970#(<= rangesum_~i~1 10)} is VALID [2018-11-23 12:14:49,577 INFO L273 TraceCheckUtils]: 123: Hoare triple {30970#(<= rangesum_~i~1 10)} assume !!(~i~1 < 40); {30970#(<= rangesum_~i~1 10)} is VALID [2018-11-23 12:14:49,577 INFO L273 TraceCheckUtils]: 124: Hoare triple {30970#(<= rangesum_~i~1 10)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {30970#(<= rangesum_~i~1 10)} is VALID [2018-11-23 12:14:49,578 INFO L273 TraceCheckUtils]: 125: Hoare triple {30970#(<= rangesum_~i~1 10)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {30980#(<= rangesum_~i~1 11)} is VALID [2018-11-23 12:14:49,579 INFO L273 TraceCheckUtils]: 126: Hoare triple {30980#(<= rangesum_~i~1 11)} assume !!(~i~1 < 40); {30980#(<= rangesum_~i~1 11)} is VALID [2018-11-23 12:14:49,580 INFO L273 TraceCheckUtils]: 127: Hoare triple {30980#(<= rangesum_~i~1 11)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {30590#false} is VALID [2018-11-23 12:14:49,580 INFO L273 TraceCheckUtils]: 128: Hoare triple {30590#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {30590#false} is VALID [2018-11-23 12:14:49,580 INFO L273 TraceCheckUtils]: 129: Hoare triple {30590#false} assume !!(~i~1 < 40); {30590#false} is VALID [2018-11-23 12:14:49,580 INFO L273 TraceCheckUtils]: 130: Hoare triple {30590#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {30590#false} is VALID [2018-11-23 12:14:49,581 INFO L273 TraceCheckUtils]: 131: Hoare triple {30590#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {30590#false} is VALID [2018-11-23 12:14:49,581 INFO L273 TraceCheckUtils]: 132: Hoare triple {30590#false} assume !!(~i~1 < 40); {30590#false} is VALID [2018-11-23 12:14:49,581 INFO L273 TraceCheckUtils]: 133: Hoare triple {30590#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {30590#false} is VALID [2018-11-23 12:14:49,581 INFO L273 TraceCheckUtils]: 134: Hoare triple {30590#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {30590#false} is VALID [2018-11-23 12:14:49,581 INFO L273 TraceCheckUtils]: 135: Hoare triple {30590#false} assume !(~i~1 < 40); {30590#false} is VALID [2018-11-23 12:14:49,582 INFO L273 TraceCheckUtils]: 136: Hoare triple {30590#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {30590#false} is VALID [2018-11-23 12:14:49,582 INFO L273 TraceCheckUtils]: 137: Hoare triple {30590#false} assume true; {30590#false} is VALID [2018-11-23 12:14:49,582 INFO L268 TraceCheckUtils]: 138: Hoare quadruple {30590#false} {30589#true} #86#return; {30590#false} is VALID [2018-11-23 12:14:49,582 INFO L273 TraceCheckUtils]: 139: Hoare triple {30590#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {30590#false} is VALID [2018-11-23 12:14:49,583 INFO L273 TraceCheckUtils]: 140: Hoare triple {30590#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {30590#false} is VALID [2018-11-23 12:14:49,583 INFO L273 TraceCheckUtils]: 141: Hoare triple {30590#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {30590#false} is VALID [2018-11-23 12:14:49,583 INFO L273 TraceCheckUtils]: 142: Hoare triple {30590#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {30590#false} is VALID [2018-11-23 12:14:49,583 INFO L273 TraceCheckUtils]: 143: Hoare triple {30590#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {30590#false} is VALID [2018-11-23 12:14:49,583 INFO L273 TraceCheckUtils]: 144: Hoare triple {30590#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {30590#false} is VALID [2018-11-23 12:14:49,584 INFO L273 TraceCheckUtils]: 145: Hoare triple {30590#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {30590#false} is VALID [2018-11-23 12:14:49,584 INFO L273 TraceCheckUtils]: 146: Hoare triple {30590#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {30590#false} is VALID [2018-11-23 12:14:49,584 INFO L273 TraceCheckUtils]: 147: Hoare triple {30590#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {30590#false} is VALID [2018-11-23 12:14:49,584 INFO L273 TraceCheckUtils]: 148: Hoare triple {30590#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {30590#false} is VALID [2018-11-23 12:14:49,585 INFO L273 TraceCheckUtils]: 149: Hoare triple {30590#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {30590#false} is VALID [2018-11-23 12:14:49,585 INFO L273 TraceCheckUtils]: 150: Hoare triple {30590#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {30590#false} is VALID [2018-11-23 12:14:49,585 INFO L273 TraceCheckUtils]: 151: Hoare triple {30590#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {30590#false} is VALID [2018-11-23 12:14:49,585 INFO L273 TraceCheckUtils]: 152: Hoare triple {30590#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {30590#false} is VALID [2018-11-23 12:14:49,585 INFO L273 TraceCheckUtils]: 153: Hoare triple {30590#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {30590#false} is VALID [2018-11-23 12:14:49,585 INFO L273 TraceCheckUtils]: 154: Hoare triple {30590#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {30590#false} is VALID [2018-11-23 12:14:49,585 INFO L273 TraceCheckUtils]: 155: Hoare triple {30590#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {30590#false} is VALID [2018-11-23 12:14:49,586 INFO L273 TraceCheckUtils]: 156: Hoare triple {30590#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {30590#false} is VALID [2018-11-23 12:14:49,586 INFO L273 TraceCheckUtils]: 157: Hoare triple {30590#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {30590#false} is VALID [2018-11-23 12:14:49,586 INFO L273 TraceCheckUtils]: 158: Hoare triple {30590#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {30590#false} is VALID [2018-11-23 12:14:49,586 INFO L273 TraceCheckUtils]: 159: Hoare triple {30590#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {30590#false} is VALID [2018-11-23 12:14:49,586 INFO L273 TraceCheckUtils]: 160: Hoare triple {30590#false} assume !(~i~2 < 39); {30590#false} is VALID [2018-11-23 12:14:49,586 INFO L273 TraceCheckUtils]: 161: Hoare triple {30590#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {30590#false} is VALID [2018-11-23 12:14:49,586 INFO L256 TraceCheckUtils]: 162: Hoare triple {30590#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {30590#false} is VALID [2018-11-23 12:14:49,587 INFO L273 TraceCheckUtils]: 163: Hoare triple {30590#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {30590#false} is VALID [2018-11-23 12:14:49,587 INFO L273 TraceCheckUtils]: 164: Hoare triple {30590#false} assume !!(~i~1 < 40); {30590#false} is VALID [2018-11-23 12:14:49,587 INFO L273 TraceCheckUtils]: 165: Hoare triple {30590#false} assume !(~i~1 > 20); {30590#false} is VALID [2018-11-23 12:14:49,587 INFO L273 TraceCheckUtils]: 166: Hoare triple {30590#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {30590#false} is VALID [2018-11-23 12:14:49,587 INFO L273 TraceCheckUtils]: 167: Hoare triple {30590#false} assume !!(~i~1 < 40); {30590#false} is VALID [2018-11-23 12:14:49,587 INFO L273 TraceCheckUtils]: 168: Hoare triple {30590#false} assume !(~i~1 > 20); {30590#false} is VALID [2018-11-23 12:14:49,587 INFO L273 TraceCheckUtils]: 169: Hoare triple {30590#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {30590#false} is VALID [2018-11-23 12:14:49,588 INFO L273 TraceCheckUtils]: 170: Hoare triple {30590#false} assume !!(~i~1 < 40); {30590#false} is VALID [2018-11-23 12:14:49,588 INFO L273 TraceCheckUtils]: 171: Hoare triple {30590#false} assume !(~i~1 > 20); {30590#false} is VALID [2018-11-23 12:14:49,588 INFO L273 TraceCheckUtils]: 172: Hoare triple {30590#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {30590#false} is VALID [2018-11-23 12:14:49,588 INFO L273 TraceCheckUtils]: 173: Hoare triple {30590#false} assume !!(~i~1 < 40); {30590#false} is VALID [2018-11-23 12:14:49,588 INFO L273 TraceCheckUtils]: 174: Hoare triple {30590#false} assume !(~i~1 > 20); {30590#false} is VALID [2018-11-23 12:14:49,588 INFO L273 TraceCheckUtils]: 175: Hoare triple {30590#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {30590#false} is VALID [2018-11-23 12:14:49,588 INFO L273 TraceCheckUtils]: 176: Hoare triple {30590#false} assume !!(~i~1 < 40); {30590#false} is VALID [2018-11-23 12:14:49,589 INFO L273 TraceCheckUtils]: 177: Hoare triple {30590#false} assume !(~i~1 > 20); {30590#false} is VALID [2018-11-23 12:14:49,589 INFO L273 TraceCheckUtils]: 178: Hoare triple {30590#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {30590#false} is VALID [2018-11-23 12:14:49,589 INFO L273 TraceCheckUtils]: 179: Hoare triple {30590#false} assume !!(~i~1 < 40); {30590#false} is VALID [2018-11-23 12:14:49,589 INFO L273 TraceCheckUtils]: 180: Hoare triple {30590#false} assume !(~i~1 > 20); {30590#false} is VALID [2018-11-23 12:14:49,589 INFO L273 TraceCheckUtils]: 181: Hoare triple {30590#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {30590#false} is VALID [2018-11-23 12:14:49,589 INFO L273 TraceCheckUtils]: 182: Hoare triple {30590#false} assume !!(~i~1 < 40); {30590#false} is VALID [2018-11-23 12:14:49,589 INFO L273 TraceCheckUtils]: 183: Hoare triple {30590#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {30590#false} is VALID [2018-11-23 12:14:49,590 INFO L273 TraceCheckUtils]: 184: Hoare triple {30590#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {30590#false} is VALID [2018-11-23 12:14:49,590 INFO L273 TraceCheckUtils]: 185: Hoare triple {30590#false} assume !!(~i~1 < 40); {30590#false} is VALID [2018-11-23 12:14:49,590 INFO L273 TraceCheckUtils]: 186: Hoare triple {30590#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {30590#false} is VALID [2018-11-23 12:14:49,590 INFO L273 TraceCheckUtils]: 187: Hoare triple {30590#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {30590#false} is VALID [2018-11-23 12:14:49,590 INFO L273 TraceCheckUtils]: 188: Hoare triple {30590#false} assume !!(~i~1 < 40); {30590#false} is VALID [2018-11-23 12:14:49,590 INFO L273 TraceCheckUtils]: 189: Hoare triple {30590#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {30590#false} is VALID [2018-11-23 12:14:49,590 INFO L273 TraceCheckUtils]: 190: Hoare triple {30590#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {30590#false} is VALID [2018-11-23 12:14:49,591 INFO L273 TraceCheckUtils]: 191: Hoare triple {30590#false} assume !!(~i~1 < 40); {30590#false} is VALID [2018-11-23 12:14:49,591 INFO L273 TraceCheckUtils]: 192: Hoare triple {30590#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {30590#false} is VALID [2018-11-23 12:14:49,591 INFO L273 TraceCheckUtils]: 193: Hoare triple {30590#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {30590#false} is VALID [2018-11-23 12:14:49,591 INFO L273 TraceCheckUtils]: 194: Hoare triple {30590#false} assume !!(~i~1 < 40); {30590#false} is VALID [2018-11-23 12:14:49,591 INFO L273 TraceCheckUtils]: 195: Hoare triple {30590#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {30590#false} is VALID [2018-11-23 12:14:49,591 INFO L273 TraceCheckUtils]: 196: Hoare triple {30590#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {30590#false} is VALID [2018-11-23 12:14:49,591 INFO L273 TraceCheckUtils]: 197: Hoare triple {30590#false} assume !!(~i~1 < 40); {30590#false} is VALID [2018-11-23 12:14:49,592 INFO L273 TraceCheckUtils]: 198: Hoare triple {30590#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {30590#false} is VALID [2018-11-23 12:14:49,592 INFO L273 TraceCheckUtils]: 199: Hoare triple {30590#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {30590#false} is VALID [2018-11-23 12:14:49,592 INFO L273 TraceCheckUtils]: 200: Hoare triple {30590#false} assume !!(~i~1 < 40); {30590#false} is VALID [2018-11-23 12:14:49,592 INFO L273 TraceCheckUtils]: 201: Hoare triple {30590#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {30590#false} is VALID [2018-11-23 12:14:49,592 INFO L273 TraceCheckUtils]: 202: Hoare triple {30590#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {30590#false} is VALID [2018-11-23 12:14:49,592 INFO L273 TraceCheckUtils]: 203: Hoare triple {30590#false} assume !!(~i~1 < 40); {30590#false} is VALID [2018-11-23 12:14:49,592 INFO L273 TraceCheckUtils]: 204: Hoare triple {30590#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {30590#false} is VALID [2018-11-23 12:14:49,593 INFO L273 TraceCheckUtils]: 205: Hoare triple {30590#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {30590#false} is VALID [2018-11-23 12:14:49,593 INFO L273 TraceCheckUtils]: 206: Hoare triple {30590#false} assume !(~i~1 < 40); {30590#false} is VALID [2018-11-23 12:14:49,593 INFO L273 TraceCheckUtils]: 207: Hoare triple {30590#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {30590#false} is VALID [2018-11-23 12:14:49,593 INFO L273 TraceCheckUtils]: 208: Hoare triple {30590#false} assume true; {30590#false} is VALID [2018-11-23 12:14:49,593 INFO L268 TraceCheckUtils]: 209: Hoare quadruple {30590#false} {30590#false} #88#return; {30590#false} is VALID [2018-11-23 12:14:49,593 INFO L273 TraceCheckUtils]: 210: Hoare triple {30590#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {30590#false} is VALID [2018-11-23 12:14:49,593 INFO L273 TraceCheckUtils]: 211: Hoare triple {30590#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {30590#false} is VALID [2018-11-23 12:14:49,593 INFO L273 TraceCheckUtils]: 212: Hoare triple {30590#false} assume !false; {30590#false} is VALID [2018-11-23 12:14:49,641 INFO L134 CoverageAnalysis]: Checked inductivity of 3049 backedges. 1837 proven. 187 refuted. 0 times theorem prover too weak. 1025 trivial. 0 not checked. [2018-11-23 12:14:49,659 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:14:49,660 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [14] total 14 [2018-11-23 12:14:49,660 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 213 [2018-11-23 12:14:49,660 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:14:49,660 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states. [2018-11-23 12:14:49,737 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-23 12:14:49,737 INFO L459 AbstractCegarLoop]: Interpolant automaton has 14 states [2018-11-23 12:14:49,737 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2018-11-23 12:14:49,737 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=91, Invalid=91, Unknown=0, NotChecked=0, Total=182 [2018-11-23 12:14:49,738 INFO L87 Difference]: Start difference. First operand 120 states and 133 transitions. Second operand 14 states. [2018-11-23 12:14:50,269 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:50,269 INFO L93 Difference]: Finished difference Result 216 states and 249 transitions. [2018-11-23 12:14:50,269 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2018-11-23 12:14:50,269 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 213 [2018-11-23 12:14:50,269 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:14:50,269 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2018-11-23 12:14:50,270 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 105 transitions. [2018-11-23 12:14:50,270 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2018-11-23 12:14:50,271 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 105 transitions. [2018-11-23 12:14:50,271 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states and 105 transitions. [2018-11-23 12:14:50,395 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-23 12:14:50,399 INFO L225 Difference]: With dead ends: 216 [2018-11-23 12:14:50,399 INFO L226 Difference]: Without dead ends: 139 [2018-11-23 12:14:50,400 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 212 GetRequests, 200 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=91, Invalid=91, Unknown=0, NotChecked=0, Total=182 [2018-11-23 12:14:50,400 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 139 states. [2018-11-23 12:14:50,474 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 139 to 138. [2018-11-23 12:14:50,474 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:14:50,474 INFO L82 GeneralOperation]: Start isEquivalent. First operand 139 states. Second operand 138 states. [2018-11-23 12:14:50,474 INFO L74 IsIncluded]: Start isIncluded. First operand 139 states. Second operand 138 states. [2018-11-23 12:14:50,474 INFO L87 Difference]: Start difference. First operand 139 states. Second operand 138 states. [2018-11-23 12:14:50,478 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:50,478 INFO L93 Difference]: Finished difference Result 139 states and 152 transitions. [2018-11-23 12:14:50,478 INFO L276 IsEmpty]: Start isEmpty. Operand 139 states and 152 transitions. [2018-11-23 12:14:50,478 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:14:50,478 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:14:50,479 INFO L74 IsIncluded]: Start isIncluded. First operand 138 states. Second operand 139 states. [2018-11-23 12:14:50,479 INFO L87 Difference]: Start difference. First operand 138 states. Second operand 139 states. [2018-11-23 12:14:50,481 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:50,481 INFO L93 Difference]: Finished difference Result 139 states and 152 transitions. [2018-11-23 12:14:50,481 INFO L276 IsEmpty]: Start isEmpty. Operand 139 states and 152 transitions. [2018-11-23 12:14:50,482 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:14:50,482 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:14:50,482 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:14:50,482 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:14:50,482 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 138 states. [2018-11-23 12:14:50,484 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 138 states to 138 states and 151 transitions. [2018-11-23 12:14:50,485 INFO L78 Accepts]: Start accepts. Automaton has 138 states and 151 transitions. Word has length 213 [2018-11-23 12:14:50,485 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:14:50,485 INFO L480 AbstractCegarLoop]: Abstraction has 138 states and 151 transitions. [2018-11-23 12:14:50,485 INFO L481 AbstractCegarLoop]: Interpolant automaton has 14 states. [2018-11-23 12:14:50,485 INFO L276 IsEmpty]: Start isEmpty. Operand 138 states and 151 transitions. [2018-11-23 12:14:50,486 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 268 [2018-11-23 12:14:50,486 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:14:50,487 INFO L402 BasicCegarLoop]: trace histogram [60, 60, 36, 24, 15, 15, 10, 10, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:14:50,487 INFO L423 AbstractCegarLoop]: === Iteration 40 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:14:50,487 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:14:50,487 INFO L82 PathProgramCache]: Analyzing trace with hash 690474406, now seen corresponding path program 35 times [2018-11-23 12:14:50,487 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:14:50,488 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:14:50,488 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:14:50,488 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:14:50,488 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:14:50,502 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:14:50,502 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:14:50,502 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 41 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 41 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:14:50,518 INFO L103 rtionOrderModulation]: Keeping assertion order INSIDE_LOOP_FIRST1 [2018-11-23 12:14:50,555 INFO L249 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 10 check-sat command(s) [2018-11-23 12:14:50,556 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:14:50,593 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:14:50,596 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:14:50,938 INFO L256 TraceCheckUtils]: 0: Hoare triple {32018#true} call ULTIMATE.init(); {32018#true} is VALID [2018-11-23 12:14:50,938 INFO L273 TraceCheckUtils]: 1: Hoare triple {32018#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {32018#true} is VALID [2018-11-23 12:14:50,938 INFO L273 TraceCheckUtils]: 2: Hoare triple {32018#true} assume true; {32018#true} is VALID [2018-11-23 12:14:50,939 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {32018#true} {32018#true} #78#return; {32018#true} is VALID [2018-11-23 12:14:50,939 INFO L256 TraceCheckUtils]: 4: Hoare triple {32018#true} call #t~ret12 := main(); {32018#true} is VALID [2018-11-23 12:14:50,939 INFO L273 TraceCheckUtils]: 5: Hoare triple {32018#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {32018#true} is VALID [2018-11-23 12:14:50,939 INFO L256 TraceCheckUtils]: 6: Hoare triple {32018#true} call init_nondet(~#x~0.base, ~#x~0.offset); {32018#true} is VALID [2018-11-23 12:14:50,939 INFO L273 TraceCheckUtils]: 7: Hoare triple {32018#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {32018#true} is VALID [2018-11-23 12:14:50,939 INFO L273 TraceCheckUtils]: 8: Hoare triple {32018#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {32018#true} is VALID [2018-11-23 12:14:50,939 INFO L273 TraceCheckUtils]: 9: Hoare triple {32018#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32018#true} is VALID [2018-11-23 12:14:50,939 INFO L273 TraceCheckUtils]: 10: Hoare triple {32018#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {32018#true} is VALID [2018-11-23 12:14:50,939 INFO L273 TraceCheckUtils]: 11: Hoare triple {32018#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32018#true} is VALID [2018-11-23 12:14:50,940 INFO L273 TraceCheckUtils]: 12: Hoare triple {32018#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {32018#true} is VALID [2018-11-23 12:14:50,940 INFO L273 TraceCheckUtils]: 13: Hoare triple {32018#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32018#true} is VALID [2018-11-23 12:14:50,940 INFO L273 TraceCheckUtils]: 14: Hoare triple {32018#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {32018#true} is VALID [2018-11-23 12:14:50,940 INFO L273 TraceCheckUtils]: 15: Hoare triple {32018#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32018#true} is VALID [2018-11-23 12:14:50,940 INFO L273 TraceCheckUtils]: 16: Hoare triple {32018#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {32018#true} is VALID [2018-11-23 12:14:50,940 INFO L273 TraceCheckUtils]: 17: Hoare triple {32018#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32018#true} is VALID [2018-11-23 12:14:50,940 INFO L273 TraceCheckUtils]: 18: Hoare triple {32018#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {32018#true} is VALID [2018-11-23 12:14:50,940 INFO L273 TraceCheckUtils]: 19: Hoare triple {32018#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32018#true} is VALID [2018-11-23 12:14:50,940 INFO L273 TraceCheckUtils]: 20: Hoare triple {32018#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {32018#true} is VALID [2018-11-23 12:14:50,940 INFO L273 TraceCheckUtils]: 21: Hoare triple {32018#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32018#true} is VALID [2018-11-23 12:14:50,941 INFO L273 TraceCheckUtils]: 22: Hoare triple {32018#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {32018#true} is VALID [2018-11-23 12:14:50,941 INFO L273 TraceCheckUtils]: 23: Hoare triple {32018#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32018#true} is VALID [2018-11-23 12:14:50,941 INFO L273 TraceCheckUtils]: 24: Hoare triple {32018#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {32018#true} is VALID [2018-11-23 12:14:50,941 INFO L273 TraceCheckUtils]: 25: Hoare triple {32018#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32018#true} is VALID [2018-11-23 12:14:50,941 INFO L273 TraceCheckUtils]: 26: Hoare triple {32018#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {32018#true} is VALID [2018-11-23 12:14:50,941 INFO L273 TraceCheckUtils]: 27: Hoare triple {32018#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32018#true} is VALID [2018-11-23 12:14:50,941 INFO L273 TraceCheckUtils]: 28: Hoare triple {32018#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {32018#true} is VALID [2018-11-23 12:14:50,941 INFO L273 TraceCheckUtils]: 29: Hoare triple {32018#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32018#true} is VALID [2018-11-23 12:14:50,941 INFO L273 TraceCheckUtils]: 30: Hoare triple {32018#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {32018#true} is VALID [2018-11-23 12:14:50,942 INFO L273 TraceCheckUtils]: 31: Hoare triple {32018#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32018#true} is VALID [2018-11-23 12:14:50,942 INFO L273 TraceCheckUtils]: 32: Hoare triple {32018#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {32018#true} is VALID [2018-11-23 12:14:50,942 INFO L273 TraceCheckUtils]: 33: Hoare triple {32018#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32018#true} is VALID [2018-11-23 12:14:50,942 INFO L273 TraceCheckUtils]: 34: Hoare triple {32018#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {32018#true} is VALID [2018-11-23 12:14:50,942 INFO L273 TraceCheckUtils]: 35: Hoare triple {32018#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32018#true} is VALID [2018-11-23 12:14:50,942 INFO L273 TraceCheckUtils]: 36: Hoare triple {32018#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {32018#true} is VALID [2018-11-23 12:14:50,942 INFO L273 TraceCheckUtils]: 37: Hoare triple {32018#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32018#true} is VALID [2018-11-23 12:14:50,942 INFO L273 TraceCheckUtils]: 38: Hoare triple {32018#true} assume !(~i~0 < 40); {32018#true} is VALID [2018-11-23 12:14:50,942 INFO L273 TraceCheckUtils]: 39: Hoare triple {32018#true} assume true; {32018#true} is VALID [2018-11-23 12:14:50,942 INFO L268 TraceCheckUtils]: 40: Hoare quadruple {32018#true} {32018#true} #82#return; {32018#true} is VALID [2018-11-23 12:14:50,943 INFO L273 TraceCheckUtils]: 41: Hoare triple {32018#true} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {32018#true} is VALID [2018-11-23 12:14:50,943 INFO L256 TraceCheckUtils]: 42: Hoare triple {32018#true} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {32018#true} is VALID [2018-11-23 12:14:50,943 INFO L273 TraceCheckUtils]: 43: Hoare triple {32018#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {32018#true} is VALID [2018-11-23 12:14:50,943 INFO L273 TraceCheckUtils]: 44: Hoare triple {32018#true} assume !!(~i~1 < 40); {32018#true} is VALID [2018-11-23 12:14:50,943 INFO L273 TraceCheckUtils]: 45: Hoare triple {32018#true} assume !(~i~1 > 20); {32018#true} is VALID [2018-11-23 12:14:50,943 INFO L273 TraceCheckUtils]: 46: Hoare triple {32018#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32018#true} is VALID [2018-11-23 12:14:50,943 INFO L273 TraceCheckUtils]: 47: Hoare triple {32018#true} assume !!(~i~1 < 40); {32018#true} is VALID [2018-11-23 12:14:50,943 INFO L273 TraceCheckUtils]: 48: Hoare triple {32018#true} assume !(~i~1 > 20); {32018#true} is VALID [2018-11-23 12:14:50,943 INFO L273 TraceCheckUtils]: 49: Hoare triple {32018#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32018#true} is VALID [2018-11-23 12:14:50,944 INFO L273 TraceCheckUtils]: 50: Hoare triple {32018#true} assume !!(~i~1 < 40); {32018#true} is VALID [2018-11-23 12:14:50,944 INFO L273 TraceCheckUtils]: 51: Hoare triple {32018#true} assume !(~i~1 > 20); {32018#true} is VALID [2018-11-23 12:14:50,944 INFO L273 TraceCheckUtils]: 52: Hoare triple {32018#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32018#true} is VALID [2018-11-23 12:14:50,944 INFO L273 TraceCheckUtils]: 53: Hoare triple {32018#true} assume !!(~i~1 < 40); {32018#true} is VALID [2018-11-23 12:14:50,944 INFO L273 TraceCheckUtils]: 54: Hoare triple {32018#true} assume !(~i~1 > 20); {32018#true} is VALID [2018-11-23 12:14:50,944 INFO L273 TraceCheckUtils]: 55: Hoare triple {32018#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32018#true} is VALID [2018-11-23 12:14:50,944 INFO L273 TraceCheckUtils]: 56: Hoare triple {32018#true} assume !!(~i~1 < 40); {32018#true} is VALID [2018-11-23 12:14:50,944 INFO L273 TraceCheckUtils]: 57: Hoare triple {32018#true} assume !(~i~1 > 20); {32018#true} is VALID [2018-11-23 12:14:50,944 INFO L273 TraceCheckUtils]: 58: Hoare triple {32018#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32018#true} is VALID [2018-11-23 12:14:50,944 INFO L273 TraceCheckUtils]: 59: Hoare triple {32018#true} assume !!(~i~1 < 40); {32018#true} is VALID [2018-11-23 12:14:50,945 INFO L273 TraceCheckUtils]: 60: Hoare triple {32018#true} assume !(~i~1 > 20); {32018#true} is VALID [2018-11-23 12:14:50,945 INFO L273 TraceCheckUtils]: 61: Hoare triple {32018#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32018#true} is VALID [2018-11-23 12:14:50,945 INFO L273 TraceCheckUtils]: 62: Hoare triple {32018#true} assume !!(~i~1 < 40); {32018#true} is VALID [2018-11-23 12:14:50,945 INFO L273 TraceCheckUtils]: 63: Hoare triple {32018#true} assume !(~i~1 > 20); {32018#true} is VALID [2018-11-23 12:14:50,945 INFO L273 TraceCheckUtils]: 64: Hoare triple {32018#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32018#true} is VALID [2018-11-23 12:14:50,945 INFO L273 TraceCheckUtils]: 65: Hoare triple {32018#true} assume !!(~i~1 < 40); {32018#true} is VALID [2018-11-23 12:14:50,945 INFO L273 TraceCheckUtils]: 66: Hoare triple {32018#true} assume !(~i~1 > 20); {32018#true} is VALID [2018-11-23 12:14:50,945 INFO L273 TraceCheckUtils]: 67: Hoare triple {32018#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32018#true} is VALID [2018-11-23 12:14:50,945 INFO L273 TraceCheckUtils]: 68: Hoare triple {32018#true} assume !!(~i~1 < 40); {32018#true} is VALID [2018-11-23 12:14:50,946 INFO L273 TraceCheckUtils]: 69: Hoare triple {32018#true} assume !(~i~1 > 20); {32018#true} is VALID [2018-11-23 12:14:50,946 INFO L273 TraceCheckUtils]: 70: Hoare triple {32018#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32018#true} is VALID [2018-11-23 12:14:50,946 INFO L273 TraceCheckUtils]: 71: Hoare triple {32018#true} assume !!(~i~1 < 40); {32018#true} is VALID [2018-11-23 12:14:50,946 INFO L273 TraceCheckUtils]: 72: Hoare triple {32018#true} assume !(~i~1 > 20); {32018#true} is VALID [2018-11-23 12:14:50,946 INFO L273 TraceCheckUtils]: 73: Hoare triple {32018#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32018#true} is VALID [2018-11-23 12:14:50,946 INFO L273 TraceCheckUtils]: 74: Hoare triple {32018#true} assume !!(~i~1 < 40); {32018#true} is VALID [2018-11-23 12:14:50,946 INFO L273 TraceCheckUtils]: 75: Hoare triple {32018#true} assume !(~i~1 > 20); {32018#true} is VALID [2018-11-23 12:14:50,946 INFO L273 TraceCheckUtils]: 76: Hoare triple {32018#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32018#true} is VALID [2018-11-23 12:14:50,946 INFO L273 TraceCheckUtils]: 77: Hoare triple {32018#true} assume !!(~i~1 < 40); {32018#true} is VALID [2018-11-23 12:14:50,948 INFO L273 TraceCheckUtils]: 78: Hoare triple {32018#true} assume !(~i~1 > 20); {32257#(<= rangesum_~i~1 20)} is VALID [2018-11-23 12:14:50,948 INFO L273 TraceCheckUtils]: 79: Hoare triple {32257#(<= rangesum_~i~1 20)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32261#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:14:50,949 INFO L273 TraceCheckUtils]: 80: Hoare triple {32261#(<= rangesum_~i~1 21)} assume !!(~i~1 < 40); {32261#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:14:50,949 INFO L273 TraceCheckUtils]: 81: Hoare triple {32261#(<= rangesum_~i~1 21)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {32261#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:14:50,949 INFO L273 TraceCheckUtils]: 82: Hoare triple {32261#(<= rangesum_~i~1 21)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32271#(<= rangesum_~i~1 22)} is VALID [2018-11-23 12:14:50,950 INFO L273 TraceCheckUtils]: 83: Hoare triple {32271#(<= rangesum_~i~1 22)} assume !!(~i~1 < 40); {32271#(<= rangesum_~i~1 22)} is VALID [2018-11-23 12:14:50,950 INFO L273 TraceCheckUtils]: 84: Hoare triple {32271#(<= rangesum_~i~1 22)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {32271#(<= rangesum_~i~1 22)} is VALID [2018-11-23 12:14:50,951 INFO L273 TraceCheckUtils]: 85: Hoare triple {32271#(<= rangesum_~i~1 22)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32281#(<= rangesum_~i~1 23)} is VALID [2018-11-23 12:14:50,951 INFO L273 TraceCheckUtils]: 86: Hoare triple {32281#(<= rangesum_~i~1 23)} assume !!(~i~1 < 40); {32281#(<= rangesum_~i~1 23)} is VALID [2018-11-23 12:14:50,952 INFO L273 TraceCheckUtils]: 87: Hoare triple {32281#(<= rangesum_~i~1 23)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {32281#(<= rangesum_~i~1 23)} is VALID [2018-11-23 12:14:50,953 INFO L273 TraceCheckUtils]: 88: Hoare triple {32281#(<= rangesum_~i~1 23)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32291#(<= rangesum_~i~1 24)} is VALID [2018-11-23 12:14:50,953 INFO L273 TraceCheckUtils]: 89: Hoare triple {32291#(<= rangesum_~i~1 24)} assume !!(~i~1 < 40); {32291#(<= rangesum_~i~1 24)} is VALID [2018-11-23 12:14:50,954 INFO L273 TraceCheckUtils]: 90: Hoare triple {32291#(<= rangesum_~i~1 24)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {32291#(<= rangesum_~i~1 24)} is VALID [2018-11-23 12:14:50,954 INFO L273 TraceCheckUtils]: 91: Hoare triple {32291#(<= rangesum_~i~1 24)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32301#(<= rangesum_~i~1 25)} is VALID [2018-11-23 12:14:50,955 INFO L273 TraceCheckUtils]: 92: Hoare triple {32301#(<= rangesum_~i~1 25)} assume !!(~i~1 < 40); {32301#(<= rangesum_~i~1 25)} is VALID [2018-11-23 12:14:50,955 INFO L273 TraceCheckUtils]: 93: Hoare triple {32301#(<= rangesum_~i~1 25)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {32301#(<= rangesum_~i~1 25)} is VALID [2018-11-23 12:14:50,956 INFO L273 TraceCheckUtils]: 94: Hoare triple {32301#(<= rangesum_~i~1 25)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32311#(<= rangesum_~i~1 26)} is VALID [2018-11-23 12:14:50,956 INFO L273 TraceCheckUtils]: 95: Hoare triple {32311#(<= rangesum_~i~1 26)} assume !!(~i~1 < 40); {32311#(<= rangesum_~i~1 26)} is VALID [2018-11-23 12:14:50,957 INFO L273 TraceCheckUtils]: 96: Hoare triple {32311#(<= rangesum_~i~1 26)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {32311#(<= rangesum_~i~1 26)} is VALID [2018-11-23 12:14:50,958 INFO L273 TraceCheckUtils]: 97: Hoare triple {32311#(<= rangesum_~i~1 26)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32321#(<= rangesum_~i~1 27)} is VALID [2018-11-23 12:14:50,958 INFO L273 TraceCheckUtils]: 98: Hoare triple {32321#(<= rangesum_~i~1 27)} assume !!(~i~1 < 40); {32321#(<= rangesum_~i~1 27)} is VALID [2018-11-23 12:14:50,959 INFO L273 TraceCheckUtils]: 99: Hoare triple {32321#(<= rangesum_~i~1 27)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {32321#(<= rangesum_~i~1 27)} is VALID [2018-11-23 12:14:50,959 INFO L273 TraceCheckUtils]: 100: Hoare triple {32321#(<= rangesum_~i~1 27)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32331#(<= rangesum_~i~1 28)} is VALID [2018-11-23 12:14:50,960 INFO L273 TraceCheckUtils]: 101: Hoare triple {32331#(<= rangesum_~i~1 28)} assume !!(~i~1 < 40); {32331#(<= rangesum_~i~1 28)} is VALID [2018-11-23 12:14:50,960 INFO L273 TraceCheckUtils]: 102: Hoare triple {32331#(<= rangesum_~i~1 28)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {32331#(<= rangesum_~i~1 28)} is VALID [2018-11-23 12:14:50,961 INFO L273 TraceCheckUtils]: 103: Hoare triple {32331#(<= rangesum_~i~1 28)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32341#(<= rangesum_~i~1 29)} is VALID [2018-11-23 12:14:50,962 INFO L273 TraceCheckUtils]: 104: Hoare triple {32341#(<= rangesum_~i~1 29)} assume !(~i~1 < 40); {32019#false} is VALID [2018-11-23 12:14:50,962 INFO L273 TraceCheckUtils]: 105: Hoare triple {32019#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {32019#false} is VALID [2018-11-23 12:14:50,962 INFO L273 TraceCheckUtils]: 106: Hoare triple {32019#false} assume true; {32019#false} is VALID [2018-11-23 12:14:50,962 INFO L268 TraceCheckUtils]: 107: Hoare quadruple {32019#false} {32018#true} #84#return; {32019#false} is VALID [2018-11-23 12:14:50,962 INFO L273 TraceCheckUtils]: 108: Hoare triple {32019#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {32019#false} is VALID [2018-11-23 12:14:50,962 INFO L256 TraceCheckUtils]: 109: Hoare triple {32019#false} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {32019#false} is VALID [2018-11-23 12:14:50,963 INFO L273 TraceCheckUtils]: 110: Hoare triple {32019#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {32019#false} is VALID [2018-11-23 12:14:50,963 INFO L273 TraceCheckUtils]: 111: Hoare triple {32019#false} assume !!(~i~1 < 40); {32019#false} is VALID [2018-11-23 12:14:50,963 INFO L273 TraceCheckUtils]: 112: Hoare triple {32019#false} assume !(~i~1 > 20); {32019#false} is VALID [2018-11-23 12:14:50,963 INFO L273 TraceCheckUtils]: 113: Hoare triple {32019#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32019#false} is VALID [2018-11-23 12:14:50,963 INFO L273 TraceCheckUtils]: 114: Hoare triple {32019#false} assume !!(~i~1 < 40); {32019#false} is VALID [2018-11-23 12:14:50,964 INFO L273 TraceCheckUtils]: 115: Hoare triple {32019#false} assume !(~i~1 > 20); {32019#false} is VALID [2018-11-23 12:14:50,964 INFO L273 TraceCheckUtils]: 116: Hoare triple {32019#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32019#false} is VALID [2018-11-23 12:14:50,964 INFO L273 TraceCheckUtils]: 117: Hoare triple {32019#false} assume !!(~i~1 < 40); {32019#false} is VALID [2018-11-23 12:14:50,964 INFO L273 TraceCheckUtils]: 118: Hoare triple {32019#false} assume !(~i~1 > 20); {32019#false} is VALID [2018-11-23 12:14:50,964 INFO L273 TraceCheckUtils]: 119: Hoare triple {32019#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32019#false} is VALID [2018-11-23 12:14:50,964 INFO L273 TraceCheckUtils]: 120: Hoare triple {32019#false} assume !!(~i~1 < 40); {32019#false} is VALID [2018-11-23 12:14:50,965 INFO L273 TraceCheckUtils]: 121: Hoare triple {32019#false} assume !(~i~1 > 20); {32019#false} is VALID [2018-11-23 12:14:50,965 INFO L273 TraceCheckUtils]: 122: Hoare triple {32019#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32019#false} is VALID [2018-11-23 12:14:50,965 INFO L273 TraceCheckUtils]: 123: Hoare triple {32019#false} assume !!(~i~1 < 40); {32019#false} is VALID [2018-11-23 12:14:50,965 INFO L273 TraceCheckUtils]: 124: Hoare triple {32019#false} assume !(~i~1 > 20); {32019#false} is VALID [2018-11-23 12:14:50,965 INFO L273 TraceCheckUtils]: 125: Hoare triple {32019#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32019#false} is VALID [2018-11-23 12:14:50,965 INFO L273 TraceCheckUtils]: 126: Hoare triple {32019#false} assume !!(~i~1 < 40); {32019#false} is VALID [2018-11-23 12:14:50,966 INFO L273 TraceCheckUtils]: 127: Hoare triple {32019#false} assume !(~i~1 > 20); {32019#false} is VALID [2018-11-23 12:14:50,966 INFO L273 TraceCheckUtils]: 128: Hoare triple {32019#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32019#false} is VALID [2018-11-23 12:14:50,966 INFO L273 TraceCheckUtils]: 129: Hoare triple {32019#false} assume !!(~i~1 < 40); {32019#false} is VALID [2018-11-23 12:14:50,966 INFO L273 TraceCheckUtils]: 130: Hoare triple {32019#false} assume !(~i~1 > 20); {32019#false} is VALID [2018-11-23 12:14:50,966 INFO L273 TraceCheckUtils]: 131: Hoare triple {32019#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32019#false} is VALID [2018-11-23 12:14:50,966 INFO L273 TraceCheckUtils]: 132: Hoare triple {32019#false} assume !!(~i~1 < 40); {32019#false} is VALID [2018-11-23 12:14:50,967 INFO L273 TraceCheckUtils]: 133: Hoare triple {32019#false} assume !(~i~1 > 20); {32019#false} is VALID [2018-11-23 12:14:50,967 INFO L273 TraceCheckUtils]: 134: Hoare triple {32019#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32019#false} is VALID [2018-11-23 12:14:50,967 INFO L273 TraceCheckUtils]: 135: Hoare triple {32019#false} assume !!(~i~1 < 40); {32019#false} is VALID [2018-11-23 12:14:50,967 INFO L273 TraceCheckUtils]: 136: Hoare triple {32019#false} assume !(~i~1 > 20); {32019#false} is VALID [2018-11-23 12:14:50,967 INFO L273 TraceCheckUtils]: 137: Hoare triple {32019#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32019#false} is VALID [2018-11-23 12:14:50,967 INFO L273 TraceCheckUtils]: 138: Hoare triple {32019#false} assume !!(~i~1 < 40); {32019#false} is VALID [2018-11-23 12:14:50,967 INFO L273 TraceCheckUtils]: 139: Hoare triple {32019#false} assume !(~i~1 > 20); {32019#false} is VALID [2018-11-23 12:14:50,967 INFO L273 TraceCheckUtils]: 140: Hoare triple {32019#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32019#false} is VALID [2018-11-23 12:14:50,967 INFO L273 TraceCheckUtils]: 141: Hoare triple {32019#false} assume !!(~i~1 < 40); {32019#false} is VALID [2018-11-23 12:14:50,967 INFO L273 TraceCheckUtils]: 142: Hoare triple {32019#false} assume !(~i~1 > 20); {32019#false} is VALID [2018-11-23 12:14:50,968 INFO L273 TraceCheckUtils]: 143: Hoare triple {32019#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32019#false} is VALID [2018-11-23 12:14:50,968 INFO L273 TraceCheckUtils]: 144: Hoare triple {32019#false} assume !!(~i~1 < 40); {32019#false} is VALID [2018-11-23 12:14:50,968 INFO L273 TraceCheckUtils]: 145: Hoare triple {32019#false} assume !(~i~1 > 20); {32019#false} is VALID [2018-11-23 12:14:50,968 INFO L273 TraceCheckUtils]: 146: Hoare triple {32019#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32019#false} is VALID [2018-11-23 12:14:50,968 INFO L273 TraceCheckUtils]: 147: Hoare triple {32019#false} assume !!(~i~1 < 40); {32019#false} is VALID [2018-11-23 12:14:50,968 INFO L273 TraceCheckUtils]: 148: Hoare triple {32019#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {32019#false} is VALID [2018-11-23 12:14:50,968 INFO L273 TraceCheckUtils]: 149: Hoare triple {32019#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32019#false} is VALID [2018-11-23 12:14:50,968 INFO L273 TraceCheckUtils]: 150: Hoare triple {32019#false} assume !!(~i~1 < 40); {32019#false} is VALID [2018-11-23 12:14:50,968 INFO L273 TraceCheckUtils]: 151: Hoare triple {32019#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {32019#false} is VALID [2018-11-23 12:14:50,969 INFO L273 TraceCheckUtils]: 152: Hoare triple {32019#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32019#false} is VALID [2018-11-23 12:14:50,969 INFO L273 TraceCheckUtils]: 153: Hoare triple {32019#false} assume !!(~i~1 < 40); {32019#false} is VALID [2018-11-23 12:14:50,969 INFO L273 TraceCheckUtils]: 154: Hoare triple {32019#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {32019#false} is VALID [2018-11-23 12:14:50,969 INFO L273 TraceCheckUtils]: 155: Hoare triple {32019#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32019#false} is VALID [2018-11-23 12:14:50,969 INFO L273 TraceCheckUtils]: 156: Hoare triple {32019#false} assume !!(~i~1 < 40); {32019#false} is VALID [2018-11-23 12:14:50,969 INFO L273 TraceCheckUtils]: 157: Hoare triple {32019#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {32019#false} is VALID [2018-11-23 12:14:50,969 INFO L273 TraceCheckUtils]: 158: Hoare triple {32019#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32019#false} is VALID [2018-11-23 12:14:50,969 INFO L273 TraceCheckUtils]: 159: Hoare triple {32019#false} assume !!(~i~1 < 40); {32019#false} is VALID [2018-11-23 12:14:50,969 INFO L273 TraceCheckUtils]: 160: Hoare triple {32019#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {32019#false} is VALID [2018-11-23 12:14:50,970 INFO L273 TraceCheckUtils]: 161: Hoare triple {32019#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32019#false} is VALID [2018-11-23 12:14:50,970 INFO L273 TraceCheckUtils]: 162: Hoare triple {32019#false} assume !!(~i~1 < 40); {32019#false} is VALID [2018-11-23 12:14:50,970 INFO L273 TraceCheckUtils]: 163: Hoare triple {32019#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {32019#false} is VALID [2018-11-23 12:14:50,970 INFO L273 TraceCheckUtils]: 164: Hoare triple {32019#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32019#false} is VALID [2018-11-23 12:14:50,970 INFO L273 TraceCheckUtils]: 165: Hoare triple {32019#false} assume !!(~i~1 < 40); {32019#false} is VALID [2018-11-23 12:14:50,970 INFO L273 TraceCheckUtils]: 166: Hoare triple {32019#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {32019#false} is VALID [2018-11-23 12:14:50,970 INFO L273 TraceCheckUtils]: 167: Hoare triple {32019#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32019#false} is VALID [2018-11-23 12:14:50,970 INFO L273 TraceCheckUtils]: 168: Hoare triple {32019#false} assume !!(~i~1 < 40); {32019#false} is VALID [2018-11-23 12:14:50,970 INFO L273 TraceCheckUtils]: 169: Hoare triple {32019#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {32019#false} is VALID [2018-11-23 12:14:50,971 INFO L273 TraceCheckUtils]: 170: Hoare triple {32019#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32019#false} is VALID [2018-11-23 12:14:50,971 INFO L273 TraceCheckUtils]: 171: Hoare triple {32019#false} assume !(~i~1 < 40); {32019#false} is VALID [2018-11-23 12:14:50,971 INFO L273 TraceCheckUtils]: 172: Hoare triple {32019#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {32019#false} is VALID [2018-11-23 12:14:50,971 INFO L273 TraceCheckUtils]: 173: Hoare triple {32019#false} assume true; {32019#false} is VALID [2018-11-23 12:14:50,971 INFO L268 TraceCheckUtils]: 174: Hoare quadruple {32019#false} {32019#false} #86#return; {32019#false} is VALID [2018-11-23 12:14:50,971 INFO L273 TraceCheckUtils]: 175: Hoare triple {32019#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {32019#false} is VALID [2018-11-23 12:14:50,971 INFO L273 TraceCheckUtils]: 176: Hoare triple {32019#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {32019#false} is VALID [2018-11-23 12:14:50,971 INFO L273 TraceCheckUtils]: 177: Hoare triple {32019#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {32019#false} is VALID [2018-11-23 12:14:50,971 INFO L273 TraceCheckUtils]: 178: Hoare triple {32019#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {32019#false} is VALID [2018-11-23 12:14:50,971 INFO L273 TraceCheckUtils]: 179: Hoare triple {32019#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {32019#false} is VALID [2018-11-23 12:14:50,972 INFO L273 TraceCheckUtils]: 180: Hoare triple {32019#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {32019#false} is VALID [2018-11-23 12:14:50,972 INFO L273 TraceCheckUtils]: 181: Hoare triple {32019#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {32019#false} is VALID [2018-11-23 12:14:50,972 INFO L273 TraceCheckUtils]: 182: Hoare triple {32019#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {32019#false} is VALID [2018-11-23 12:14:50,972 INFO L273 TraceCheckUtils]: 183: Hoare triple {32019#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {32019#false} is VALID [2018-11-23 12:14:50,972 INFO L273 TraceCheckUtils]: 184: Hoare triple {32019#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {32019#false} is VALID [2018-11-23 12:14:50,972 INFO L273 TraceCheckUtils]: 185: Hoare triple {32019#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {32019#false} is VALID [2018-11-23 12:14:50,972 INFO L273 TraceCheckUtils]: 186: Hoare triple {32019#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {32019#false} is VALID [2018-11-23 12:14:50,972 INFO L273 TraceCheckUtils]: 187: Hoare triple {32019#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {32019#false} is VALID [2018-11-23 12:14:50,972 INFO L273 TraceCheckUtils]: 188: Hoare triple {32019#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {32019#false} is VALID [2018-11-23 12:14:50,973 INFO L273 TraceCheckUtils]: 189: Hoare triple {32019#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {32019#false} is VALID [2018-11-23 12:14:50,973 INFO L273 TraceCheckUtils]: 190: Hoare triple {32019#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {32019#false} is VALID [2018-11-23 12:14:50,973 INFO L273 TraceCheckUtils]: 191: Hoare triple {32019#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {32019#false} is VALID [2018-11-23 12:14:50,973 INFO L273 TraceCheckUtils]: 192: Hoare triple {32019#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {32019#false} is VALID [2018-11-23 12:14:50,973 INFO L273 TraceCheckUtils]: 193: Hoare triple {32019#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {32019#false} is VALID [2018-11-23 12:14:50,973 INFO L273 TraceCheckUtils]: 194: Hoare triple {32019#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {32019#false} is VALID [2018-11-23 12:14:50,973 INFO L273 TraceCheckUtils]: 195: Hoare triple {32019#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {32019#false} is VALID [2018-11-23 12:14:50,973 INFO L273 TraceCheckUtils]: 196: Hoare triple {32019#false} assume !(~i~2 < 39); {32019#false} is VALID [2018-11-23 12:14:50,973 INFO L273 TraceCheckUtils]: 197: Hoare triple {32019#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {32019#false} is VALID [2018-11-23 12:14:50,974 INFO L256 TraceCheckUtils]: 198: Hoare triple {32019#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {32019#false} is VALID [2018-11-23 12:14:50,974 INFO L273 TraceCheckUtils]: 199: Hoare triple {32019#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {32019#false} is VALID [2018-11-23 12:14:50,974 INFO L273 TraceCheckUtils]: 200: Hoare triple {32019#false} assume !!(~i~1 < 40); {32019#false} is VALID [2018-11-23 12:14:50,974 INFO L273 TraceCheckUtils]: 201: Hoare triple {32019#false} assume !(~i~1 > 20); {32019#false} is VALID [2018-11-23 12:14:50,974 INFO L273 TraceCheckUtils]: 202: Hoare triple {32019#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32019#false} is VALID [2018-11-23 12:14:50,974 INFO L273 TraceCheckUtils]: 203: Hoare triple {32019#false} assume !!(~i~1 < 40); {32019#false} is VALID [2018-11-23 12:14:50,974 INFO L273 TraceCheckUtils]: 204: Hoare triple {32019#false} assume !(~i~1 > 20); {32019#false} is VALID [2018-11-23 12:14:50,974 INFO L273 TraceCheckUtils]: 205: Hoare triple {32019#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32019#false} is VALID [2018-11-23 12:14:50,974 INFO L273 TraceCheckUtils]: 206: Hoare triple {32019#false} assume !!(~i~1 < 40); {32019#false} is VALID [2018-11-23 12:14:50,975 INFO L273 TraceCheckUtils]: 207: Hoare triple {32019#false} assume !(~i~1 > 20); {32019#false} is VALID [2018-11-23 12:14:50,975 INFO L273 TraceCheckUtils]: 208: Hoare triple {32019#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32019#false} is VALID [2018-11-23 12:14:50,975 INFO L273 TraceCheckUtils]: 209: Hoare triple {32019#false} assume !!(~i~1 < 40); {32019#false} is VALID [2018-11-23 12:14:50,975 INFO L273 TraceCheckUtils]: 210: Hoare triple {32019#false} assume !(~i~1 > 20); {32019#false} is VALID [2018-11-23 12:14:50,975 INFO L273 TraceCheckUtils]: 211: Hoare triple {32019#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32019#false} is VALID [2018-11-23 12:14:50,975 INFO L273 TraceCheckUtils]: 212: Hoare triple {32019#false} assume !!(~i~1 < 40); {32019#false} is VALID [2018-11-23 12:14:50,975 INFO L273 TraceCheckUtils]: 213: Hoare triple {32019#false} assume !(~i~1 > 20); {32019#false} is VALID [2018-11-23 12:14:50,975 INFO L273 TraceCheckUtils]: 214: Hoare triple {32019#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32019#false} is VALID [2018-11-23 12:14:50,975 INFO L273 TraceCheckUtils]: 215: Hoare triple {32019#false} assume !!(~i~1 < 40); {32019#false} is VALID [2018-11-23 12:14:50,975 INFO L273 TraceCheckUtils]: 216: Hoare triple {32019#false} assume !(~i~1 > 20); {32019#false} is VALID [2018-11-23 12:14:50,976 INFO L273 TraceCheckUtils]: 217: Hoare triple {32019#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32019#false} is VALID [2018-11-23 12:14:50,976 INFO L273 TraceCheckUtils]: 218: Hoare triple {32019#false} assume !!(~i~1 < 40); {32019#false} is VALID [2018-11-23 12:14:50,976 INFO L273 TraceCheckUtils]: 219: Hoare triple {32019#false} assume !(~i~1 > 20); {32019#false} is VALID [2018-11-23 12:14:50,976 INFO L273 TraceCheckUtils]: 220: Hoare triple {32019#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32019#false} is VALID [2018-11-23 12:14:50,976 INFO L273 TraceCheckUtils]: 221: Hoare triple {32019#false} assume !!(~i~1 < 40); {32019#false} is VALID [2018-11-23 12:14:50,976 INFO L273 TraceCheckUtils]: 222: Hoare triple {32019#false} assume !(~i~1 > 20); {32019#false} is VALID [2018-11-23 12:14:50,976 INFO L273 TraceCheckUtils]: 223: Hoare triple {32019#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32019#false} is VALID [2018-11-23 12:14:50,976 INFO L273 TraceCheckUtils]: 224: Hoare triple {32019#false} assume !!(~i~1 < 40); {32019#false} is VALID [2018-11-23 12:14:50,976 INFO L273 TraceCheckUtils]: 225: Hoare triple {32019#false} assume !(~i~1 > 20); {32019#false} is VALID [2018-11-23 12:14:50,977 INFO L273 TraceCheckUtils]: 226: Hoare triple {32019#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32019#false} is VALID [2018-11-23 12:14:50,977 INFO L273 TraceCheckUtils]: 227: Hoare triple {32019#false} assume !!(~i~1 < 40); {32019#false} is VALID [2018-11-23 12:14:50,977 INFO L273 TraceCheckUtils]: 228: Hoare triple {32019#false} assume !(~i~1 > 20); {32019#false} is VALID [2018-11-23 12:14:50,977 INFO L273 TraceCheckUtils]: 229: Hoare triple {32019#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32019#false} is VALID [2018-11-23 12:14:50,977 INFO L273 TraceCheckUtils]: 230: Hoare triple {32019#false} assume !!(~i~1 < 40); {32019#false} is VALID [2018-11-23 12:14:50,977 INFO L273 TraceCheckUtils]: 231: Hoare triple {32019#false} assume !(~i~1 > 20); {32019#false} is VALID [2018-11-23 12:14:50,977 INFO L273 TraceCheckUtils]: 232: Hoare triple {32019#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32019#false} is VALID [2018-11-23 12:14:50,977 INFO L273 TraceCheckUtils]: 233: Hoare triple {32019#false} assume !!(~i~1 < 40); {32019#false} is VALID [2018-11-23 12:14:50,977 INFO L273 TraceCheckUtils]: 234: Hoare triple {32019#false} assume !(~i~1 > 20); {32019#false} is VALID [2018-11-23 12:14:50,978 INFO L273 TraceCheckUtils]: 235: Hoare triple {32019#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32019#false} is VALID [2018-11-23 12:14:50,978 INFO L273 TraceCheckUtils]: 236: Hoare triple {32019#false} assume !!(~i~1 < 40); {32019#false} is VALID [2018-11-23 12:14:50,978 INFO L273 TraceCheckUtils]: 237: Hoare triple {32019#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {32019#false} is VALID [2018-11-23 12:14:50,978 INFO L273 TraceCheckUtils]: 238: Hoare triple {32019#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32019#false} is VALID [2018-11-23 12:14:50,978 INFO L273 TraceCheckUtils]: 239: Hoare triple {32019#false} assume !!(~i~1 < 40); {32019#false} is VALID [2018-11-23 12:14:50,978 INFO L273 TraceCheckUtils]: 240: Hoare triple {32019#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {32019#false} is VALID [2018-11-23 12:14:50,978 INFO L273 TraceCheckUtils]: 241: Hoare triple {32019#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32019#false} is VALID [2018-11-23 12:14:50,978 INFO L273 TraceCheckUtils]: 242: Hoare triple {32019#false} assume !!(~i~1 < 40); {32019#false} is VALID [2018-11-23 12:14:50,978 INFO L273 TraceCheckUtils]: 243: Hoare triple {32019#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {32019#false} is VALID [2018-11-23 12:14:50,978 INFO L273 TraceCheckUtils]: 244: Hoare triple {32019#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32019#false} is VALID [2018-11-23 12:14:50,979 INFO L273 TraceCheckUtils]: 245: Hoare triple {32019#false} assume !!(~i~1 < 40); {32019#false} is VALID [2018-11-23 12:14:50,979 INFO L273 TraceCheckUtils]: 246: Hoare triple {32019#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {32019#false} is VALID [2018-11-23 12:14:50,979 INFO L273 TraceCheckUtils]: 247: Hoare triple {32019#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32019#false} is VALID [2018-11-23 12:14:50,979 INFO L273 TraceCheckUtils]: 248: Hoare triple {32019#false} assume !!(~i~1 < 40); {32019#false} is VALID [2018-11-23 12:14:50,979 INFO L273 TraceCheckUtils]: 249: Hoare triple {32019#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {32019#false} is VALID [2018-11-23 12:14:50,979 INFO L273 TraceCheckUtils]: 250: Hoare triple {32019#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32019#false} is VALID [2018-11-23 12:14:50,979 INFO L273 TraceCheckUtils]: 251: Hoare triple {32019#false} assume !!(~i~1 < 40); {32019#false} is VALID [2018-11-23 12:14:50,979 INFO L273 TraceCheckUtils]: 252: Hoare triple {32019#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {32019#false} is VALID [2018-11-23 12:14:50,979 INFO L273 TraceCheckUtils]: 253: Hoare triple {32019#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32019#false} is VALID [2018-11-23 12:14:50,980 INFO L273 TraceCheckUtils]: 254: Hoare triple {32019#false} assume !!(~i~1 < 40); {32019#false} is VALID [2018-11-23 12:14:50,980 INFO L273 TraceCheckUtils]: 255: Hoare triple {32019#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {32019#false} is VALID [2018-11-23 12:14:50,980 INFO L273 TraceCheckUtils]: 256: Hoare triple {32019#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32019#false} is VALID [2018-11-23 12:14:50,980 INFO L273 TraceCheckUtils]: 257: Hoare triple {32019#false} assume !!(~i~1 < 40); {32019#false} is VALID [2018-11-23 12:14:50,980 INFO L273 TraceCheckUtils]: 258: Hoare triple {32019#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {32019#false} is VALID [2018-11-23 12:14:50,980 INFO L273 TraceCheckUtils]: 259: Hoare triple {32019#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {32019#false} is VALID [2018-11-23 12:14:50,980 INFO L273 TraceCheckUtils]: 260: Hoare triple {32019#false} assume !(~i~1 < 40); {32019#false} is VALID [2018-11-23 12:14:50,980 INFO L273 TraceCheckUtils]: 261: Hoare triple {32019#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {32019#false} is VALID [2018-11-23 12:14:50,980 INFO L273 TraceCheckUtils]: 262: Hoare triple {32019#false} assume true; {32019#false} is VALID [2018-11-23 12:14:50,980 INFO L268 TraceCheckUtils]: 263: Hoare quadruple {32019#false} {32019#false} #88#return; {32019#false} is VALID [2018-11-23 12:14:50,981 INFO L273 TraceCheckUtils]: 264: Hoare triple {32019#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {32019#false} is VALID [2018-11-23 12:14:50,981 INFO L273 TraceCheckUtils]: 265: Hoare triple {32019#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {32019#false} is VALID [2018-11-23 12:14:50,981 INFO L273 TraceCheckUtils]: 266: Hoare triple {32019#false} assume !false; {32019#false} is VALID [2018-11-23 12:14:51,008 INFO L134 CoverageAnalysis]: Checked inductivity of 5830 backedges. 2787 proven. 100 refuted. 0 times theorem prover too weak. 2943 trivial. 0 not checked. [2018-11-23 12:14:51,027 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:14:51,027 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [12] total 12 [2018-11-23 12:14:51,028 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 267 [2018-11-23 12:14:51,028 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:14:51,028 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states. [2018-11-23 12:14:51,095 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 68 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:14:51,095 INFO L459 AbstractCegarLoop]: Interpolant automaton has 12 states [2018-11-23 12:14:51,095 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2018-11-23 12:14:51,095 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=66, Invalid=66, Unknown=0, NotChecked=0, Total=132 [2018-11-23 12:14:51,096 INFO L87 Difference]: Start difference. First operand 138 states and 151 transitions. Second operand 12 states. [2018-11-23 12:14:51,648 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:51,648 INFO L93 Difference]: Finished difference Result 238 states and 268 transitions. [2018-11-23 12:14:51,648 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2018-11-23 12:14:51,648 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 267 [2018-11-23 12:14:51,649 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:14:51,649 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2018-11-23 12:14:51,650 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 103 transitions. [2018-11-23 12:14:51,650 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2018-11-23 12:14:51,651 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 103 transitions. [2018-11-23 12:14:51,651 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states and 103 transitions. [2018-11-23 12:14:51,751 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-23 12:14:51,753 INFO L225 Difference]: With dead ends: 238 [2018-11-23 12:14:51,753 INFO L226 Difference]: Without dead ends: 143 [2018-11-23 12:14:51,754 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 266 GetRequests, 256 SyntacticMatches, 0 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=66, Invalid=66, Unknown=0, NotChecked=0, Total=132 [2018-11-23 12:14:51,754 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 143 states. [2018-11-23 12:14:51,856 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 143 to 141. [2018-11-23 12:14:51,856 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:14:51,856 INFO L82 GeneralOperation]: Start isEquivalent. First operand 143 states. Second operand 141 states. [2018-11-23 12:14:51,857 INFO L74 IsIncluded]: Start isIncluded. First operand 143 states. Second operand 141 states. [2018-11-23 12:14:51,857 INFO L87 Difference]: Start difference. First operand 143 states. Second operand 141 states. [2018-11-23 12:14:51,860 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:51,860 INFO L93 Difference]: Finished difference Result 143 states and 158 transitions. [2018-11-23 12:14:51,860 INFO L276 IsEmpty]: Start isEmpty. Operand 143 states and 158 transitions. [2018-11-23 12:14:51,861 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:14:51,861 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:14:51,861 INFO L74 IsIncluded]: Start isIncluded. First operand 141 states. Second operand 143 states. [2018-11-23 12:14:51,861 INFO L87 Difference]: Start difference. First operand 141 states. Second operand 143 states. [2018-11-23 12:14:51,864 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:51,864 INFO L93 Difference]: Finished difference Result 143 states and 158 transitions. [2018-11-23 12:14:51,864 INFO L276 IsEmpty]: Start isEmpty. Operand 143 states and 158 transitions. [2018-11-23 12:14:51,864 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:14:51,864 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:14:51,864 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:14:51,865 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:14:51,865 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 141 states. [2018-11-23 12:14:51,867 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 141 states to 141 states and 155 transitions. [2018-11-23 12:14:51,867 INFO L78 Accepts]: Start accepts. Automaton has 141 states and 155 transitions. Word has length 267 [2018-11-23 12:14:51,867 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:14:51,868 INFO L480 AbstractCegarLoop]: Abstraction has 141 states and 155 transitions. [2018-11-23 12:14:51,868 INFO L481 AbstractCegarLoop]: Interpolant automaton has 12 states. [2018-11-23 12:14:51,868 INFO L276 IsEmpty]: Start isEmpty. Operand 141 states and 155 transitions. [2018-11-23 12:14:51,869 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 277 [2018-11-23 12:14:51,869 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:14:51,869 INFO L402 BasicCegarLoop]: trace histogram [63, 63, 36, 27, 15, 15, 10, 10, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:14:51,870 INFO L423 AbstractCegarLoop]: === Iteration 41 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:14:51,870 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:14:51,870 INFO L82 PathProgramCache]: Analyzing trace with hash -836559184, now seen corresponding path program 36 times [2018-11-23 12:14:51,870 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:14:51,870 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:14:51,871 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:14:51,871 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:14:51,871 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:14:51,883 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:14:51,884 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:14:51,884 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 42 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 42 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:14:51,898 INFO L103 rtionOrderModulation]: Keeping assertion order MIX_INSIDE_OUTSIDE [2018-11-23 12:14:53,130 INFO L249 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 22 check-sat command(s) [2018-11-23 12:14:53,130 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:14:53,174 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:14:53,176 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:14:53,951 INFO L256 TraceCheckUtils]: 0: Hoare triple {33648#true} call ULTIMATE.init(); {33648#true} is VALID [2018-11-23 12:14:53,951 INFO L273 TraceCheckUtils]: 1: Hoare triple {33648#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {33648#true} is VALID [2018-11-23 12:14:53,951 INFO L273 TraceCheckUtils]: 2: Hoare triple {33648#true} assume true; {33648#true} is VALID [2018-11-23 12:14:53,951 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {33648#true} {33648#true} #78#return; {33648#true} is VALID [2018-11-23 12:14:53,952 INFO L256 TraceCheckUtils]: 4: Hoare triple {33648#true} call #t~ret12 := main(); {33648#true} is VALID [2018-11-23 12:14:53,952 INFO L273 TraceCheckUtils]: 5: Hoare triple {33648#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {33648#true} is VALID [2018-11-23 12:14:53,952 INFO L256 TraceCheckUtils]: 6: Hoare triple {33648#true} call init_nondet(~#x~0.base, ~#x~0.offset); {33648#true} is VALID [2018-11-23 12:14:53,952 INFO L273 TraceCheckUtils]: 7: Hoare triple {33648#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {33648#true} is VALID [2018-11-23 12:14:53,952 INFO L273 TraceCheckUtils]: 8: Hoare triple {33648#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {33648#true} is VALID [2018-11-23 12:14:53,953 INFO L273 TraceCheckUtils]: 9: Hoare triple {33648#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {33648#true} is VALID [2018-11-23 12:14:53,953 INFO L273 TraceCheckUtils]: 10: Hoare triple {33648#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {33648#true} is VALID [2018-11-23 12:14:53,953 INFO L273 TraceCheckUtils]: 11: Hoare triple {33648#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {33648#true} is VALID [2018-11-23 12:14:53,953 INFO L273 TraceCheckUtils]: 12: Hoare triple {33648#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {33648#true} is VALID [2018-11-23 12:14:53,953 INFO L273 TraceCheckUtils]: 13: Hoare triple {33648#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {33648#true} is VALID [2018-11-23 12:14:53,953 INFO L273 TraceCheckUtils]: 14: Hoare triple {33648#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {33648#true} is VALID [2018-11-23 12:14:53,953 INFO L273 TraceCheckUtils]: 15: Hoare triple {33648#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {33648#true} is VALID [2018-11-23 12:14:53,954 INFO L273 TraceCheckUtils]: 16: Hoare triple {33648#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {33648#true} is VALID [2018-11-23 12:14:53,954 INFO L273 TraceCheckUtils]: 17: Hoare triple {33648#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {33648#true} is VALID [2018-11-23 12:14:53,954 INFO L273 TraceCheckUtils]: 18: Hoare triple {33648#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {33648#true} is VALID [2018-11-23 12:14:53,954 INFO L273 TraceCheckUtils]: 19: Hoare triple {33648#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {33648#true} is VALID [2018-11-23 12:14:53,954 INFO L273 TraceCheckUtils]: 20: Hoare triple {33648#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {33648#true} is VALID [2018-11-23 12:14:53,954 INFO L273 TraceCheckUtils]: 21: Hoare triple {33648#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {33648#true} is VALID [2018-11-23 12:14:53,955 INFO L273 TraceCheckUtils]: 22: Hoare triple {33648#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {33648#true} is VALID [2018-11-23 12:14:53,955 INFO L273 TraceCheckUtils]: 23: Hoare triple {33648#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {33648#true} is VALID [2018-11-23 12:14:53,955 INFO L273 TraceCheckUtils]: 24: Hoare triple {33648#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {33648#true} is VALID [2018-11-23 12:14:53,955 INFO L273 TraceCheckUtils]: 25: Hoare triple {33648#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {33648#true} is VALID [2018-11-23 12:14:53,955 INFO L273 TraceCheckUtils]: 26: Hoare triple {33648#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {33648#true} is VALID [2018-11-23 12:14:53,955 INFO L273 TraceCheckUtils]: 27: Hoare triple {33648#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {33648#true} is VALID [2018-11-23 12:14:53,956 INFO L273 TraceCheckUtils]: 28: Hoare triple {33648#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {33648#true} is VALID [2018-11-23 12:14:53,956 INFO L273 TraceCheckUtils]: 29: Hoare triple {33648#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {33648#true} is VALID [2018-11-23 12:14:53,956 INFO L273 TraceCheckUtils]: 30: Hoare triple {33648#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {33648#true} is VALID [2018-11-23 12:14:53,956 INFO L273 TraceCheckUtils]: 31: Hoare triple {33648#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {33648#true} is VALID [2018-11-23 12:14:53,956 INFO L273 TraceCheckUtils]: 32: Hoare triple {33648#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {33648#true} is VALID [2018-11-23 12:14:53,956 INFO L273 TraceCheckUtils]: 33: Hoare triple {33648#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {33648#true} is VALID [2018-11-23 12:14:53,956 INFO L273 TraceCheckUtils]: 34: Hoare triple {33648#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {33648#true} is VALID [2018-11-23 12:14:53,956 INFO L273 TraceCheckUtils]: 35: Hoare triple {33648#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {33648#true} is VALID [2018-11-23 12:14:53,957 INFO L273 TraceCheckUtils]: 36: Hoare triple {33648#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {33648#true} is VALID [2018-11-23 12:14:53,957 INFO L273 TraceCheckUtils]: 37: Hoare triple {33648#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {33648#true} is VALID [2018-11-23 12:14:53,957 INFO L273 TraceCheckUtils]: 38: Hoare triple {33648#true} assume !(~i~0 < 40); {33648#true} is VALID [2018-11-23 12:14:53,957 INFO L273 TraceCheckUtils]: 39: Hoare triple {33648#true} assume true; {33648#true} is VALID [2018-11-23 12:14:53,957 INFO L268 TraceCheckUtils]: 40: Hoare quadruple {33648#true} {33648#true} #82#return; {33648#true} is VALID [2018-11-23 12:14:53,957 INFO L273 TraceCheckUtils]: 41: Hoare triple {33648#true} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {33648#true} is VALID [2018-11-23 12:14:53,957 INFO L256 TraceCheckUtils]: 42: Hoare triple {33648#true} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {33648#true} is VALID [2018-11-23 12:14:53,957 INFO L273 TraceCheckUtils]: 43: Hoare triple {33648#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {33648#true} is VALID [2018-11-23 12:14:53,957 INFO L273 TraceCheckUtils]: 44: Hoare triple {33648#true} assume !!(~i~1 < 40); {33648#true} is VALID [2018-11-23 12:14:53,958 INFO L273 TraceCheckUtils]: 45: Hoare triple {33648#true} assume !(~i~1 > 20); {33648#true} is VALID [2018-11-23 12:14:53,958 INFO L273 TraceCheckUtils]: 46: Hoare triple {33648#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33648#true} is VALID [2018-11-23 12:14:53,958 INFO L273 TraceCheckUtils]: 47: Hoare triple {33648#true} assume !!(~i~1 < 40); {33648#true} is VALID [2018-11-23 12:14:53,958 INFO L273 TraceCheckUtils]: 48: Hoare triple {33648#true} assume !(~i~1 > 20); {33648#true} is VALID [2018-11-23 12:14:53,958 INFO L273 TraceCheckUtils]: 49: Hoare triple {33648#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33648#true} is VALID [2018-11-23 12:14:53,958 INFO L273 TraceCheckUtils]: 50: Hoare triple {33648#true} assume !!(~i~1 < 40); {33648#true} is VALID [2018-11-23 12:14:53,958 INFO L273 TraceCheckUtils]: 51: Hoare triple {33648#true} assume !(~i~1 > 20); {33648#true} is VALID [2018-11-23 12:14:53,959 INFO L273 TraceCheckUtils]: 52: Hoare triple {33648#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33648#true} is VALID [2018-11-23 12:14:53,959 INFO L273 TraceCheckUtils]: 53: Hoare triple {33648#true} assume !!(~i~1 < 40); {33648#true} is VALID [2018-11-23 12:14:53,959 INFO L273 TraceCheckUtils]: 54: Hoare triple {33648#true} assume !(~i~1 > 20); {33648#true} is VALID [2018-11-23 12:14:53,959 INFO L273 TraceCheckUtils]: 55: Hoare triple {33648#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33648#true} is VALID [2018-11-23 12:14:53,959 INFO L273 TraceCheckUtils]: 56: Hoare triple {33648#true} assume !!(~i~1 < 40); {33648#true} is VALID [2018-11-23 12:14:53,959 INFO L273 TraceCheckUtils]: 57: Hoare triple {33648#true} assume !(~i~1 > 20); {33648#true} is VALID [2018-11-23 12:14:53,959 INFO L273 TraceCheckUtils]: 58: Hoare triple {33648#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33648#true} is VALID [2018-11-23 12:14:53,959 INFO L273 TraceCheckUtils]: 59: Hoare triple {33648#true} assume !!(~i~1 < 40); {33648#true} is VALID [2018-11-23 12:14:53,959 INFO L273 TraceCheckUtils]: 60: Hoare triple {33648#true} assume !(~i~1 > 20); {33648#true} is VALID [2018-11-23 12:14:53,959 INFO L273 TraceCheckUtils]: 61: Hoare triple {33648#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33648#true} is VALID [2018-11-23 12:14:53,960 INFO L273 TraceCheckUtils]: 62: Hoare triple {33648#true} assume !!(~i~1 < 40); {33648#true} is VALID [2018-11-23 12:14:53,960 INFO L273 TraceCheckUtils]: 63: Hoare triple {33648#true} assume !(~i~1 > 20); {33648#true} is VALID [2018-11-23 12:14:53,960 INFO L273 TraceCheckUtils]: 64: Hoare triple {33648#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33648#true} is VALID [2018-11-23 12:14:53,960 INFO L273 TraceCheckUtils]: 65: Hoare triple {33648#true} assume !!(~i~1 < 40); {33648#true} is VALID [2018-11-23 12:14:53,960 INFO L273 TraceCheckUtils]: 66: Hoare triple {33648#true} assume !(~i~1 > 20); {33648#true} is VALID [2018-11-23 12:14:53,960 INFO L273 TraceCheckUtils]: 67: Hoare triple {33648#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33648#true} is VALID [2018-11-23 12:14:53,960 INFO L273 TraceCheckUtils]: 68: Hoare triple {33648#true} assume !!(~i~1 < 40); {33648#true} is VALID [2018-11-23 12:14:53,960 INFO L273 TraceCheckUtils]: 69: Hoare triple {33648#true} assume !(~i~1 > 20); {33648#true} is VALID [2018-11-23 12:14:53,960 INFO L273 TraceCheckUtils]: 70: Hoare triple {33648#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33648#true} is VALID [2018-11-23 12:14:53,961 INFO L273 TraceCheckUtils]: 71: Hoare triple {33648#true} assume !!(~i~1 < 40); {33648#true} is VALID [2018-11-23 12:14:53,961 INFO L273 TraceCheckUtils]: 72: Hoare triple {33648#true} assume !(~i~1 > 20); {33648#true} is VALID [2018-11-23 12:14:53,961 INFO L273 TraceCheckUtils]: 73: Hoare triple {33648#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33648#true} is VALID [2018-11-23 12:14:53,961 INFO L273 TraceCheckUtils]: 74: Hoare triple {33648#true} assume !!(~i~1 < 40); {33648#true} is VALID [2018-11-23 12:14:53,961 INFO L273 TraceCheckUtils]: 75: Hoare triple {33648#true} assume !(~i~1 > 20); {33648#true} is VALID [2018-11-23 12:14:53,961 INFO L273 TraceCheckUtils]: 76: Hoare triple {33648#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33648#true} is VALID [2018-11-23 12:14:53,961 INFO L273 TraceCheckUtils]: 77: Hoare triple {33648#true} assume !!(~i~1 < 40); {33648#true} is VALID [2018-11-23 12:14:53,962 INFO L273 TraceCheckUtils]: 78: Hoare triple {33648#true} assume !(~i~1 > 20); {33887#(<= rangesum_~i~1 20)} is VALID [2018-11-23 12:14:53,963 INFO L273 TraceCheckUtils]: 79: Hoare triple {33887#(<= rangesum_~i~1 20)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33891#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:14:53,963 INFO L273 TraceCheckUtils]: 80: Hoare triple {33891#(<= rangesum_~i~1 21)} assume !!(~i~1 < 40); {33891#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:14:53,965 INFO L273 TraceCheckUtils]: 81: Hoare triple {33891#(<= rangesum_~i~1 21)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {33891#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:14:53,965 INFO L273 TraceCheckUtils]: 82: Hoare triple {33891#(<= rangesum_~i~1 21)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33901#(<= rangesum_~i~1 22)} is VALID [2018-11-23 12:14:53,967 INFO L273 TraceCheckUtils]: 83: Hoare triple {33901#(<= rangesum_~i~1 22)} assume !!(~i~1 < 40); {33901#(<= rangesum_~i~1 22)} is VALID [2018-11-23 12:14:53,967 INFO L273 TraceCheckUtils]: 84: Hoare triple {33901#(<= rangesum_~i~1 22)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {33901#(<= rangesum_~i~1 22)} is VALID [2018-11-23 12:14:53,969 INFO L273 TraceCheckUtils]: 85: Hoare triple {33901#(<= rangesum_~i~1 22)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33911#(<= rangesum_~i~1 23)} is VALID [2018-11-23 12:14:53,969 INFO L273 TraceCheckUtils]: 86: Hoare triple {33911#(<= rangesum_~i~1 23)} assume !!(~i~1 < 40); {33911#(<= rangesum_~i~1 23)} is VALID [2018-11-23 12:14:53,971 INFO L273 TraceCheckUtils]: 87: Hoare triple {33911#(<= rangesum_~i~1 23)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {33911#(<= rangesum_~i~1 23)} is VALID [2018-11-23 12:14:53,971 INFO L273 TraceCheckUtils]: 88: Hoare triple {33911#(<= rangesum_~i~1 23)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33921#(<= rangesum_~i~1 24)} is VALID [2018-11-23 12:14:53,974 INFO L273 TraceCheckUtils]: 89: Hoare triple {33921#(<= rangesum_~i~1 24)} assume !!(~i~1 < 40); {33921#(<= rangesum_~i~1 24)} is VALID [2018-11-23 12:14:53,974 INFO L273 TraceCheckUtils]: 90: Hoare triple {33921#(<= rangesum_~i~1 24)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {33921#(<= rangesum_~i~1 24)} is VALID [2018-11-23 12:14:53,976 INFO L273 TraceCheckUtils]: 91: Hoare triple {33921#(<= rangesum_~i~1 24)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33931#(<= rangesum_~i~1 25)} is VALID [2018-11-23 12:14:53,976 INFO L273 TraceCheckUtils]: 92: Hoare triple {33931#(<= rangesum_~i~1 25)} assume !!(~i~1 < 40); {33931#(<= rangesum_~i~1 25)} is VALID [2018-11-23 12:14:53,976 INFO L273 TraceCheckUtils]: 93: Hoare triple {33931#(<= rangesum_~i~1 25)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {33931#(<= rangesum_~i~1 25)} is VALID [2018-11-23 12:14:53,977 INFO L273 TraceCheckUtils]: 94: Hoare triple {33931#(<= rangesum_~i~1 25)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33941#(<= rangesum_~i~1 26)} is VALID [2018-11-23 12:14:53,977 INFO L273 TraceCheckUtils]: 95: Hoare triple {33941#(<= rangesum_~i~1 26)} assume !!(~i~1 < 40); {33941#(<= rangesum_~i~1 26)} is VALID [2018-11-23 12:14:53,977 INFO L273 TraceCheckUtils]: 96: Hoare triple {33941#(<= rangesum_~i~1 26)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {33941#(<= rangesum_~i~1 26)} is VALID [2018-11-23 12:14:53,978 INFO L273 TraceCheckUtils]: 97: Hoare triple {33941#(<= rangesum_~i~1 26)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33951#(<= rangesum_~i~1 27)} is VALID [2018-11-23 12:14:53,978 INFO L273 TraceCheckUtils]: 98: Hoare triple {33951#(<= rangesum_~i~1 27)} assume !!(~i~1 < 40); {33951#(<= rangesum_~i~1 27)} is VALID [2018-11-23 12:14:53,978 INFO L273 TraceCheckUtils]: 99: Hoare triple {33951#(<= rangesum_~i~1 27)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {33951#(<= rangesum_~i~1 27)} is VALID [2018-11-23 12:14:53,979 INFO L273 TraceCheckUtils]: 100: Hoare triple {33951#(<= rangesum_~i~1 27)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33961#(<= rangesum_~i~1 28)} is VALID [2018-11-23 12:14:53,981 INFO L273 TraceCheckUtils]: 101: Hoare triple {33961#(<= rangesum_~i~1 28)} assume !!(~i~1 < 40); {33961#(<= rangesum_~i~1 28)} is VALID [2018-11-23 12:14:53,981 INFO L273 TraceCheckUtils]: 102: Hoare triple {33961#(<= rangesum_~i~1 28)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {33961#(<= rangesum_~i~1 28)} is VALID [2018-11-23 12:14:53,982 INFO L273 TraceCheckUtils]: 103: Hoare triple {33961#(<= rangesum_~i~1 28)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33971#(<= rangesum_~i~1 29)} is VALID [2018-11-23 12:14:53,982 INFO L273 TraceCheckUtils]: 104: Hoare triple {33971#(<= rangesum_~i~1 29)} assume !!(~i~1 < 40); {33971#(<= rangesum_~i~1 29)} is VALID [2018-11-23 12:14:53,982 INFO L273 TraceCheckUtils]: 105: Hoare triple {33971#(<= rangesum_~i~1 29)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {33971#(<= rangesum_~i~1 29)} is VALID [2018-11-23 12:14:53,983 INFO L273 TraceCheckUtils]: 106: Hoare triple {33971#(<= rangesum_~i~1 29)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33981#(<= rangesum_~i~1 30)} is VALID [2018-11-23 12:14:53,983 INFO L273 TraceCheckUtils]: 107: Hoare triple {33981#(<= rangesum_~i~1 30)} assume !(~i~1 < 40); {33649#false} is VALID [2018-11-23 12:14:53,983 INFO L273 TraceCheckUtils]: 108: Hoare triple {33649#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {33649#false} is VALID [2018-11-23 12:14:53,983 INFO L273 TraceCheckUtils]: 109: Hoare triple {33649#false} assume true; {33649#false} is VALID [2018-11-23 12:14:53,984 INFO L268 TraceCheckUtils]: 110: Hoare quadruple {33649#false} {33648#true} #84#return; {33649#false} is VALID [2018-11-23 12:14:53,984 INFO L273 TraceCheckUtils]: 111: Hoare triple {33649#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {33649#false} is VALID [2018-11-23 12:14:53,984 INFO L256 TraceCheckUtils]: 112: Hoare triple {33649#false} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {33649#false} is VALID [2018-11-23 12:14:53,984 INFO L273 TraceCheckUtils]: 113: Hoare triple {33649#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {33649#false} is VALID [2018-11-23 12:14:53,984 INFO L273 TraceCheckUtils]: 114: Hoare triple {33649#false} assume !!(~i~1 < 40); {33649#false} is VALID [2018-11-23 12:14:53,984 INFO L273 TraceCheckUtils]: 115: Hoare triple {33649#false} assume !(~i~1 > 20); {33649#false} is VALID [2018-11-23 12:14:53,984 INFO L273 TraceCheckUtils]: 116: Hoare triple {33649#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33649#false} is VALID [2018-11-23 12:14:53,984 INFO L273 TraceCheckUtils]: 117: Hoare triple {33649#false} assume !!(~i~1 < 40); {33649#false} is VALID [2018-11-23 12:14:53,985 INFO L273 TraceCheckUtils]: 118: Hoare triple {33649#false} assume !(~i~1 > 20); {33649#false} is VALID [2018-11-23 12:14:53,985 INFO L273 TraceCheckUtils]: 119: Hoare triple {33649#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33649#false} is VALID [2018-11-23 12:14:53,985 INFO L273 TraceCheckUtils]: 120: Hoare triple {33649#false} assume !!(~i~1 < 40); {33649#false} is VALID [2018-11-23 12:14:53,985 INFO L273 TraceCheckUtils]: 121: Hoare triple {33649#false} assume !(~i~1 > 20); {33649#false} is VALID [2018-11-23 12:14:53,985 INFO L273 TraceCheckUtils]: 122: Hoare triple {33649#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33649#false} is VALID [2018-11-23 12:14:53,986 INFO L273 TraceCheckUtils]: 123: Hoare triple {33649#false} assume !!(~i~1 < 40); {33649#false} is VALID [2018-11-23 12:14:53,986 INFO L273 TraceCheckUtils]: 124: Hoare triple {33649#false} assume !(~i~1 > 20); {33649#false} is VALID [2018-11-23 12:14:53,986 INFO L273 TraceCheckUtils]: 125: Hoare triple {33649#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33649#false} is VALID [2018-11-23 12:14:53,986 INFO L273 TraceCheckUtils]: 126: Hoare triple {33649#false} assume !!(~i~1 < 40); {33649#false} is VALID [2018-11-23 12:14:53,986 INFO L273 TraceCheckUtils]: 127: Hoare triple {33649#false} assume !(~i~1 > 20); {33649#false} is VALID [2018-11-23 12:14:53,986 INFO L273 TraceCheckUtils]: 128: Hoare triple {33649#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33649#false} is VALID [2018-11-23 12:14:53,986 INFO L273 TraceCheckUtils]: 129: Hoare triple {33649#false} assume !!(~i~1 < 40); {33649#false} is VALID [2018-11-23 12:14:53,986 INFO L273 TraceCheckUtils]: 130: Hoare triple {33649#false} assume !(~i~1 > 20); {33649#false} is VALID [2018-11-23 12:14:53,987 INFO L273 TraceCheckUtils]: 131: Hoare triple {33649#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33649#false} is VALID [2018-11-23 12:14:53,987 INFO L273 TraceCheckUtils]: 132: Hoare triple {33649#false} assume !!(~i~1 < 40); {33649#false} is VALID [2018-11-23 12:14:53,987 INFO L273 TraceCheckUtils]: 133: Hoare triple {33649#false} assume !(~i~1 > 20); {33649#false} is VALID [2018-11-23 12:14:53,987 INFO L273 TraceCheckUtils]: 134: Hoare triple {33649#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33649#false} is VALID [2018-11-23 12:14:53,987 INFO L273 TraceCheckUtils]: 135: Hoare triple {33649#false} assume !!(~i~1 < 40); {33649#false} is VALID [2018-11-23 12:14:53,987 INFO L273 TraceCheckUtils]: 136: Hoare triple {33649#false} assume !(~i~1 > 20); {33649#false} is VALID [2018-11-23 12:14:53,987 INFO L273 TraceCheckUtils]: 137: Hoare triple {33649#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33649#false} is VALID [2018-11-23 12:14:53,987 INFO L273 TraceCheckUtils]: 138: Hoare triple {33649#false} assume !!(~i~1 < 40); {33649#false} is VALID [2018-11-23 12:14:53,987 INFO L273 TraceCheckUtils]: 139: Hoare triple {33649#false} assume !(~i~1 > 20); {33649#false} is VALID [2018-11-23 12:14:53,987 INFO L273 TraceCheckUtils]: 140: Hoare triple {33649#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33649#false} is VALID [2018-11-23 12:14:53,988 INFO L273 TraceCheckUtils]: 141: Hoare triple {33649#false} assume !!(~i~1 < 40); {33649#false} is VALID [2018-11-23 12:14:53,988 INFO L273 TraceCheckUtils]: 142: Hoare triple {33649#false} assume !(~i~1 > 20); {33649#false} is VALID [2018-11-23 12:14:53,988 INFO L273 TraceCheckUtils]: 143: Hoare triple {33649#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33649#false} is VALID [2018-11-23 12:14:53,988 INFO L273 TraceCheckUtils]: 144: Hoare triple {33649#false} assume !!(~i~1 < 40); {33649#false} is VALID [2018-11-23 12:14:53,988 INFO L273 TraceCheckUtils]: 145: Hoare triple {33649#false} assume !(~i~1 > 20); {33649#false} is VALID [2018-11-23 12:14:53,988 INFO L273 TraceCheckUtils]: 146: Hoare triple {33649#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33649#false} is VALID [2018-11-23 12:14:53,988 INFO L273 TraceCheckUtils]: 147: Hoare triple {33649#false} assume !!(~i~1 < 40); {33649#false} is VALID [2018-11-23 12:14:53,988 INFO L273 TraceCheckUtils]: 148: Hoare triple {33649#false} assume !(~i~1 > 20); {33649#false} is VALID [2018-11-23 12:14:53,988 INFO L273 TraceCheckUtils]: 149: Hoare triple {33649#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33649#false} is VALID [2018-11-23 12:14:53,989 INFO L273 TraceCheckUtils]: 150: Hoare triple {33649#false} assume !!(~i~1 < 40); {33649#false} is VALID [2018-11-23 12:14:53,989 INFO L273 TraceCheckUtils]: 151: Hoare triple {33649#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {33649#false} is VALID [2018-11-23 12:14:53,989 INFO L273 TraceCheckUtils]: 152: Hoare triple {33649#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33649#false} is VALID [2018-11-23 12:14:53,989 INFO L273 TraceCheckUtils]: 153: Hoare triple {33649#false} assume !!(~i~1 < 40); {33649#false} is VALID [2018-11-23 12:14:53,989 INFO L273 TraceCheckUtils]: 154: Hoare triple {33649#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {33649#false} is VALID [2018-11-23 12:14:53,989 INFO L273 TraceCheckUtils]: 155: Hoare triple {33649#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33649#false} is VALID [2018-11-23 12:14:53,989 INFO L273 TraceCheckUtils]: 156: Hoare triple {33649#false} assume !!(~i~1 < 40); {33649#false} is VALID [2018-11-23 12:14:53,989 INFO L273 TraceCheckUtils]: 157: Hoare triple {33649#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {33649#false} is VALID [2018-11-23 12:14:53,989 INFO L273 TraceCheckUtils]: 158: Hoare triple {33649#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33649#false} is VALID [2018-11-23 12:14:53,989 INFO L273 TraceCheckUtils]: 159: Hoare triple {33649#false} assume !!(~i~1 < 40); {33649#false} is VALID [2018-11-23 12:14:53,990 INFO L273 TraceCheckUtils]: 160: Hoare triple {33649#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {33649#false} is VALID [2018-11-23 12:14:53,990 INFO L273 TraceCheckUtils]: 161: Hoare triple {33649#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33649#false} is VALID [2018-11-23 12:14:53,990 INFO L273 TraceCheckUtils]: 162: Hoare triple {33649#false} assume !!(~i~1 < 40); {33649#false} is VALID [2018-11-23 12:14:53,990 INFO L273 TraceCheckUtils]: 163: Hoare triple {33649#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {33649#false} is VALID [2018-11-23 12:14:53,990 INFO L273 TraceCheckUtils]: 164: Hoare triple {33649#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33649#false} is VALID [2018-11-23 12:14:53,990 INFO L273 TraceCheckUtils]: 165: Hoare triple {33649#false} assume !!(~i~1 < 40); {33649#false} is VALID [2018-11-23 12:14:53,990 INFO L273 TraceCheckUtils]: 166: Hoare triple {33649#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {33649#false} is VALID [2018-11-23 12:14:53,990 INFO L273 TraceCheckUtils]: 167: Hoare triple {33649#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33649#false} is VALID [2018-11-23 12:14:53,990 INFO L273 TraceCheckUtils]: 168: Hoare triple {33649#false} assume !!(~i~1 < 40); {33649#false} is VALID [2018-11-23 12:14:53,991 INFO L273 TraceCheckUtils]: 169: Hoare triple {33649#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {33649#false} is VALID [2018-11-23 12:14:53,991 INFO L273 TraceCheckUtils]: 170: Hoare triple {33649#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33649#false} is VALID [2018-11-23 12:14:53,991 INFO L273 TraceCheckUtils]: 171: Hoare triple {33649#false} assume !!(~i~1 < 40); {33649#false} is VALID [2018-11-23 12:14:53,991 INFO L273 TraceCheckUtils]: 172: Hoare triple {33649#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {33649#false} is VALID [2018-11-23 12:14:53,991 INFO L273 TraceCheckUtils]: 173: Hoare triple {33649#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33649#false} is VALID [2018-11-23 12:14:53,991 INFO L273 TraceCheckUtils]: 174: Hoare triple {33649#false} assume !!(~i~1 < 40); {33649#false} is VALID [2018-11-23 12:14:53,991 INFO L273 TraceCheckUtils]: 175: Hoare triple {33649#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {33649#false} is VALID [2018-11-23 12:14:53,991 INFO L273 TraceCheckUtils]: 176: Hoare triple {33649#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33649#false} is VALID [2018-11-23 12:14:53,991 INFO L273 TraceCheckUtils]: 177: Hoare triple {33649#false} assume !(~i~1 < 40); {33649#false} is VALID [2018-11-23 12:14:53,991 INFO L273 TraceCheckUtils]: 178: Hoare triple {33649#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {33649#false} is VALID [2018-11-23 12:14:53,992 INFO L273 TraceCheckUtils]: 179: Hoare triple {33649#false} assume true; {33649#false} is VALID [2018-11-23 12:14:53,992 INFO L268 TraceCheckUtils]: 180: Hoare quadruple {33649#false} {33649#false} #86#return; {33649#false} is VALID [2018-11-23 12:14:53,992 INFO L273 TraceCheckUtils]: 181: Hoare triple {33649#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {33649#false} is VALID [2018-11-23 12:14:53,992 INFO L273 TraceCheckUtils]: 182: Hoare triple {33649#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {33649#false} is VALID [2018-11-23 12:14:53,992 INFO L273 TraceCheckUtils]: 183: Hoare triple {33649#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {33649#false} is VALID [2018-11-23 12:14:53,992 INFO L273 TraceCheckUtils]: 184: Hoare triple {33649#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {33649#false} is VALID [2018-11-23 12:14:53,992 INFO L273 TraceCheckUtils]: 185: Hoare triple {33649#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {33649#false} is VALID [2018-11-23 12:14:53,992 INFO L273 TraceCheckUtils]: 186: Hoare triple {33649#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {33649#false} is VALID [2018-11-23 12:14:53,992 INFO L273 TraceCheckUtils]: 187: Hoare triple {33649#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {33649#false} is VALID [2018-11-23 12:14:53,992 INFO L273 TraceCheckUtils]: 188: Hoare triple {33649#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {33649#false} is VALID [2018-11-23 12:14:53,993 INFO L273 TraceCheckUtils]: 189: Hoare triple {33649#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {33649#false} is VALID [2018-11-23 12:14:53,993 INFO L273 TraceCheckUtils]: 190: Hoare triple {33649#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {33649#false} is VALID [2018-11-23 12:14:53,993 INFO L273 TraceCheckUtils]: 191: Hoare triple {33649#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {33649#false} is VALID [2018-11-23 12:14:53,993 INFO L273 TraceCheckUtils]: 192: Hoare triple {33649#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {33649#false} is VALID [2018-11-23 12:14:53,993 INFO L273 TraceCheckUtils]: 193: Hoare triple {33649#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {33649#false} is VALID [2018-11-23 12:14:53,993 INFO L273 TraceCheckUtils]: 194: Hoare triple {33649#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {33649#false} is VALID [2018-11-23 12:14:53,993 INFO L273 TraceCheckUtils]: 195: Hoare triple {33649#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {33649#false} is VALID [2018-11-23 12:14:53,993 INFO L273 TraceCheckUtils]: 196: Hoare triple {33649#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {33649#false} is VALID [2018-11-23 12:14:53,993 INFO L273 TraceCheckUtils]: 197: Hoare triple {33649#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {33649#false} is VALID [2018-11-23 12:14:53,994 INFO L273 TraceCheckUtils]: 198: Hoare triple {33649#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {33649#false} is VALID [2018-11-23 12:14:53,994 INFO L273 TraceCheckUtils]: 199: Hoare triple {33649#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {33649#false} is VALID [2018-11-23 12:14:53,994 INFO L273 TraceCheckUtils]: 200: Hoare triple {33649#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {33649#false} is VALID [2018-11-23 12:14:53,994 INFO L273 TraceCheckUtils]: 201: Hoare triple {33649#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {33649#false} is VALID [2018-11-23 12:14:53,994 INFO L273 TraceCheckUtils]: 202: Hoare triple {33649#false} assume !(~i~2 < 39); {33649#false} is VALID [2018-11-23 12:14:53,994 INFO L273 TraceCheckUtils]: 203: Hoare triple {33649#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {33649#false} is VALID [2018-11-23 12:14:53,994 INFO L256 TraceCheckUtils]: 204: Hoare triple {33649#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {33649#false} is VALID [2018-11-23 12:14:53,994 INFO L273 TraceCheckUtils]: 205: Hoare triple {33649#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {33649#false} is VALID [2018-11-23 12:14:53,994 INFO L273 TraceCheckUtils]: 206: Hoare triple {33649#false} assume !!(~i~1 < 40); {33649#false} is VALID [2018-11-23 12:14:53,994 INFO L273 TraceCheckUtils]: 207: Hoare triple {33649#false} assume !(~i~1 > 20); {33649#false} is VALID [2018-11-23 12:14:53,995 INFO L273 TraceCheckUtils]: 208: Hoare triple {33649#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33649#false} is VALID [2018-11-23 12:14:53,995 INFO L273 TraceCheckUtils]: 209: Hoare triple {33649#false} assume !!(~i~1 < 40); {33649#false} is VALID [2018-11-23 12:14:53,995 INFO L273 TraceCheckUtils]: 210: Hoare triple {33649#false} assume !(~i~1 > 20); {33649#false} is VALID [2018-11-23 12:14:53,995 INFO L273 TraceCheckUtils]: 211: Hoare triple {33649#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33649#false} is VALID [2018-11-23 12:14:53,995 INFO L273 TraceCheckUtils]: 212: Hoare triple {33649#false} assume !!(~i~1 < 40); {33649#false} is VALID [2018-11-23 12:14:53,995 INFO L273 TraceCheckUtils]: 213: Hoare triple {33649#false} assume !(~i~1 > 20); {33649#false} is VALID [2018-11-23 12:14:53,995 INFO L273 TraceCheckUtils]: 214: Hoare triple {33649#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33649#false} is VALID [2018-11-23 12:14:53,995 INFO L273 TraceCheckUtils]: 215: Hoare triple {33649#false} assume !!(~i~1 < 40); {33649#false} is VALID [2018-11-23 12:14:53,995 INFO L273 TraceCheckUtils]: 216: Hoare triple {33649#false} assume !(~i~1 > 20); {33649#false} is VALID [2018-11-23 12:14:53,995 INFO L273 TraceCheckUtils]: 217: Hoare triple {33649#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33649#false} is VALID [2018-11-23 12:14:53,996 INFO L273 TraceCheckUtils]: 218: Hoare triple {33649#false} assume !!(~i~1 < 40); {33649#false} is VALID [2018-11-23 12:14:53,996 INFO L273 TraceCheckUtils]: 219: Hoare triple {33649#false} assume !(~i~1 > 20); {33649#false} is VALID [2018-11-23 12:14:53,996 INFO L273 TraceCheckUtils]: 220: Hoare triple {33649#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33649#false} is VALID [2018-11-23 12:14:53,996 INFO L273 TraceCheckUtils]: 221: Hoare triple {33649#false} assume !!(~i~1 < 40); {33649#false} is VALID [2018-11-23 12:14:53,996 INFO L273 TraceCheckUtils]: 222: Hoare triple {33649#false} assume !(~i~1 > 20); {33649#false} is VALID [2018-11-23 12:14:53,996 INFO L273 TraceCheckUtils]: 223: Hoare triple {33649#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33649#false} is VALID [2018-11-23 12:14:53,996 INFO L273 TraceCheckUtils]: 224: Hoare triple {33649#false} assume !!(~i~1 < 40); {33649#false} is VALID [2018-11-23 12:14:53,996 INFO L273 TraceCheckUtils]: 225: Hoare triple {33649#false} assume !(~i~1 > 20); {33649#false} is VALID [2018-11-23 12:14:53,996 INFO L273 TraceCheckUtils]: 226: Hoare triple {33649#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33649#false} is VALID [2018-11-23 12:14:53,997 INFO L273 TraceCheckUtils]: 227: Hoare triple {33649#false} assume !!(~i~1 < 40); {33649#false} is VALID [2018-11-23 12:14:53,997 INFO L273 TraceCheckUtils]: 228: Hoare triple {33649#false} assume !(~i~1 > 20); {33649#false} is VALID [2018-11-23 12:14:53,997 INFO L273 TraceCheckUtils]: 229: Hoare triple {33649#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33649#false} is VALID [2018-11-23 12:14:53,997 INFO L273 TraceCheckUtils]: 230: Hoare triple {33649#false} assume !!(~i~1 < 40); {33649#false} is VALID [2018-11-23 12:14:53,997 INFO L273 TraceCheckUtils]: 231: Hoare triple {33649#false} assume !(~i~1 > 20); {33649#false} is VALID [2018-11-23 12:14:53,997 INFO L273 TraceCheckUtils]: 232: Hoare triple {33649#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33649#false} is VALID [2018-11-23 12:14:53,997 INFO L273 TraceCheckUtils]: 233: Hoare triple {33649#false} assume !!(~i~1 < 40); {33649#false} is VALID [2018-11-23 12:14:53,997 INFO L273 TraceCheckUtils]: 234: Hoare triple {33649#false} assume !(~i~1 > 20); {33649#false} is VALID [2018-11-23 12:14:53,997 INFO L273 TraceCheckUtils]: 235: Hoare triple {33649#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33649#false} is VALID [2018-11-23 12:14:53,997 INFO L273 TraceCheckUtils]: 236: Hoare triple {33649#false} assume !!(~i~1 < 40); {33649#false} is VALID [2018-11-23 12:14:53,998 INFO L273 TraceCheckUtils]: 237: Hoare triple {33649#false} assume !(~i~1 > 20); {33649#false} is VALID [2018-11-23 12:14:53,998 INFO L273 TraceCheckUtils]: 238: Hoare triple {33649#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33649#false} is VALID [2018-11-23 12:14:53,998 INFO L273 TraceCheckUtils]: 239: Hoare triple {33649#false} assume !!(~i~1 < 40); {33649#false} is VALID [2018-11-23 12:14:53,998 INFO L273 TraceCheckUtils]: 240: Hoare triple {33649#false} assume !(~i~1 > 20); {33649#false} is VALID [2018-11-23 12:14:53,998 INFO L273 TraceCheckUtils]: 241: Hoare triple {33649#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33649#false} is VALID [2018-11-23 12:14:53,998 INFO L273 TraceCheckUtils]: 242: Hoare triple {33649#false} assume !!(~i~1 < 40); {33649#false} is VALID [2018-11-23 12:14:53,998 INFO L273 TraceCheckUtils]: 243: Hoare triple {33649#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {33649#false} is VALID [2018-11-23 12:14:53,998 INFO L273 TraceCheckUtils]: 244: Hoare triple {33649#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33649#false} is VALID [2018-11-23 12:14:53,998 INFO L273 TraceCheckUtils]: 245: Hoare triple {33649#false} assume !!(~i~1 < 40); {33649#false} is VALID [2018-11-23 12:14:53,998 INFO L273 TraceCheckUtils]: 246: Hoare triple {33649#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {33649#false} is VALID [2018-11-23 12:14:53,999 INFO L273 TraceCheckUtils]: 247: Hoare triple {33649#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33649#false} is VALID [2018-11-23 12:14:53,999 INFO L273 TraceCheckUtils]: 248: Hoare triple {33649#false} assume !!(~i~1 < 40); {33649#false} is VALID [2018-11-23 12:14:53,999 INFO L273 TraceCheckUtils]: 249: Hoare triple {33649#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {33649#false} is VALID [2018-11-23 12:14:53,999 INFO L273 TraceCheckUtils]: 250: Hoare triple {33649#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33649#false} is VALID [2018-11-23 12:14:53,999 INFO L273 TraceCheckUtils]: 251: Hoare triple {33649#false} assume !!(~i~1 < 40); {33649#false} is VALID [2018-11-23 12:14:53,999 INFO L273 TraceCheckUtils]: 252: Hoare triple {33649#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {33649#false} is VALID [2018-11-23 12:14:53,999 INFO L273 TraceCheckUtils]: 253: Hoare triple {33649#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33649#false} is VALID [2018-11-23 12:14:53,999 INFO L273 TraceCheckUtils]: 254: Hoare triple {33649#false} assume !!(~i~1 < 40); {33649#false} is VALID [2018-11-23 12:14:53,999 INFO L273 TraceCheckUtils]: 255: Hoare triple {33649#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {33649#false} is VALID [2018-11-23 12:14:53,999 INFO L273 TraceCheckUtils]: 256: Hoare triple {33649#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33649#false} is VALID [2018-11-23 12:14:54,000 INFO L273 TraceCheckUtils]: 257: Hoare triple {33649#false} assume !!(~i~1 < 40); {33649#false} is VALID [2018-11-23 12:14:54,000 INFO L273 TraceCheckUtils]: 258: Hoare triple {33649#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {33649#false} is VALID [2018-11-23 12:14:54,000 INFO L273 TraceCheckUtils]: 259: Hoare triple {33649#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33649#false} is VALID [2018-11-23 12:14:54,000 INFO L273 TraceCheckUtils]: 260: Hoare triple {33649#false} assume !!(~i~1 < 40); {33649#false} is VALID [2018-11-23 12:14:54,000 INFO L273 TraceCheckUtils]: 261: Hoare triple {33649#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {33649#false} is VALID [2018-11-23 12:14:54,000 INFO L273 TraceCheckUtils]: 262: Hoare triple {33649#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33649#false} is VALID [2018-11-23 12:14:54,000 INFO L273 TraceCheckUtils]: 263: Hoare triple {33649#false} assume !!(~i~1 < 40); {33649#false} is VALID [2018-11-23 12:14:54,000 INFO L273 TraceCheckUtils]: 264: Hoare triple {33649#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {33649#false} is VALID [2018-11-23 12:14:54,000 INFO L273 TraceCheckUtils]: 265: Hoare triple {33649#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33649#false} is VALID [2018-11-23 12:14:54,001 INFO L273 TraceCheckUtils]: 266: Hoare triple {33649#false} assume !!(~i~1 < 40); {33649#false} is VALID [2018-11-23 12:14:54,001 INFO L273 TraceCheckUtils]: 267: Hoare triple {33649#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {33649#false} is VALID [2018-11-23 12:14:54,001 INFO L273 TraceCheckUtils]: 268: Hoare triple {33649#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {33649#false} is VALID [2018-11-23 12:14:54,001 INFO L273 TraceCheckUtils]: 269: Hoare triple {33649#false} assume !(~i~1 < 40); {33649#false} is VALID [2018-11-23 12:14:54,001 INFO L273 TraceCheckUtils]: 270: Hoare triple {33649#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {33649#false} is VALID [2018-11-23 12:14:54,001 INFO L273 TraceCheckUtils]: 271: Hoare triple {33649#false} assume true; {33649#false} is VALID [2018-11-23 12:14:54,001 INFO L268 TraceCheckUtils]: 272: Hoare quadruple {33649#false} {33649#false} #88#return; {33649#false} is VALID [2018-11-23 12:14:54,002 INFO L273 TraceCheckUtils]: 273: Hoare triple {33649#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {33649#false} is VALID [2018-11-23 12:14:54,002 INFO L273 TraceCheckUtils]: 274: Hoare triple {33649#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {33649#false} is VALID [2018-11-23 12:14:54,002 INFO L273 TraceCheckUtils]: 275: Hoare triple {33649#false} assume !false; {33649#false} is VALID [2018-11-23 12:14:54,040 INFO L134 CoverageAnalysis]: Checked inductivity of 6388 backedges. 3072 proven. 126 refuted. 0 times theorem prover too weak. 3190 trivial. 0 not checked. [2018-11-23 12:14:54,064 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:14:54,064 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [13] total 13 [2018-11-23 12:14:54,065 INFO L78 Accepts]: Start accepts. Automaton has 13 states. Word has length 276 [2018-11-23 12:14:54,065 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:14:54,065 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states. [2018-11-23 12:14:54,368 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 71 edges. 71 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:14:54,368 INFO L459 AbstractCegarLoop]: Interpolant automaton has 13 states [2018-11-23 12:14:54,369 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2018-11-23 12:14:54,369 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=78, Invalid=78, Unknown=0, NotChecked=0, Total=156 [2018-11-23 12:14:54,369 INFO L87 Difference]: Start difference. First operand 141 states and 155 transitions. Second operand 13 states. [2018-11-23 12:14:54,923 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:54,924 INFO L93 Difference]: Finished difference Result 244 states and 276 transitions. [2018-11-23 12:14:54,924 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2018-11-23 12:14:54,924 INFO L78 Accepts]: Start accepts. Automaton has 13 states. Word has length 276 [2018-11-23 12:14:54,924 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:14:54,924 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 13 states. [2018-11-23 12:14:54,925 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 107 transitions. [2018-11-23 12:14:54,925 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 13 states. [2018-11-23 12:14:54,926 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 107 transitions. [2018-11-23 12:14:54,926 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states and 107 transitions. [2018-11-23 12:14:55,430 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-23 12:14:55,433 INFO L225 Difference]: With dead ends: 244 [2018-11-23 12:14:55,434 INFO L226 Difference]: Without dead ends: 146 [2018-11-23 12:14:55,434 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 275 GetRequests, 264 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=78, Invalid=78, Unknown=0, NotChecked=0, Total=156 [2018-11-23 12:14:55,435 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 146 states. [2018-11-23 12:14:55,553 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 146 to 144. [2018-11-23 12:14:55,553 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:14:55,553 INFO L82 GeneralOperation]: Start isEquivalent. First operand 146 states. Second operand 144 states. [2018-11-23 12:14:55,553 INFO L74 IsIncluded]: Start isIncluded. First operand 146 states. Second operand 144 states. [2018-11-23 12:14:55,553 INFO L87 Difference]: Start difference. First operand 146 states. Second operand 144 states. [2018-11-23 12:14:55,557 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:55,557 INFO L93 Difference]: Finished difference Result 146 states and 162 transitions. [2018-11-23 12:14:55,557 INFO L276 IsEmpty]: Start isEmpty. Operand 146 states and 162 transitions. [2018-11-23 12:14:55,557 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:14:55,557 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:14:55,558 INFO L74 IsIncluded]: Start isIncluded. First operand 144 states. Second operand 146 states. [2018-11-23 12:14:55,558 INFO L87 Difference]: Start difference. First operand 144 states. Second operand 146 states. [2018-11-23 12:14:55,560 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:55,560 INFO L93 Difference]: Finished difference Result 146 states and 162 transitions. [2018-11-23 12:14:55,560 INFO L276 IsEmpty]: Start isEmpty. Operand 146 states and 162 transitions. [2018-11-23 12:14:55,560 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:14:55,560 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:14:55,560 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:14:55,560 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:14:55,560 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 144 states. [2018-11-23 12:14:55,562 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 144 states to 144 states and 159 transitions. [2018-11-23 12:14:55,562 INFO L78 Accepts]: Start accepts. Automaton has 144 states and 159 transitions. Word has length 276 [2018-11-23 12:14:55,562 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:14:55,563 INFO L480 AbstractCegarLoop]: Abstraction has 144 states and 159 transitions. [2018-11-23 12:14:55,563 INFO L481 AbstractCegarLoop]: Interpolant automaton has 13 states. [2018-11-23 12:14:55,563 INFO L276 IsEmpty]: Start isEmpty. Operand 144 states and 159 transitions. [2018-11-23 12:14:55,564 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 286 [2018-11-23 12:14:55,564 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:14:55,564 INFO L402 BasicCegarLoop]: trace histogram [66, 66, 36, 30, 15, 15, 10, 10, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:14:55,565 INFO L423 AbstractCegarLoop]: === Iteration 42 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:14:55,565 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:14:55,565 INFO L82 PathProgramCache]: Analyzing trace with hash 1670249446, now seen corresponding path program 37 times [2018-11-23 12:14:55,565 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:14:55,565 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:14:55,566 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:14:55,566 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:14:55,566 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:14:55,579 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:14:55,580 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:14:55,580 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 43 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 43 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:14:55,596 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:14:55,691 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:14:55,736 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:14:55,738 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:14:56,668 INFO L256 TraceCheckUtils]: 0: Hoare triple {35324#true} call ULTIMATE.init(); {35324#true} is VALID [2018-11-23 12:14:56,668 INFO L273 TraceCheckUtils]: 1: Hoare triple {35324#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {35324#true} is VALID [2018-11-23 12:14:56,668 INFO L273 TraceCheckUtils]: 2: Hoare triple {35324#true} assume true; {35324#true} is VALID [2018-11-23 12:14:56,669 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {35324#true} {35324#true} #78#return; {35324#true} is VALID [2018-11-23 12:14:56,669 INFO L256 TraceCheckUtils]: 4: Hoare triple {35324#true} call #t~ret12 := main(); {35324#true} is VALID [2018-11-23 12:14:56,669 INFO L273 TraceCheckUtils]: 5: Hoare triple {35324#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {35324#true} is VALID [2018-11-23 12:14:56,669 INFO L256 TraceCheckUtils]: 6: Hoare triple {35324#true} call init_nondet(~#x~0.base, ~#x~0.offset); {35324#true} is VALID [2018-11-23 12:14:56,670 INFO L273 TraceCheckUtils]: 7: Hoare triple {35324#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {35350#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:14:56,670 INFO L273 TraceCheckUtils]: 8: Hoare triple {35350#(<= init_nondet_~i~0 0)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {35350#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:14:56,671 INFO L273 TraceCheckUtils]: 9: Hoare triple {35350#(<= init_nondet_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {35357#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:14:56,671 INFO L273 TraceCheckUtils]: 10: Hoare triple {35357#(<= init_nondet_~i~0 1)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {35357#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:14:56,671 INFO L273 TraceCheckUtils]: 11: Hoare triple {35357#(<= init_nondet_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {35364#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:14:56,672 INFO L273 TraceCheckUtils]: 12: Hoare triple {35364#(<= init_nondet_~i~0 2)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {35364#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:14:56,672 INFO L273 TraceCheckUtils]: 13: Hoare triple {35364#(<= init_nondet_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {35371#(<= init_nondet_~i~0 3)} is VALID [2018-11-23 12:14:56,673 INFO L273 TraceCheckUtils]: 14: Hoare triple {35371#(<= init_nondet_~i~0 3)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {35371#(<= init_nondet_~i~0 3)} is VALID [2018-11-23 12:14:56,674 INFO L273 TraceCheckUtils]: 15: Hoare triple {35371#(<= init_nondet_~i~0 3)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {35378#(<= init_nondet_~i~0 4)} is VALID [2018-11-23 12:14:56,674 INFO L273 TraceCheckUtils]: 16: Hoare triple {35378#(<= init_nondet_~i~0 4)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {35378#(<= init_nondet_~i~0 4)} is VALID [2018-11-23 12:14:56,675 INFO L273 TraceCheckUtils]: 17: Hoare triple {35378#(<= init_nondet_~i~0 4)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {35385#(<= init_nondet_~i~0 5)} is VALID [2018-11-23 12:14:56,676 INFO L273 TraceCheckUtils]: 18: Hoare triple {35385#(<= init_nondet_~i~0 5)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {35385#(<= init_nondet_~i~0 5)} is VALID [2018-11-23 12:14:56,676 INFO L273 TraceCheckUtils]: 19: Hoare triple {35385#(<= init_nondet_~i~0 5)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {35392#(<= init_nondet_~i~0 6)} is VALID [2018-11-23 12:14:56,677 INFO L273 TraceCheckUtils]: 20: Hoare triple {35392#(<= init_nondet_~i~0 6)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {35392#(<= init_nondet_~i~0 6)} is VALID [2018-11-23 12:14:56,678 INFO L273 TraceCheckUtils]: 21: Hoare triple {35392#(<= init_nondet_~i~0 6)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {35399#(<= init_nondet_~i~0 7)} is VALID [2018-11-23 12:14:56,678 INFO L273 TraceCheckUtils]: 22: Hoare triple {35399#(<= init_nondet_~i~0 7)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {35399#(<= init_nondet_~i~0 7)} is VALID [2018-11-23 12:14:56,679 INFO L273 TraceCheckUtils]: 23: Hoare triple {35399#(<= init_nondet_~i~0 7)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {35406#(<= init_nondet_~i~0 8)} is VALID [2018-11-23 12:14:56,679 INFO L273 TraceCheckUtils]: 24: Hoare triple {35406#(<= init_nondet_~i~0 8)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {35406#(<= init_nondet_~i~0 8)} is VALID [2018-11-23 12:14:56,680 INFO L273 TraceCheckUtils]: 25: Hoare triple {35406#(<= init_nondet_~i~0 8)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {35413#(<= init_nondet_~i~0 9)} is VALID [2018-11-23 12:14:56,681 INFO L273 TraceCheckUtils]: 26: Hoare triple {35413#(<= init_nondet_~i~0 9)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {35413#(<= init_nondet_~i~0 9)} is VALID [2018-11-23 12:14:56,681 INFO L273 TraceCheckUtils]: 27: Hoare triple {35413#(<= init_nondet_~i~0 9)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {35420#(<= init_nondet_~i~0 10)} is VALID [2018-11-23 12:14:56,682 INFO L273 TraceCheckUtils]: 28: Hoare triple {35420#(<= init_nondet_~i~0 10)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {35420#(<= init_nondet_~i~0 10)} is VALID [2018-11-23 12:14:56,683 INFO L273 TraceCheckUtils]: 29: Hoare triple {35420#(<= init_nondet_~i~0 10)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {35427#(<= init_nondet_~i~0 11)} is VALID [2018-11-23 12:14:56,683 INFO L273 TraceCheckUtils]: 30: Hoare triple {35427#(<= init_nondet_~i~0 11)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {35427#(<= init_nondet_~i~0 11)} is VALID [2018-11-23 12:14:56,684 INFO L273 TraceCheckUtils]: 31: Hoare triple {35427#(<= init_nondet_~i~0 11)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {35434#(<= init_nondet_~i~0 12)} is VALID [2018-11-23 12:14:56,684 INFO L273 TraceCheckUtils]: 32: Hoare triple {35434#(<= init_nondet_~i~0 12)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {35434#(<= init_nondet_~i~0 12)} is VALID [2018-11-23 12:14:56,685 INFO L273 TraceCheckUtils]: 33: Hoare triple {35434#(<= init_nondet_~i~0 12)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {35441#(<= init_nondet_~i~0 13)} is VALID [2018-11-23 12:14:56,686 INFO L273 TraceCheckUtils]: 34: Hoare triple {35441#(<= init_nondet_~i~0 13)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {35441#(<= init_nondet_~i~0 13)} is VALID [2018-11-23 12:14:56,686 INFO L273 TraceCheckUtils]: 35: Hoare triple {35441#(<= init_nondet_~i~0 13)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {35448#(<= init_nondet_~i~0 14)} is VALID [2018-11-23 12:14:56,687 INFO L273 TraceCheckUtils]: 36: Hoare triple {35448#(<= init_nondet_~i~0 14)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {35448#(<= init_nondet_~i~0 14)} is VALID [2018-11-23 12:14:56,687 INFO L273 TraceCheckUtils]: 37: Hoare triple {35448#(<= init_nondet_~i~0 14)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {35455#(<= init_nondet_~i~0 15)} is VALID [2018-11-23 12:14:56,688 INFO L273 TraceCheckUtils]: 38: Hoare triple {35455#(<= init_nondet_~i~0 15)} assume !(~i~0 < 40); {35325#false} is VALID [2018-11-23 12:14:56,688 INFO L273 TraceCheckUtils]: 39: Hoare triple {35325#false} assume true; {35325#false} is VALID [2018-11-23 12:14:56,689 INFO L268 TraceCheckUtils]: 40: Hoare quadruple {35325#false} {35324#true} #82#return; {35325#false} is VALID [2018-11-23 12:14:56,689 INFO L273 TraceCheckUtils]: 41: Hoare triple {35325#false} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {35325#false} is VALID [2018-11-23 12:14:56,689 INFO L256 TraceCheckUtils]: 42: Hoare triple {35325#false} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {35325#false} is VALID [2018-11-23 12:14:56,689 INFO L273 TraceCheckUtils]: 43: Hoare triple {35325#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {35325#false} is VALID [2018-11-23 12:14:56,689 INFO L273 TraceCheckUtils]: 44: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,690 INFO L273 TraceCheckUtils]: 45: Hoare triple {35325#false} assume !(~i~1 > 20); {35325#false} is VALID [2018-11-23 12:14:56,690 INFO L273 TraceCheckUtils]: 46: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,690 INFO L273 TraceCheckUtils]: 47: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,690 INFO L273 TraceCheckUtils]: 48: Hoare triple {35325#false} assume !(~i~1 > 20); {35325#false} is VALID [2018-11-23 12:14:56,690 INFO L273 TraceCheckUtils]: 49: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,690 INFO L273 TraceCheckUtils]: 50: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,691 INFO L273 TraceCheckUtils]: 51: Hoare triple {35325#false} assume !(~i~1 > 20); {35325#false} is VALID [2018-11-23 12:14:56,691 INFO L273 TraceCheckUtils]: 52: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,691 INFO L273 TraceCheckUtils]: 53: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,691 INFO L273 TraceCheckUtils]: 54: Hoare triple {35325#false} assume !(~i~1 > 20); {35325#false} is VALID [2018-11-23 12:14:56,691 INFO L273 TraceCheckUtils]: 55: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,691 INFO L273 TraceCheckUtils]: 56: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,691 INFO L273 TraceCheckUtils]: 57: Hoare triple {35325#false} assume !(~i~1 > 20); {35325#false} is VALID [2018-11-23 12:14:56,692 INFO L273 TraceCheckUtils]: 58: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,692 INFO L273 TraceCheckUtils]: 59: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,692 INFO L273 TraceCheckUtils]: 60: Hoare triple {35325#false} assume !(~i~1 > 20); {35325#false} is VALID [2018-11-23 12:14:56,692 INFO L273 TraceCheckUtils]: 61: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,692 INFO L273 TraceCheckUtils]: 62: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,692 INFO L273 TraceCheckUtils]: 63: Hoare triple {35325#false} assume !(~i~1 > 20); {35325#false} is VALID [2018-11-23 12:14:56,692 INFO L273 TraceCheckUtils]: 64: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,693 INFO L273 TraceCheckUtils]: 65: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,693 INFO L273 TraceCheckUtils]: 66: Hoare triple {35325#false} assume !(~i~1 > 20); {35325#false} is VALID [2018-11-23 12:14:56,693 INFO L273 TraceCheckUtils]: 67: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,693 INFO L273 TraceCheckUtils]: 68: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,693 INFO L273 TraceCheckUtils]: 69: Hoare triple {35325#false} assume !(~i~1 > 20); {35325#false} is VALID [2018-11-23 12:14:56,693 INFO L273 TraceCheckUtils]: 70: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,693 INFO L273 TraceCheckUtils]: 71: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,693 INFO L273 TraceCheckUtils]: 72: Hoare triple {35325#false} assume !(~i~1 > 20); {35325#false} is VALID [2018-11-23 12:14:56,693 INFO L273 TraceCheckUtils]: 73: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,694 INFO L273 TraceCheckUtils]: 74: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,694 INFO L273 TraceCheckUtils]: 75: Hoare triple {35325#false} assume !(~i~1 > 20); {35325#false} is VALID [2018-11-23 12:14:56,694 INFO L273 TraceCheckUtils]: 76: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,694 INFO L273 TraceCheckUtils]: 77: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,694 INFO L273 TraceCheckUtils]: 78: Hoare triple {35325#false} assume !(~i~1 > 20); {35325#false} is VALID [2018-11-23 12:14:56,694 INFO L273 TraceCheckUtils]: 79: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,694 INFO L273 TraceCheckUtils]: 80: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,694 INFO L273 TraceCheckUtils]: 81: Hoare triple {35325#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {35325#false} is VALID [2018-11-23 12:14:56,694 INFO L273 TraceCheckUtils]: 82: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,694 INFO L273 TraceCheckUtils]: 83: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,695 INFO L273 TraceCheckUtils]: 84: Hoare triple {35325#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {35325#false} is VALID [2018-11-23 12:14:56,695 INFO L273 TraceCheckUtils]: 85: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,695 INFO L273 TraceCheckUtils]: 86: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,695 INFO L273 TraceCheckUtils]: 87: Hoare triple {35325#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {35325#false} is VALID [2018-11-23 12:14:56,695 INFO L273 TraceCheckUtils]: 88: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,695 INFO L273 TraceCheckUtils]: 89: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,695 INFO L273 TraceCheckUtils]: 90: Hoare triple {35325#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {35325#false} is VALID [2018-11-23 12:14:56,695 INFO L273 TraceCheckUtils]: 91: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,695 INFO L273 TraceCheckUtils]: 92: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,695 INFO L273 TraceCheckUtils]: 93: Hoare triple {35325#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {35325#false} is VALID [2018-11-23 12:14:56,696 INFO L273 TraceCheckUtils]: 94: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,696 INFO L273 TraceCheckUtils]: 95: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,696 INFO L273 TraceCheckUtils]: 96: Hoare triple {35325#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {35325#false} is VALID [2018-11-23 12:14:56,696 INFO L273 TraceCheckUtils]: 97: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,696 INFO L273 TraceCheckUtils]: 98: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,696 INFO L273 TraceCheckUtils]: 99: Hoare triple {35325#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {35325#false} is VALID [2018-11-23 12:14:56,696 INFO L273 TraceCheckUtils]: 100: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,696 INFO L273 TraceCheckUtils]: 101: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,696 INFO L273 TraceCheckUtils]: 102: Hoare triple {35325#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {35325#false} is VALID [2018-11-23 12:14:56,697 INFO L273 TraceCheckUtils]: 103: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,697 INFO L273 TraceCheckUtils]: 104: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,697 INFO L273 TraceCheckUtils]: 105: Hoare triple {35325#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {35325#false} is VALID [2018-11-23 12:14:56,697 INFO L273 TraceCheckUtils]: 106: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,697 INFO L273 TraceCheckUtils]: 107: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,697 INFO L273 TraceCheckUtils]: 108: Hoare triple {35325#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {35325#false} is VALID [2018-11-23 12:14:56,697 INFO L273 TraceCheckUtils]: 109: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,697 INFO L273 TraceCheckUtils]: 110: Hoare triple {35325#false} assume !(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,697 INFO L273 TraceCheckUtils]: 111: Hoare triple {35325#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {35325#false} is VALID [2018-11-23 12:14:56,697 INFO L273 TraceCheckUtils]: 112: Hoare triple {35325#false} assume true; {35325#false} is VALID [2018-11-23 12:14:56,698 INFO L268 TraceCheckUtils]: 113: Hoare quadruple {35325#false} {35325#false} #84#return; {35325#false} is VALID [2018-11-23 12:14:56,698 INFO L273 TraceCheckUtils]: 114: Hoare triple {35325#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {35325#false} is VALID [2018-11-23 12:14:56,698 INFO L256 TraceCheckUtils]: 115: Hoare triple {35325#false} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {35325#false} is VALID [2018-11-23 12:14:56,698 INFO L273 TraceCheckUtils]: 116: Hoare triple {35325#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {35325#false} is VALID [2018-11-23 12:14:56,698 INFO L273 TraceCheckUtils]: 117: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,698 INFO L273 TraceCheckUtils]: 118: Hoare triple {35325#false} assume !(~i~1 > 20); {35325#false} is VALID [2018-11-23 12:14:56,698 INFO L273 TraceCheckUtils]: 119: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,699 INFO L273 TraceCheckUtils]: 120: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,699 INFO L273 TraceCheckUtils]: 121: Hoare triple {35325#false} assume !(~i~1 > 20); {35325#false} is VALID [2018-11-23 12:14:56,699 INFO L273 TraceCheckUtils]: 122: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,699 INFO L273 TraceCheckUtils]: 123: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,699 INFO L273 TraceCheckUtils]: 124: Hoare triple {35325#false} assume !(~i~1 > 20); {35325#false} is VALID [2018-11-23 12:14:56,699 INFO L273 TraceCheckUtils]: 125: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,700 INFO L273 TraceCheckUtils]: 126: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,700 INFO L273 TraceCheckUtils]: 127: Hoare triple {35325#false} assume !(~i~1 > 20); {35325#false} is VALID [2018-11-23 12:14:56,700 INFO L273 TraceCheckUtils]: 128: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,700 INFO L273 TraceCheckUtils]: 129: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,700 INFO L273 TraceCheckUtils]: 130: Hoare triple {35325#false} assume !(~i~1 > 20); {35325#false} is VALID [2018-11-23 12:14:56,700 INFO L273 TraceCheckUtils]: 131: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,701 INFO L273 TraceCheckUtils]: 132: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,701 INFO L273 TraceCheckUtils]: 133: Hoare triple {35325#false} assume !(~i~1 > 20); {35325#false} is VALID [2018-11-23 12:14:56,701 INFO L273 TraceCheckUtils]: 134: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,701 INFO L273 TraceCheckUtils]: 135: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,701 INFO L273 TraceCheckUtils]: 136: Hoare triple {35325#false} assume !(~i~1 > 20); {35325#false} is VALID [2018-11-23 12:14:56,701 INFO L273 TraceCheckUtils]: 137: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,701 INFO L273 TraceCheckUtils]: 138: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,702 INFO L273 TraceCheckUtils]: 139: Hoare triple {35325#false} assume !(~i~1 > 20); {35325#false} is VALID [2018-11-23 12:14:56,702 INFO L273 TraceCheckUtils]: 140: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,702 INFO L273 TraceCheckUtils]: 141: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,702 INFO L273 TraceCheckUtils]: 142: Hoare triple {35325#false} assume !(~i~1 > 20); {35325#false} is VALID [2018-11-23 12:14:56,702 INFO L273 TraceCheckUtils]: 143: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,702 INFO L273 TraceCheckUtils]: 144: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,702 INFO L273 TraceCheckUtils]: 145: Hoare triple {35325#false} assume !(~i~1 > 20); {35325#false} is VALID [2018-11-23 12:14:56,703 INFO L273 TraceCheckUtils]: 146: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,703 INFO L273 TraceCheckUtils]: 147: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,703 INFO L273 TraceCheckUtils]: 148: Hoare triple {35325#false} assume !(~i~1 > 20); {35325#false} is VALID [2018-11-23 12:14:56,703 INFO L273 TraceCheckUtils]: 149: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,703 INFO L273 TraceCheckUtils]: 150: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,703 INFO L273 TraceCheckUtils]: 151: Hoare triple {35325#false} assume !(~i~1 > 20); {35325#false} is VALID [2018-11-23 12:14:56,703 INFO L273 TraceCheckUtils]: 152: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,704 INFO L273 TraceCheckUtils]: 153: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,704 INFO L273 TraceCheckUtils]: 154: Hoare triple {35325#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {35325#false} is VALID [2018-11-23 12:14:56,704 INFO L273 TraceCheckUtils]: 155: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,704 INFO L273 TraceCheckUtils]: 156: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,704 INFO L273 TraceCheckUtils]: 157: Hoare triple {35325#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {35325#false} is VALID [2018-11-23 12:14:56,704 INFO L273 TraceCheckUtils]: 158: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,704 INFO L273 TraceCheckUtils]: 159: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,705 INFO L273 TraceCheckUtils]: 160: Hoare triple {35325#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {35325#false} is VALID [2018-11-23 12:14:56,705 INFO L273 TraceCheckUtils]: 161: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,705 INFO L273 TraceCheckUtils]: 162: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,705 INFO L273 TraceCheckUtils]: 163: Hoare triple {35325#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {35325#false} is VALID [2018-11-23 12:14:56,705 INFO L273 TraceCheckUtils]: 164: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,705 INFO L273 TraceCheckUtils]: 165: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,705 INFO L273 TraceCheckUtils]: 166: Hoare triple {35325#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {35325#false} is VALID [2018-11-23 12:14:56,706 INFO L273 TraceCheckUtils]: 167: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,706 INFO L273 TraceCheckUtils]: 168: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,706 INFO L273 TraceCheckUtils]: 169: Hoare triple {35325#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {35325#false} is VALID [2018-11-23 12:14:56,706 INFO L273 TraceCheckUtils]: 170: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,706 INFO L273 TraceCheckUtils]: 171: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,706 INFO L273 TraceCheckUtils]: 172: Hoare triple {35325#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {35325#false} is VALID [2018-11-23 12:14:56,707 INFO L273 TraceCheckUtils]: 173: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,707 INFO L273 TraceCheckUtils]: 174: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,707 INFO L273 TraceCheckUtils]: 175: Hoare triple {35325#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {35325#false} is VALID [2018-11-23 12:14:56,707 INFO L273 TraceCheckUtils]: 176: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,707 INFO L273 TraceCheckUtils]: 177: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,707 INFO L273 TraceCheckUtils]: 178: Hoare triple {35325#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {35325#false} is VALID [2018-11-23 12:14:56,707 INFO L273 TraceCheckUtils]: 179: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,708 INFO L273 TraceCheckUtils]: 180: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,708 INFO L273 TraceCheckUtils]: 181: Hoare triple {35325#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {35325#false} is VALID [2018-11-23 12:14:56,708 INFO L273 TraceCheckUtils]: 182: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,708 INFO L273 TraceCheckUtils]: 183: Hoare triple {35325#false} assume !(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,708 INFO L273 TraceCheckUtils]: 184: Hoare triple {35325#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {35325#false} is VALID [2018-11-23 12:14:56,708 INFO L273 TraceCheckUtils]: 185: Hoare triple {35325#false} assume true; {35325#false} is VALID [2018-11-23 12:14:56,708 INFO L268 TraceCheckUtils]: 186: Hoare quadruple {35325#false} {35325#false} #86#return; {35325#false} is VALID [2018-11-23 12:14:56,709 INFO L273 TraceCheckUtils]: 187: Hoare triple {35325#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {35325#false} is VALID [2018-11-23 12:14:56,709 INFO L273 TraceCheckUtils]: 188: Hoare triple {35325#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {35325#false} is VALID [2018-11-23 12:14:56,709 INFO L273 TraceCheckUtils]: 189: Hoare triple {35325#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {35325#false} is VALID [2018-11-23 12:14:56,709 INFO L273 TraceCheckUtils]: 190: Hoare triple {35325#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {35325#false} is VALID [2018-11-23 12:14:56,709 INFO L273 TraceCheckUtils]: 191: Hoare triple {35325#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {35325#false} is VALID [2018-11-23 12:14:56,709 INFO L273 TraceCheckUtils]: 192: Hoare triple {35325#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {35325#false} is VALID [2018-11-23 12:14:56,709 INFO L273 TraceCheckUtils]: 193: Hoare triple {35325#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {35325#false} is VALID [2018-11-23 12:14:56,710 INFO L273 TraceCheckUtils]: 194: Hoare triple {35325#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {35325#false} is VALID [2018-11-23 12:14:56,710 INFO L273 TraceCheckUtils]: 195: Hoare triple {35325#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {35325#false} is VALID [2018-11-23 12:14:56,710 INFO L273 TraceCheckUtils]: 196: Hoare triple {35325#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {35325#false} is VALID [2018-11-23 12:14:56,710 INFO L273 TraceCheckUtils]: 197: Hoare triple {35325#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {35325#false} is VALID [2018-11-23 12:14:56,710 INFO L273 TraceCheckUtils]: 198: Hoare triple {35325#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {35325#false} is VALID [2018-11-23 12:14:56,710 INFO L273 TraceCheckUtils]: 199: Hoare triple {35325#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {35325#false} is VALID [2018-11-23 12:14:56,711 INFO L273 TraceCheckUtils]: 200: Hoare triple {35325#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {35325#false} is VALID [2018-11-23 12:14:56,711 INFO L273 TraceCheckUtils]: 201: Hoare triple {35325#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {35325#false} is VALID [2018-11-23 12:14:56,711 INFO L273 TraceCheckUtils]: 202: Hoare triple {35325#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {35325#false} is VALID [2018-11-23 12:14:56,711 INFO L273 TraceCheckUtils]: 203: Hoare triple {35325#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {35325#false} is VALID [2018-11-23 12:14:56,711 INFO L273 TraceCheckUtils]: 204: Hoare triple {35325#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {35325#false} is VALID [2018-11-23 12:14:56,711 INFO L273 TraceCheckUtils]: 205: Hoare triple {35325#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {35325#false} is VALID [2018-11-23 12:14:56,711 INFO L273 TraceCheckUtils]: 206: Hoare triple {35325#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {35325#false} is VALID [2018-11-23 12:14:56,712 INFO L273 TraceCheckUtils]: 207: Hoare triple {35325#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {35325#false} is VALID [2018-11-23 12:14:56,712 INFO L273 TraceCheckUtils]: 208: Hoare triple {35325#false} assume !(~i~2 < 39); {35325#false} is VALID [2018-11-23 12:14:56,712 INFO L273 TraceCheckUtils]: 209: Hoare triple {35325#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {35325#false} is VALID [2018-11-23 12:14:56,712 INFO L256 TraceCheckUtils]: 210: Hoare triple {35325#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {35325#false} is VALID [2018-11-23 12:14:56,712 INFO L273 TraceCheckUtils]: 211: Hoare triple {35325#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {35325#false} is VALID [2018-11-23 12:14:56,712 INFO L273 TraceCheckUtils]: 212: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,712 INFO L273 TraceCheckUtils]: 213: Hoare triple {35325#false} assume !(~i~1 > 20); {35325#false} is VALID [2018-11-23 12:14:56,713 INFO L273 TraceCheckUtils]: 214: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,713 INFO L273 TraceCheckUtils]: 215: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,713 INFO L273 TraceCheckUtils]: 216: Hoare triple {35325#false} assume !(~i~1 > 20); {35325#false} is VALID [2018-11-23 12:14:56,713 INFO L273 TraceCheckUtils]: 217: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,713 INFO L273 TraceCheckUtils]: 218: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,713 INFO L273 TraceCheckUtils]: 219: Hoare triple {35325#false} assume !(~i~1 > 20); {35325#false} is VALID [2018-11-23 12:14:56,714 INFO L273 TraceCheckUtils]: 220: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,714 INFO L273 TraceCheckUtils]: 221: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,714 INFO L273 TraceCheckUtils]: 222: Hoare triple {35325#false} assume !(~i~1 > 20); {35325#false} is VALID [2018-11-23 12:14:56,714 INFO L273 TraceCheckUtils]: 223: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,714 INFO L273 TraceCheckUtils]: 224: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,714 INFO L273 TraceCheckUtils]: 225: Hoare triple {35325#false} assume !(~i~1 > 20); {35325#false} is VALID [2018-11-23 12:14:56,714 INFO L273 TraceCheckUtils]: 226: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,715 INFO L273 TraceCheckUtils]: 227: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,715 INFO L273 TraceCheckUtils]: 228: Hoare triple {35325#false} assume !(~i~1 > 20); {35325#false} is VALID [2018-11-23 12:14:56,715 INFO L273 TraceCheckUtils]: 229: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,715 INFO L273 TraceCheckUtils]: 230: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,715 INFO L273 TraceCheckUtils]: 231: Hoare triple {35325#false} assume !(~i~1 > 20); {35325#false} is VALID [2018-11-23 12:14:56,715 INFO L273 TraceCheckUtils]: 232: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,715 INFO L273 TraceCheckUtils]: 233: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,716 INFO L273 TraceCheckUtils]: 234: Hoare triple {35325#false} assume !(~i~1 > 20); {35325#false} is VALID [2018-11-23 12:14:56,716 INFO L273 TraceCheckUtils]: 235: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,716 INFO L273 TraceCheckUtils]: 236: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,716 INFO L273 TraceCheckUtils]: 237: Hoare triple {35325#false} assume !(~i~1 > 20); {35325#false} is VALID [2018-11-23 12:14:56,716 INFO L273 TraceCheckUtils]: 238: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,716 INFO L273 TraceCheckUtils]: 239: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,716 INFO L273 TraceCheckUtils]: 240: Hoare triple {35325#false} assume !(~i~1 > 20); {35325#false} is VALID [2018-11-23 12:14:56,717 INFO L273 TraceCheckUtils]: 241: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,717 INFO L273 TraceCheckUtils]: 242: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,717 INFO L273 TraceCheckUtils]: 243: Hoare triple {35325#false} assume !(~i~1 > 20); {35325#false} is VALID [2018-11-23 12:14:56,717 INFO L273 TraceCheckUtils]: 244: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,717 INFO L273 TraceCheckUtils]: 245: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,717 INFO L273 TraceCheckUtils]: 246: Hoare triple {35325#false} assume !(~i~1 > 20); {35325#false} is VALID [2018-11-23 12:14:56,717 INFO L273 TraceCheckUtils]: 247: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,718 INFO L273 TraceCheckUtils]: 248: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,718 INFO L273 TraceCheckUtils]: 249: Hoare triple {35325#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {35325#false} is VALID [2018-11-23 12:14:56,718 INFO L273 TraceCheckUtils]: 250: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,718 INFO L273 TraceCheckUtils]: 251: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,718 INFO L273 TraceCheckUtils]: 252: Hoare triple {35325#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {35325#false} is VALID [2018-11-23 12:14:56,718 INFO L273 TraceCheckUtils]: 253: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,718 INFO L273 TraceCheckUtils]: 254: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,719 INFO L273 TraceCheckUtils]: 255: Hoare triple {35325#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {35325#false} is VALID [2018-11-23 12:14:56,719 INFO L273 TraceCheckUtils]: 256: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,719 INFO L273 TraceCheckUtils]: 257: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,719 INFO L273 TraceCheckUtils]: 258: Hoare triple {35325#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {35325#false} is VALID [2018-11-23 12:14:56,719 INFO L273 TraceCheckUtils]: 259: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,719 INFO L273 TraceCheckUtils]: 260: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,719 INFO L273 TraceCheckUtils]: 261: Hoare triple {35325#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {35325#false} is VALID [2018-11-23 12:14:56,720 INFO L273 TraceCheckUtils]: 262: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,720 INFO L273 TraceCheckUtils]: 263: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,720 INFO L273 TraceCheckUtils]: 264: Hoare triple {35325#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {35325#false} is VALID [2018-11-23 12:14:56,720 INFO L273 TraceCheckUtils]: 265: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,720 INFO L273 TraceCheckUtils]: 266: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,720 INFO L273 TraceCheckUtils]: 267: Hoare triple {35325#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {35325#false} is VALID [2018-11-23 12:14:56,720 INFO L273 TraceCheckUtils]: 268: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,721 INFO L273 TraceCheckUtils]: 269: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,721 INFO L273 TraceCheckUtils]: 270: Hoare triple {35325#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {35325#false} is VALID [2018-11-23 12:14:56,721 INFO L273 TraceCheckUtils]: 271: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,721 INFO L273 TraceCheckUtils]: 272: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,721 INFO L273 TraceCheckUtils]: 273: Hoare triple {35325#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {35325#false} is VALID [2018-11-23 12:14:56,721 INFO L273 TraceCheckUtils]: 274: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,721 INFO L273 TraceCheckUtils]: 275: Hoare triple {35325#false} assume !!(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,722 INFO L273 TraceCheckUtils]: 276: Hoare triple {35325#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {35325#false} is VALID [2018-11-23 12:14:56,722 INFO L273 TraceCheckUtils]: 277: Hoare triple {35325#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {35325#false} is VALID [2018-11-23 12:14:56,722 INFO L273 TraceCheckUtils]: 278: Hoare triple {35325#false} assume !(~i~1 < 40); {35325#false} is VALID [2018-11-23 12:14:56,722 INFO L273 TraceCheckUtils]: 279: Hoare triple {35325#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {35325#false} is VALID [2018-11-23 12:14:56,722 INFO L273 TraceCheckUtils]: 280: Hoare triple {35325#false} assume true; {35325#false} is VALID [2018-11-23 12:14:56,722 INFO L268 TraceCheckUtils]: 281: Hoare quadruple {35325#false} {35325#false} #88#return; {35325#false} is VALID [2018-11-23 12:14:56,722 INFO L273 TraceCheckUtils]: 282: Hoare triple {35325#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {35325#false} is VALID [2018-11-23 12:14:56,723 INFO L273 TraceCheckUtils]: 283: Hoare triple {35325#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {35325#false} is VALID [2018-11-23 12:14:56,723 INFO L273 TraceCheckUtils]: 284: Hoare triple {35325#false} assume !false; {35325#false} is VALID [2018-11-23 12:14:56,783 INFO L134 CoverageAnalysis]: Checked inductivity of 6973 backedges. 0 proven. 225 refuted. 0 times theorem prover too weak. 6748 trivial. 0 not checked. [2018-11-23 12:14:56,803 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:14:56,803 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [18] total 18 [2018-11-23 12:14:56,804 INFO L78 Accepts]: Start accepts. Automaton has 18 states. Word has length 285 [2018-11-23 12:14:56,804 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:14:56,804 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 18 states. [2018-11-23 12:14:56,898 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:14:56,898 INFO L459 AbstractCegarLoop]: Interpolant automaton has 18 states [2018-11-23 12:14:56,898 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2018-11-23 12:14:56,899 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=153, Invalid=153, Unknown=0, NotChecked=0, Total=306 [2018-11-23 12:14:56,899 INFO L87 Difference]: Start difference. First operand 144 states and 159 transitions. Second operand 18 states. [2018-11-23 12:14:57,732 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:57,733 INFO L93 Difference]: Finished difference Result 252 states and 282 transitions. [2018-11-23 12:14:57,733 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2018-11-23 12:14:57,733 INFO L78 Accepts]: Start accepts. Automaton has 18 states. Word has length 285 [2018-11-23 12:14:57,733 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:14:57,733 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 18 states. [2018-11-23 12:14:57,734 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 98 transitions. [2018-11-23 12:14:57,734 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 18 states. [2018-11-23 12:14:57,735 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 98 transitions. [2018-11-23 12:14:57,735 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 18 states and 98 transitions. [2018-11-23 12:14:57,892 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 98 edges. 98 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:14:57,896 INFO L225 Difference]: With dead ends: 252 [2018-11-23 12:14:57,896 INFO L226 Difference]: Without dead ends: 147 [2018-11-23 12:14:57,897 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 284 GetRequests, 268 SyntacticMatches, 0 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=153, Invalid=153, Unknown=0, NotChecked=0, Total=306 [2018-11-23 12:14:57,898 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 147 states. [2018-11-23 12:14:57,997 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 147 to 146. [2018-11-23 12:14:57,997 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:14:57,997 INFO L82 GeneralOperation]: Start isEquivalent. First operand 147 states. Second operand 146 states. [2018-11-23 12:14:57,997 INFO L74 IsIncluded]: Start isIncluded. First operand 147 states. Second operand 146 states. [2018-11-23 12:14:57,997 INFO L87 Difference]: Start difference. First operand 147 states. Second operand 146 states. [2018-11-23 12:14:58,000 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:58,000 INFO L93 Difference]: Finished difference Result 147 states and 162 transitions. [2018-11-23 12:14:58,000 INFO L276 IsEmpty]: Start isEmpty. Operand 147 states and 162 transitions. [2018-11-23 12:14:58,000 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:14:58,001 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:14:58,001 INFO L74 IsIncluded]: Start isIncluded. First operand 146 states. Second operand 147 states. [2018-11-23 12:14:58,001 INFO L87 Difference]: Start difference. First operand 146 states. Second operand 147 states. [2018-11-23 12:14:58,003 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:14:58,003 INFO L93 Difference]: Finished difference Result 147 states and 162 transitions. [2018-11-23 12:14:58,004 INFO L276 IsEmpty]: Start isEmpty. Operand 147 states and 162 transitions. [2018-11-23 12:14:58,004 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:14:58,004 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:14:58,004 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:14:58,004 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:14:58,004 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 146 states. [2018-11-23 12:14:58,007 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 146 states to 146 states and 161 transitions. [2018-11-23 12:14:58,007 INFO L78 Accepts]: Start accepts. Automaton has 146 states and 161 transitions. Word has length 285 [2018-11-23 12:14:58,007 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:14:58,007 INFO L480 AbstractCegarLoop]: Abstraction has 146 states and 161 transitions. [2018-11-23 12:14:58,008 INFO L481 AbstractCegarLoop]: Interpolant automaton has 18 states. [2018-11-23 12:14:58,008 INFO L276 IsEmpty]: Start isEmpty. Operand 146 states and 161 transitions. [2018-11-23 12:14:58,009 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 288 [2018-11-23 12:14:58,009 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:14:58,010 INFO L402 BasicCegarLoop]: trace histogram [66, 66, 36, 30, 16, 16, 10, 10, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:14:58,010 INFO L423 AbstractCegarLoop]: === Iteration 43 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:14:58,010 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:14:58,010 INFO L82 PathProgramCache]: Analyzing trace with hash 1928198500, now seen corresponding path program 38 times [2018-11-23 12:14:58,010 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:14:58,010 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:14:58,011 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:14:58,011 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:14:58,011 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:14:58,026 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:14:58,026 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:14:58,026 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 44 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 44 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:14:58,045 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-23 12:14:58,145 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-23 12:14:58,146 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:14:58,186 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:14:58,188 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:14:59,694 INFO L256 TraceCheckUtils]: 0: Hoare triple {37048#true} call ULTIMATE.init(); {37048#true} is VALID [2018-11-23 12:14:59,694 INFO L273 TraceCheckUtils]: 1: Hoare triple {37048#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {37048#true} is VALID [2018-11-23 12:14:59,694 INFO L273 TraceCheckUtils]: 2: Hoare triple {37048#true} assume true; {37048#true} is VALID [2018-11-23 12:14:59,695 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {37048#true} {37048#true} #78#return; {37048#true} is VALID [2018-11-23 12:14:59,695 INFO L256 TraceCheckUtils]: 4: Hoare triple {37048#true} call #t~ret12 := main(); {37048#true} is VALID [2018-11-23 12:14:59,695 INFO L273 TraceCheckUtils]: 5: Hoare triple {37048#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {37048#true} is VALID [2018-11-23 12:14:59,695 INFO L256 TraceCheckUtils]: 6: Hoare triple {37048#true} call init_nondet(~#x~0.base, ~#x~0.offset); {37048#true} is VALID [2018-11-23 12:14:59,696 INFO L273 TraceCheckUtils]: 7: Hoare triple {37048#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {37074#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:14:59,696 INFO L273 TraceCheckUtils]: 8: Hoare triple {37074#(<= init_nondet_~i~0 0)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {37074#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:14:59,697 INFO L273 TraceCheckUtils]: 9: Hoare triple {37074#(<= init_nondet_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37081#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:14:59,697 INFO L273 TraceCheckUtils]: 10: Hoare triple {37081#(<= init_nondet_~i~0 1)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {37081#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:14:59,698 INFO L273 TraceCheckUtils]: 11: Hoare triple {37081#(<= init_nondet_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37088#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:14:59,698 INFO L273 TraceCheckUtils]: 12: Hoare triple {37088#(<= init_nondet_~i~0 2)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {37088#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:14:59,698 INFO L273 TraceCheckUtils]: 13: Hoare triple {37088#(<= init_nondet_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37095#(<= init_nondet_~i~0 3)} is VALID [2018-11-23 12:14:59,699 INFO L273 TraceCheckUtils]: 14: Hoare triple {37095#(<= init_nondet_~i~0 3)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {37095#(<= init_nondet_~i~0 3)} is VALID [2018-11-23 12:14:59,699 INFO L273 TraceCheckUtils]: 15: Hoare triple {37095#(<= init_nondet_~i~0 3)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37102#(<= init_nondet_~i~0 4)} is VALID [2018-11-23 12:14:59,700 INFO L273 TraceCheckUtils]: 16: Hoare triple {37102#(<= init_nondet_~i~0 4)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {37102#(<= init_nondet_~i~0 4)} is VALID [2018-11-23 12:14:59,701 INFO L273 TraceCheckUtils]: 17: Hoare triple {37102#(<= init_nondet_~i~0 4)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37109#(<= init_nondet_~i~0 5)} is VALID [2018-11-23 12:14:59,701 INFO L273 TraceCheckUtils]: 18: Hoare triple {37109#(<= init_nondet_~i~0 5)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {37109#(<= init_nondet_~i~0 5)} is VALID [2018-11-23 12:14:59,702 INFO L273 TraceCheckUtils]: 19: Hoare triple {37109#(<= init_nondet_~i~0 5)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37116#(<= init_nondet_~i~0 6)} is VALID [2018-11-23 12:14:59,702 INFO L273 TraceCheckUtils]: 20: Hoare triple {37116#(<= init_nondet_~i~0 6)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {37116#(<= init_nondet_~i~0 6)} is VALID [2018-11-23 12:14:59,703 INFO L273 TraceCheckUtils]: 21: Hoare triple {37116#(<= init_nondet_~i~0 6)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37123#(<= init_nondet_~i~0 7)} is VALID [2018-11-23 12:14:59,703 INFO L273 TraceCheckUtils]: 22: Hoare triple {37123#(<= init_nondet_~i~0 7)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {37123#(<= init_nondet_~i~0 7)} is VALID [2018-11-23 12:14:59,704 INFO L273 TraceCheckUtils]: 23: Hoare triple {37123#(<= init_nondet_~i~0 7)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37130#(<= init_nondet_~i~0 8)} is VALID [2018-11-23 12:14:59,705 INFO L273 TraceCheckUtils]: 24: Hoare triple {37130#(<= init_nondet_~i~0 8)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {37130#(<= init_nondet_~i~0 8)} is VALID [2018-11-23 12:14:59,705 INFO L273 TraceCheckUtils]: 25: Hoare triple {37130#(<= init_nondet_~i~0 8)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37137#(<= init_nondet_~i~0 9)} is VALID [2018-11-23 12:14:59,706 INFO L273 TraceCheckUtils]: 26: Hoare triple {37137#(<= init_nondet_~i~0 9)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {37137#(<= init_nondet_~i~0 9)} is VALID [2018-11-23 12:14:59,706 INFO L273 TraceCheckUtils]: 27: Hoare triple {37137#(<= init_nondet_~i~0 9)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37144#(<= init_nondet_~i~0 10)} is VALID [2018-11-23 12:14:59,707 INFO L273 TraceCheckUtils]: 28: Hoare triple {37144#(<= init_nondet_~i~0 10)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {37144#(<= init_nondet_~i~0 10)} is VALID [2018-11-23 12:14:59,708 INFO L273 TraceCheckUtils]: 29: Hoare triple {37144#(<= init_nondet_~i~0 10)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37151#(<= init_nondet_~i~0 11)} is VALID [2018-11-23 12:14:59,708 INFO L273 TraceCheckUtils]: 30: Hoare triple {37151#(<= init_nondet_~i~0 11)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {37151#(<= init_nondet_~i~0 11)} is VALID [2018-11-23 12:14:59,709 INFO L273 TraceCheckUtils]: 31: Hoare triple {37151#(<= init_nondet_~i~0 11)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37158#(<= init_nondet_~i~0 12)} is VALID [2018-11-23 12:14:59,709 INFO L273 TraceCheckUtils]: 32: Hoare triple {37158#(<= init_nondet_~i~0 12)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {37158#(<= init_nondet_~i~0 12)} is VALID [2018-11-23 12:14:59,710 INFO L273 TraceCheckUtils]: 33: Hoare triple {37158#(<= init_nondet_~i~0 12)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37165#(<= init_nondet_~i~0 13)} is VALID [2018-11-23 12:14:59,711 INFO L273 TraceCheckUtils]: 34: Hoare triple {37165#(<= init_nondet_~i~0 13)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {37165#(<= init_nondet_~i~0 13)} is VALID [2018-11-23 12:14:59,711 INFO L273 TraceCheckUtils]: 35: Hoare triple {37165#(<= init_nondet_~i~0 13)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37172#(<= init_nondet_~i~0 14)} is VALID [2018-11-23 12:14:59,712 INFO L273 TraceCheckUtils]: 36: Hoare triple {37172#(<= init_nondet_~i~0 14)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {37172#(<= init_nondet_~i~0 14)} is VALID [2018-11-23 12:14:59,712 INFO L273 TraceCheckUtils]: 37: Hoare triple {37172#(<= init_nondet_~i~0 14)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37179#(<= init_nondet_~i~0 15)} is VALID [2018-11-23 12:14:59,713 INFO L273 TraceCheckUtils]: 38: Hoare triple {37179#(<= init_nondet_~i~0 15)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {37179#(<= init_nondet_~i~0 15)} is VALID [2018-11-23 12:14:59,714 INFO L273 TraceCheckUtils]: 39: Hoare triple {37179#(<= init_nondet_~i~0 15)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37186#(<= init_nondet_~i~0 16)} is VALID [2018-11-23 12:14:59,714 INFO L273 TraceCheckUtils]: 40: Hoare triple {37186#(<= init_nondet_~i~0 16)} assume !(~i~0 < 40); {37049#false} is VALID [2018-11-23 12:14:59,714 INFO L273 TraceCheckUtils]: 41: Hoare triple {37049#false} assume true; {37049#false} is VALID [2018-11-23 12:14:59,715 INFO L268 TraceCheckUtils]: 42: Hoare quadruple {37049#false} {37048#true} #82#return; {37049#false} is VALID [2018-11-23 12:14:59,715 INFO L273 TraceCheckUtils]: 43: Hoare triple {37049#false} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {37049#false} is VALID [2018-11-23 12:14:59,715 INFO L256 TraceCheckUtils]: 44: Hoare triple {37049#false} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {37049#false} is VALID [2018-11-23 12:14:59,715 INFO L273 TraceCheckUtils]: 45: Hoare triple {37049#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {37049#false} is VALID [2018-11-23 12:14:59,715 INFO L273 TraceCheckUtils]: 46: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,715 INFO L273 TraceCheckUtils]: 47: Hoare triple {37049#false} assume !(~i~1 > 20); {37049#false} is VALID [2018-11-23 12:14:59,716 INFO L273 TraceCheckUtils]: 48: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,716 INFO L273 TraceCheckUtils]: 49: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,716 INFO L273 TraceCheckUtils]: 50: Hoare triple {37049#false} assume !(~i~1 > 20); {37049#false} is VALID [2018-11-23 12:14:59,716 INFO L273 TraceCheckUtils]: 51: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,716 INFO L273 TraceCheckUtils]: 52: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,716 INFO L273 TraceCheckUtils]: 53: Hoare triple {37049#false} assume !(~i~1 > 20); {37049#false} is VALID [2018-11-23 12:14:59,717 INFO L273 TraceCheckUtils]: 54: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,717 INFO L273 TraceCheckUtils]: 55: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,717 INFO L273 TraceCheckUtils]: 56: Hoare triple {37049#false} assume !(~i~1 > 20); {37049#false} is VALID [2018-11-23 12:14:59,717 INFO L273 TraceCheckUtils]: 57: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,717 INFO L273 TraceCheckUtils]: 58: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,717 INFO L273 TraceCheckUtils]: 59: Hoare triple {37049#false} assume !(~i~1 > 20); {37049#false} is VALID [2018-11-23 12:14:59,718 INFO L273 TraceCheckUtils]: 60: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,718 INFO L273 TraceCheckUtils]: 61: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,718 INFO L273 TraceCheckUtils]: 62: Hoare triple {37049#false} assume !(~i~1 > 20); {37049#false} is VALID [2018-11-23 12:14:59,718 INFO L273 TraceCheckUtils]: 63: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,718 INFO L273 TraceCheckUtils]: 64: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,718 INFO L273 TraceCheckUtils]: 65: Hoare triple {37049#false} assume !(~i~1 > 20); {37049#false} is VALID [2018-11-23 12:14:59,719 INFO L273 TraceCheckUtils]: 66: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,719 INFO L273 TraceCheckUtils]: 67: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,719 INFO L273 TraceCheckUtils]: 68: Hoare triple {37049#false} assume !(~i~1 > 20); {37049#false} is VALID [2018-11-23 12:14:59,719 INFO L273 TraceCheckUtils]: 69: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,719 INFO L273 TraceCheckUtils]: 70: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,719 INFO L273 TraceCheckUtils]: 71: Hoare triple {37049#false} assume !(~i~1 > 20); {37049#false} is VALID [2018-11-23 12:14:59,720 INFO L273 TraceCheckUtils]: 72: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,720 INFO L273 TraceCheckUtils]: 73: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,720 INFO L273 TraceCheckUtils]: 74: Hoare triple {37049#false} assume !(~i~1 > 20); {37049#false} is VALID [2018-11-23 12:14:59,720 INFO L273 TraceCheckUtils]: 75: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,720 INFO L273 TraceCheckUtils]: 76: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,720 INFO L273 TraceCheckUtils]: 77: Hoare triple {37049#false} assume !(~i~1 > 20); {37049#false} is VALID [2018-11-23 12:14:59,721 INFO L273 TraceCheckUtils]: 78: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,721 INFO L273 TraceCheckUtils]: 79: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,721 INFO L273 TraceCheckUtils]: 80: Hoare triple {37049#false} assume !(~i~1 > 20); {37049#false} is VALID [2018-11-23 12:14:59,721 INFO L273 TraceCheckUtils]: 81: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,721 INFO L273 TraceCheckUtils]: 82: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,721 INFO L273 TraceCheckUtils]: 83: Hoare triple {37049#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {37049#false} is VALID [2018-11-23 12:14:59,721 INFO L273 TraceCheckUtils]: 84: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,722 INFO L273 TraceCheckUtils]: 85: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,722 INFO L273 TraceCheckUtils]: 86: Hoare triple {37049#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {37049#false} is VALID [2018-11-23 12:14:59,722 INFO L273 TraceCheckUtils]: 87: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,722 INFO L273 TraceCheckUtils]: 88: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,722 INFO L273 TraceCheckUtils]: 89: Hoare triple {37049#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {37049#false} is VALID [2018-11-23 12:14:59,722 INFO L273 TraceCheckUtils]: 90: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,722 INFO L273 TraceCheckUtils]: 91: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,722 INFO L273 TraceCheckUtils]: 92: Hoare triple {37049#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {37049#false} is VALID [2018-11-23 12:14:59,722 INFO L273 TraceCheckUtils]: 93: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,723 INFO L273 TraceCheckUtils]: 94: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,723 INFO L273 TraceCheckUtils]: 95: Hoare triple {37049#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {37049#false} is VALID [2018-11-23 12:14:59,723 INFO L273 TraceCheckUtils]: 96: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,723 INFO L273 TraceCheckUtils]: 97: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,723 INFO L273 TraceCheckUtils]: 98: Hoare triple {37049#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {37049#false} is VALID [2018-11-23 12:14:59,723 INFO L273 TraceCheckUtils]: 99: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,723 INFO L273 TraceCheckUtils]: 100: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,723 INFO L273 TraceCheckUtils]: 101: Hoare triple {37049#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {37049#false} is VALID [2018-11-23 12:14:59,723 INFO L273 TraceCheckUtils]: 102: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,723 INFO L273 TraceCheckUtils]: 103: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,724 INFO L273 TraceCheckUtils]: 104: Hoare triple {37049#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {37049#false} is VALID [2018-11-23 12:14:59,724 INFO L273 TraceCheckUtils]: 105: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,724 INFO L273 TraceCheckUtils]: 106: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,724 INFO L273 TraceCheckUtils]: 107: Hoare triple {37049#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {37049#false} is VALID [2018-11-23 12:14:59,724 INFO L273 TraceCheckUtils]: 108: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,724 INFO L273 TraceCheckUtils]: 109: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,724 INFO L273 TraceCheckUtils]: 110: Hoare triple {37049#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {37049#false} is VALID [2018-11-23 12:14:59,724 INFO L273 TraceCheckUtils]: 111: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,724 INFO L273 TraceCheckUtils]: 112: Hoare triple {37049#false} assume !(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,724 INFO L273 TraceCheckUtils]: 113: Hoare triple {37049#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {37049#false} is VALID [2018-11-23 12:14:59,725 INFO L273 TraceCheckUtils]: 114: Hoare triple {37049#false} assume true; {37049#false} is VALID [2018-11-23 12:14:59,725 INFO L268 TraceCheckUtils]: 115: Hoare quadruple {37049#false} {37049#false} #84#return; {37049#false} is VALID [2018-11-23 12:14:59,725 INFO L273 TraceCheckUtils]: 116: Hoare triple {37049#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {37049#false} is VALID [2018-11-23 12:14:59,725 INFO L256 TraceCheckUtils]: 117: Hoare triple {37049#false} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {37049#false} is VALID [2018-11-23 12:14:59,725 INFO L273 TraceCheckUtils]: 118: Hoare triple {37049#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {37049#false} is VALID [2018-11-23 12:14:59,725 INFO L273 TraceCheckUtils]: 119: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,725 INFO L273 TraceCheckUtils]: 120: Hoare triple {37049#false} assume !(~i~1 > 20); {37049#false} is VALID [2018-11-23 12:14:59,725 INFO L273 TraceCheckUtils]: 121: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,725 INFO L273 TraceCheckUtils]: 122: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,725 INFO L273 TraceCheckUtils]: 123: Hoare triple {37049#false} assume !(~i~1 > 20); {37049#false} is VALID [2018-11-23 12:14:59,726 INFO L273 TraceCheckUtils]: 124: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,726 INFO L273 TraceCheckUtils]: 125: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,726 INFO L273 TraceCheckUtils]: 126: Hoare triple {37049#false} assume !(~i~1 > 20); {37049#false} is VALID [2018-11-23 12:14:59,726 INFO L273 TraceCheckUtils]: 127: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,726 INFO L273 TraceCheckUtils]: 128: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,726 INFO L273 TraceCheckUtils]: 129: Hoare triple {37049#false} assume !(~i~1 > 20); {37049#false} is VALID [2018-11-23 12:14:59,726 INFO L273 TraceCheckUtils]: 130: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,726 INFO L273 TraceCheckUtils]: 131: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,726 INFO L273 TraceCheckUtils]: 132: Hoare triple {37049#false} assume !(~i~1 > 20); {37049#false} is VALID [2018-11-23 12:14:59,726 INFO L273 TraceCheckUtils]: 133: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,727 INFO L273 TraceCheckUtils]: 134: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,727 INFO L273 TraceCheckUtils]: 135: Hoare triple {37049#false} assume !(~i~1 > 20); {37049#false} is VALID [2018-11-23 12:14:59,727 INFO L273 TraceCheckUtils]: 136: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,727 INFO L273 TraceCheckUtils]: 137: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,727 INFO L273 TraceCheckUtils]: 138: Hoare triple {37049#false} assume !(~i~1 > 20); {37049#false} is VALID [2018-11-23 12:14:59,727 INFO L273 TraceCheckUtils]: 139: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,727 INFO L273 TraceCheckUtils]: 140: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,727 INFO L273 TraceCheckUtils]: 141: Hoare triple {37049#false} assume !(~i~1 > 20); {37049#false} is VALID [2018-11-23 12:14:59,727 INFO L273 TraceCheckUtils]: 142: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,728 INFO L273 TraceCheckUtils]: 143: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,728 INFO L273 TraceCheckUtils]: 144: Hoare triple {37049#false} assume !(~i~1 > 20); {37049#false} is VALID [2018-11-23 12:14:59,728 INFO L273 TraceCheckUtils]: 145: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,728 INFO L273 TraceCheckUtils]: 146: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,728 INFO L273 TraceCheckUtils]: 147: Hoare triple {37049#false} assume !(~i~1 > 20); {37049#false} is VALID [2018-11-23 12:14:59,728 INFO L273 TraceCheckUtils]: 148: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,728 INFO L273 TraceCheckUtils]: 149: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,728 INFO L273 TraceCheckUtils]: 150: Hoare triple {37049#false} assume !(~i~1 > 20); {37049#false} is VALID [2018-11-23 12:14:59,728 INFO L273 TraceCheckUtils]: 151: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,728 INFO L273 TraceCheckUtils]: 152: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,729 INFO L273 TraceCheckUtils]: 153: Hoare triple {37049#false} assume !(~i~1 > 20); {37049#false} is VALID [2018-11-23 12:14:59,729 INFO L273 TraceCheckUtils]: 154: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,729 INFO L273 TraceCheckUtils]: 155: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,729 INFO L273 TraceCheckUtils]: 156: Hoare triple {37049#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {37049#false} is VALID [2018-11-23 12:14:59,729 INFO L273 TraceCheckUtils]: 157: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,729 INFO L273 TraceCheckUtils]: 158: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,729 INFO L273 TraceCheckUtils]: 159: Hoare triple {37049#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {37049#false} is VALID [2018-11-23 12:14:59,729 INFO L273 TraceCheckUtils]: 160: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,729 INFO L273 TraceCheckUtils]: 161: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,729 INFO L273 TraceCheckUtils]: 162: Hoare triple {37049#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {37049#false} is VALID [2018-11-23 12:14:59,730 INFO L273 TraceCheckUtils]: 163: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,730 INFO L273 TraceCheckUtils]: 164: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,730 INFO L273 TraceCheckUtils]: 165: Hoare triple {37049#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {37049#false} is VALID [2018-11-23 12:14:59,730 INFO L273 TraceCheckUtils]: 166: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,730 INFO L273 TraceCheckUtils]: 167: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,730 INFO L273 TraceCheckUtils]: 168: Hoare triple {37049#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {37049#false} is VALID [2018-11-23 12:14:59,730 INFO L273 TraceCheckUtils]: 169: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,730 INFO L273 TraceCheckUtils]: 170: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,730 INFO L273 TraceCheckUtils]: 171: Hoare triple {37049#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {37049#false} is VALID [2018-11-23 12:14:59,730 INFO L273 TraceCheckUtils]: 172: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,731 INFO L273 TraceCheckUtils]: 173: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,731 INFO L273 TraceCheckUtils]: 174: Hoare triple {37049#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {37049#false} is VALID [2018-11-23 12:14:59,731 INFO L273 TraceCheckUtils]: 175: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,731 INFO L273 TraceCheckUtils]: 176: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,731 INFO L273 TraceCheckUtils]: 177: Hoare triple {37049#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {37049#false} is VALID [2018-11-23 12:14:59,731 INFO L273 TraceCheckUtils]: 178: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,731 INFO L273 TraceCheckUtils]: 179: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,731 INFO L273 TraceCheckUtils]: 180: Hoare triple {37049#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {37049#false} is VALID [2018-11-23 12:14:59,731 INFO L273 TraceCheckUtils]: 181: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,731 INFO L273 TraceCheckUtils]: 182: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,732 INFO L273 TraceCheckUtils]: 183: Hoare triple {37049#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {37049#false} is VALID [2018-11-23 12:14:59,732 INFO L273 TraceCheckUtils]: 184: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,732 INFO L273 TraceCheckUtils]: 185: Hoare triple {37049#false} assume !(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,732 INFO L273 TraceCheckUtils]: 186: Hoare triple {37049#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {37049#false} is VALID [2018-11-23 12:14:59,732 INFO L273 TraceCheckUtils]: 187: Hoare triple {37049#false} assume true; {37049#false} is VALID [2018-11-23 12:14:59,732 INFO L268 TraceCheckUtils]: 188: Hoare quadruple {37049#false} {37049#false} #86#return; {37049#false} is VALID [2018-11-23 12:14:59,732 INFO L273 TraceCheckUtils]: 189: Hoare triple {37049#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {37049#false} is VALID [2018-11-23 12:14:59,732 INFO L273 TraceCheckUtils]: 190: Hoare triple {37049#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {37049#false} is VALID [2018-11-23 12:14:59,732 INFO L273 TraceCheckUtils]: 191: Hoare triple {37049#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {37049#false} is VALID [2018-11-23 12:14:59,732 INFO L273 TraceCheckUtils]: 192: Hoare triple {37049#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {37049#false} is VALID [2018-11-23 12:14:59,733 INFO L273 TraceCheckUtils]: 193: Hoare triple {37049#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {37049#false} is VALID [2018-11-23 12:14:59,733 INFO L273 TraceCheckUtils]: 194: Hoare triple {37049#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {37049#false} is VALID [2018-11-23 12:14:59,733 INFO L273 TraceCheckUtils]: 195: Hoare triple {37049#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {37049#false} is VALID [2018-11-23 12:14:59,733 INFO L273 TraceCheckUtils]: 196: Hoare triple {37049#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {37049#false} is VALID [2018-11-23 12:14:59,733 INFO L273 TraceCheckUtils]: 197: Hoare triple {37049#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {37049#false} is VALID [2018-11-23 12:14:59,733 INFO L273 TraceCheckUtils]: 198: Hoare triple {37049#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {37049#false} is VALID [2018-11-23 12:14:59,733 INFO L273 TraceCheckUtils]: 199: Hoare triple {37049#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {37049#false} is VALID [2018-11-23 12:14:59,733 INFO L273 TraceCheckUtils]: 200: Hoare triple {37049#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {37049#false} is VALID [2018-11-23 12:14:59,733 INFO L273 TraceCheckUtils]: 201: Hoare triple {37049#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {37049#false} is VALID [2018-11-23 12:14:59,733 INFO L273 TraceCheckUtils]: 202: Hoare triple {37049#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {37049#false} is VALID [2018-11-23 12:14:59,734 INFO L273 TraceCheckUtils]: 203: Hoare triple {37049#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {37049#false} is VALID [2018-11-23 12:14:59,734 INFO L273 TraceCheckUtils]: 204: Hoare triple {37049#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {37049#false} is VALID [2018-11-23 12:14:59,734 INFO L273 TraceCheckUtils]: 205: Hoare triple {37049#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {37049#false} is VALID [2018-11-23 12:14:59,734 INFO L273 TraceCheckUtils]: 206: Hoare triple {37049#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {37049#false} is VALID [2018-11-23 12:14:59,734 INFO L273 TraceCheckUtils]: 207: Hoare triple {37049#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {37049#false} is VALID [2018-11-23 12:14:59,734 INFO L273 TraceCheckUtils]: 208: Hoare triple {37049#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {37049#false} is VALID [2018-11-23 12:14:59,734 INFO L273 TraceCheckUtils]: 209: Hoare triple {37049#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {37049#false} is VALID [2018-11-23 12:14:59,734 INFO L273 TraceCheckUtils]: 210: Hoare triple {37049#false} assume !(~i~2 < 39); {37049#false} is VALID [2018-11-23 12:14:59,734 INFO L273 TraceCheckUtils]: 211: Hoare triple {37049#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {37049#false} is VALID [2018-11-23 12:14:59,734 INFO L256 TraceCheckUtils]: 212: Hoare triple {37049#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {37049#false} is VALID [2018-11-23 12:14:59,735 INFO L273 TraceCheckUtils]: 213: Hoare triple {37049#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {37049#false} is VALID [2018-11-23 12:14:59,735 INFO L273 TraceCheckUtils]: 214: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,735 INFO L273 TraceCheckUtils]: 215: Hoare triple {37049#false} assume !(~i~1 > 20); {37049#false} is VALID [2018-11-23 12:14:59,735 INFO L273 TraceCheckUtils]: 216: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,735 INFO L273 TraceCheckUtils]: 217: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,735 INFO L273 TraceCheckUtils]: 218: Hoare triple {37049#false} assume !(~i~1 > 20); {37049#false} is VALID [2018-11-23 12:14:59,735 INFO L273 TraceCheckUtils]: 219: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,735 INFO L273 TraceCheckUtils]: 220: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,735 INFO L273 TraceCheckUtils]: 221: Hoare triple {37049#false} assume !(~i~1 > 20); {37049#false} is VALID [2018-11-23 12:14:59,736 INFO L273 TraceCheckUtils]: 222: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,736 INFO L273 TraceCheckUtils]: 223: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,736 INFO L273 TraceCheckUtils]: 224: Hoare triple {37049#false} assume !(~i~1 > 20); {37049#false} is VALID [2018-11-23 12:14:59,736 INFO L273 TraceCheckUtils]: 225: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,736 INFO L273 TraceCheckUtils]: 226: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,736 INFO L273 TraceCheckUtils]: 227: Hoare triple {37049#false} assume !(~i~1 > 20); {37049#false} is VALID [2018-11-23 12:14:59,736 INFO L273 TraceCheckUtils]: 228: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,736 INFO L273 TraceCheckUtils]: 229: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,736 INFO L273 TraceCheckUtils]: 230: Hoare triple {37049#false} assume !(~i~1 > 20); {37049#false} is VALID [2018-11-23 12:14:59,736 INFO L273 TraceCheckUtils]: 231: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,737 INFO L273 TraceCheckUtils]: 232: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,737 INFO L273 TraceCheckUtils]: 233: Hoare triple {37049#false} assume !(~i~1 > 20); {37049#false} is VALID [2018-11-23 12:14:59,737 INFO L273 TraceCheckUtils]: 234: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,737 INFO L273 TraceCheckUtils]: 235: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,737 INFO L273 TraceCheckUtils]: 236: Hoare triple {37049#false} assume !(~i~1 > 20); {37049#false} is VALID [2018-11-23 12:14:59,737 INFO L273 TraceCheckUtils]: 237: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,737 INFO L273 TraceCheckUtils]: 238: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,737 INFO L273 TraceCheckUtils]: 239: Hoare triple {37049#false} assume !(~i~1 > 20); {37049#false} is VALID [2018-11-23 12:14:59,737 INFO L273 TraceCheckUtils]: 240: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,737 INFO L273 TraceCheckUtils]: 241: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,738 INFO L273 TraceCheckUtils]: 242: Hoare triple {37049#false} assume !(~i~1 > 20); {37049#false} is VALID [2018-11-23 12:14:59,738 INFO L273 TraceCheckUtils]: 243: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,738 INFO L273 TraceCheckUtils]: 244: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,738 INFO L273 TraceCheckUtils]: 245: Hoare triple {37049#false} assume !(~i~1 > 20); {37049#false} is VALID [2018-11-23 12:14:59,738 INFO L273 TraceCheckUtils]: 246: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,738 INFO L273 TraceCheckUtils]: 247: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,738 INFO L273 TraceCheckUtils]: 248: Hoare triple {37049#false} assume !(~i~1 > 20); {37049#false} is VALID [2018-11-23 12:14:59,738 INFO L273 TraceCheckUtils]: 249: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,738 INFO L273 TraceCheckUtils]: 250: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,738 INFO L273 TraceCheckUtils]: 251: Hoare triple {37049#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {37049#false} is VALID [2018-11-23 12:14:59,739 INFO L273 TraceCheckUtils]: 252: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,739 INFO L273 TraceCheckUtils]: 253: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,739 INFO L273 TraceCheckUtils]: 254: Hoare triple {37049#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {37049#false} is VALID [2018-11-23 12:14:59,739 INFO L273 TraceCheckUtils]: 255: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,739 INFO L273 TraceCheckUtils]: 256: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,739 INFO L273 TraceCheckUtils]: 257: Hoare triple {37049#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {37049#false} is VALID [2018-11-23 12:14:59,739 INFO L273 TraceCheckUtils]: 258: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,739 INFO L273 TraceCheckUtils]: 259: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,739 INFO L273 TraceCheckUtils]: 260: Hoare triple {37049#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {37049#false} is VALID [2018-11-23 12:14:59,739 INFO L273 TraceCheckUtils]: 261: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,740 INFO L273 TraceCheckUtils]: 262: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,740 INFO L273 TraceCheckUtils]: 263: Hoare triple {37049#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {37049#false} is VALID [2018-11-23 12:14:59,740 INFO L273 TraceCheckUtils]: 264: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,740 INFO L273 TraceCheckUtils]: 265: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,740 INFO L273 TraceCheckUtils]: 266: Hoare triple {37049#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {37049#false} is VALID [2018-11-23 12:14:59,740 INFO L273 TraceCheckUtils]: 267: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,740 INFO L273 TraceCheckUtils]: 268: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,740 INFO L273 TraceCheckUtils]: 269: Hoare triple {37049#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {37049#false} is VALID [2018-11-23 12:14:59,740 INFO L273 TraceCheckUtils]: 270: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,740 INFO L273 TraceCheckUtils]: 271: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,741 INFO L273 TraceCheckUtils]: 272: Hoare triple {37049#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {37049#false} is VALID [2018-11-23 12:14:59,741 INFO L273 TraceCheckUtils]: 273: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,741 INFO L273 TraceCheckUtils]: 274: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,741 INFO L273 TraceCheckUtils]: 275: Hoare triple {37049#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {37049#false} is VALID [2018-11-23 12:14:59,741 INFO L273 TraceCheckUtils]: 276: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,741 INFO L273 TraceCheckUtils]: 277: Hoare triple {37049#false} assume !!(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,741 INFO L273 TraceCheckUtils]: 278: Hoare triple {37049#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {37049#false} is VALID [2018-11-23 12:14:59,741 INFO L273 TraceCheckUtils]: 279: Hoare triple {37049#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {37049#false} is VALID [2018-11-23 12:14:59,741 INFO L273 TraceCheckUtils]: 280: Hoare triple {37049#false} assume !(~i~1 < 40); {37049#false} is VALID [2018-11-23 12:14:59,742 INFO L273 TraceCheckUtils]: 281: Hoare triple {37049#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {37049#false} is VALID [2018-11-23 12:14:59,742 INFO L273 TraceCheckUtils]: 282: Hoare triple {37049#false} assume true; {37049#false} is VALID [2018-11-23 12:14:59,742 INFO L268 TraceCheckUtils]: 283: Hoare quadruple {37049#false} {37049#false} #88#return; {37049#false} is VALID [2018-11-23 12:14:59,742 INFO L273 TraceCheckUtils]: 284: Hoare triple {37049#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {37049#false} is VALID [2018-11-23 12:14:59,742 INFO L273 TraceCheckUtils]: 285: Hoare triple {37049#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {37049#false} is VALID [2018-11-23 12:14:59,742 INFO L273 TraceCheckUtils]: 286: Hoare triple {37049#false} assume !false; {37049#false} is VALID [2018-11-23 12:14:59,774 INFO L134 CoverageAnalysis]: Checked inductivity of 7004 backedges. 0 proven. 256 refuted. 0 times theorem prover too weak. 6748 trivial. 0 not checked. [2018-11-23 12:14:59,794 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:14:59,794 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [19] total 19 [2018-11-23 12:14:59,794 INFO L78 Accepts]: Start accepts. Automaton has 19 states. Word has length 287 [2018-11-23 12:14:59,795 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:14:59,795 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 19 states. [2018-11-23 12:14:59,867 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 67 edges. 67 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:14:59,867 INFO L459 AbstractCegarLoop]: Interpolant automaton has 19 states [2018-11-23 12:14:59,868 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2018-11-23 12:14:59,868 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=171, Invalid=171, Unknown=0, NotChecked=0, Total=342 [2018-11-23 12:14:59,868 INFO L87 Difference]: Start difference. First operand 146 states and 161 transitions. Second operand 19 states. [2018-11-23 12:15:00,117 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:00,118 INFO L93 Difference]: Finished difference Result 254 states and 284 transitions. [2018-11-23 12:15:00,118 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2018-11-23 12:15:00,118 INFO L78 Accepts]: Start accepts. Automaton has 19 states. Word has length 287 [2018-11-23 12:15:00,118 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:15:00,118 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 19 states. [2018-11-23 12:15:00,119 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 100 transitions. [2018-11-23 12:15:00,119 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 19 states. [2018-11-23 12:15:00,120 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 100 transitions. [2018-11-23 12:15:00,120 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 19 states and 100 transitions. [2018-11-23 12:15:00,221 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-23 12:15:00,225 INFO L225 Difference]: With dead ends: 254 [2018-11-23 12:15:00,225 INFO L226 Difference]: Without dead ends: 149 [2018-11-23 12:15:00,226 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 286 GetRequests, 269 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=171, Invalid=171, Unknown=0, NotChecked=0, Total=342 [2018-11-23 12:15:00,226 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 149 states. [2018-11-23 12:15:00,434 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 149 to 148. [2018-11-23 12:15:00,434 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:15:00,434 INFO L82 GeneralOperation]: Start isEquivalent. First operand 149 states. Second operand 148 states. [2018-11-23 12:15:00,435 INFO L74 IsIncluded]: Start isIncluded. First operand 149 states. Second operand 148 states. [2018-11-23 12:15:00,435 INFO L87 Difference]: Start difference. First operand 149 states. Second operand 148 states. [2018-11-23 12:15:00,437 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:00,437 INFO L93 Difference]: Finished difference Result 149 states and 164 transitions. [2018-11-23 12:15:00,437 INFO L276 IsEmpty]: Start isEmpty. Operand 149 states and 164 transitions. [2018-11-23 12:15:00,438 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:15:00,438 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:15:00,438 INFO L74 IsIncluded]: Start isIncluded. First operand 148 states. Second operand 149 states. [2018-11-23 12:15:00,438 INFO L87 Difference]: Start difference. First operand 148 states. Second operand 149 states. [2018-11-23 12:15:00,440 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:00,441 INFO L93 Difference]: Finished difference Result 149 states and 164 transitions. [2018-11-23 12:15:00,441 INFO L276 IsEmpty]: Start isEmpty. Operand 149 states and 164 transitions. [2018-11-23 12:15:00,441 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:15:00,441 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:15:00,441 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:15:00,441 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:15:00,441 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 148 states. [2018-11-23 12:15:00,443 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 148 states to 148 states and 163 transitions. [2018-11-23 12:15:00,443 INFO L78 Accepts]: Start accepts. Automaton has 148 states and 163 transitions. Word has length 287 [2018-11-23 12:15:00,443 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:15:00,444 INFO L480 AbstractCegarLoop]: Abstraction has 148 states and 163 transitions. [2018-11-23 12:15:00,444 INFO L481 AbstractCegarLoop]: Interpolant automaton has 19 states. [2018-11-23 12:15:00,444 INFO L276 IsEmpty]: Start isEmpty. Operand 148 states and 163 transitions. [2018-11-23 12:15:00,445 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 290 [2018-11-23 12:15:00,445 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:15:00,445 INFO L402 BasicCegarLoop]: trace histogram [66, 66, 36, 30, 17, 17, 10, 10, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:15:00,445 INFO L423 AbstractCegarLoop]: === Iteration 44 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:15:00,446 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:15:00,446 INFO L82 PathProgramCache]: Analyzing trace with hash 709136226, now seen corresponding path program 39 times [2018-11-23 12:15:00,446 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:15:00,446 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:15:00,446 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:15:00,446 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:15:00,447 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:15:00,459 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:15:00,459 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:15:00,459 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 45 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 45 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:15:00,476 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-23 12:15:00,906 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 12 check-sat command(s) [2018-11-23 12:15:00,906 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:15:00,975 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:15:00,977 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:15:01,454 INFO L256 TraceCheckUtils]: 0: Hoare triple {38789#true} call ULTIMATE.init(); {38789#true} is VALID [2018-11-23 12:15:01,454 INFO L273 TraceCheckUtils]: 1: Hoare triple {38789#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {38789#true} is VALID [2018-11-23 12:15:01,454 INFO L273 TraceCheckUtils]: 2: Hoare triple {38789#true} assume true; {38789#true} is VALID [2018-11-23 12:15:01,455 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {38789#true} {38789#true} #78#return; {38789#true} is VALID [2018-11-23 12:15:01,455 INFO L256 TraceCheckUtils]: 4: Hoare triple {38789#true} call #t~ret12 := main(); {38789#true} is VALID [2018-11-23 12:15:01,455 INFO L273 TraceCheckUtils]: 5: Hoare triple {38789#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {38809#(= |main_~#x~0.offset| 0)} is VALID [2018-11-23 12:15:01,455 INFO L256 TraceCheckUtils]: 6: Hoare triple {38809#(= |main_~#x~0.offset| 0)} call init_nondet(~#x~0.base, ~#x~0.offset); {38789#true} is VALID [2018-11-23 12:15:01,456 INFO L273 TraceCheckUtils]: 7: Hoare triple {38789#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {38789#true} is VALID [2018-11-23 12:15:01,456 INFO L273 TraceCheckUtils]: 8: Hoare triple {38789#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {38789#true} is VALID [2018-11-23 12:15:01,456 INFO L273 TraceCheckUtils]: 9: Hoare triple {38789#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {38789#true} is VALID [2018-11-23 12:15:01,456 INFO L273 TraceCheckUtils]: 10: Hoare triple {38789#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {38789#true} is VALID [2018-11-23 12:15:01,456 INFO L273 TraceCheckUtils]: 11: Hoare triple {38789#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {38789#true} is VALID [2018-11-23 12:15:01,456 INFO L273 TraceCheckUtils]: 12: Hoare triple {38789#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {38789#true} is VALID [2018-11-23 12:15:01,456 INFO L273 TraceCheckUtils]: 13: Hoare triple {38789#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {38789#true} is VALID [2018-11-23 12:15:01,456 INFO L273 TraceCheckUtils]: 14: Hoare triple {38789#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {38789#true} is VALID [2018-11-23 12:15:01,456 INFO L273 TraceCheckUtils]: 15: Hoare triple {38789#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {38789#true} is VALID [2018-11-23 12:15:01,457 INFO L273 TraceCheckUtils]: 16: Hoare triple {38789#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {38789#true} is VALID [2018-11-23 12:15:01,457 INFO L273 TraceCheckUtils]: 17: Hoare triple {38789#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {38789#true} is VALID [2018-11-23 12:15:01,457 INFO L273 TraceCheckUtils]: 18: Hoare triple {38789#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {38789#true} is VALID [2018-11-23 12:15:01,457 INFO L273 TraceCheckUtils]: 19: Hoare triple {38789#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {38789#true} is VALID [2018-11-23 12:15:01,457 INFO L273 TraceCheckUtils]: 20: Hoare triple {38789#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {38789#true} is VALID [2018-11-23 12:15:01,457 INFO L273 TraceCheckUtils]: 21: Hoare triple {38789#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {38789#true} is VALID [2018-11-23 12:15:01,457 INFO L273 TraceCheckUtils]: 22: Hoare triple {38789#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {38789#true} is VALID [2018-11-23 12:15:01,457 INFO L273 TraceCheckUtils]: 23: Hoare triple {38789#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {38789#true} is VALID [2018-11-23 12:15:01,458 INFO L273 TraceCheckUtils]: 24: Hoare triple {38789#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {38789#true} is VALID [2018-11-23 12:15:01,458 INFO L273 TraceCheckUtils]: 25: Hoare triple {38789#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {38789#true} is VALID [2018-11-23 12:15:01,458 INFO L273 TraceCheckUtils]: 26: Hoare triple {38789#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {38789#true} is VALID [2018-11-23 12:15:01,458 INFO L273 TraceCheckUtils]: 27: Hoare triple {38789#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {38789#true} is VALID [2018-11-23 12:15:01,458 INFO L273 TraceCheckUtils]: 28: Hoare triple {38789#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {38789#true} is VALID [2018-11-23 12:15:01,458 INFO L273 TraceCheckUtils]: 29: Hoare triple {38789#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {38789#true} is VALID [2018-11-23 12:15:01,459 INFO L273 TraceCheckUtils]: 30: Hoare triple {38789#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {38789#true} is VALID [2018-11-23 12:15:01,459 INFO L273 TraceCheckUtils]: 31: Hoare triple {38789#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {38789#true} is VALID [2018-11-23 12:15:01,459 INFO L273 TraceCheckUtils]: 32: Hoare triple {38789#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {38789#true} is VALID [2018-11-23 12:15:01,459 INFO L273 TraceCheckUtils]: 33: Hoare triple {38789#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {38789#true} is VALID [2018-11-23 12:15:01,459 INFO L273 TraceCheckUtils]: 34: Hoare triple {38789#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {38789#true} is VALID [2018-11-23 12:15:01,459 INFO L273 TraceCheckUtils]: 35: Hoare triple {38789#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {38789#true} is VALID [2018-11-23 12:15:01,459 INFO L273 TraceCheckUtils]: 36: Hoare triple {38789#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {38789#true} is VALID [2018-11-23 12:15:01,460 INFO L273 TraceCheckUtils]: 37: Hoare triple {38789#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {38789#true} is VALID [2018-11-23 12:15:01,460 INFO L273 TraceCheckUtils]: 38: Hoare triple {38789#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {38789#true} is VALID [2018-11-23 12:15:01,460 INFO L273 TraceCheckUtils]: 39: Hoare triple {38789#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {38789#true} is VALID [2018-11-23 12:15:01,460 INFO L273 TraceCheckUtils]: 40: Hoare triple {38789#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {38789#true} is VALID [2018-11-23 12:15:01,460 INFO L273 TraceCheckUtils]: 41: Hoare triple {38789#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {38789#true} is VALID [2018-11-23 12:15:01,460 INFO L273 TraceCheckUtils]: 42: Hoare triple {38789#true} assume !(~i~0 < 40); {38789#true} is VALID [2018-11-23 12:15:01,460 INFO L273 TraceCheckUtils]: 43: Hoare triple {38789#true} assume true; {38789#true} is VALID [2018-11-23 12:15:01,461 INFO L268 TraceCheckUtils]: 44: Hoare quadruple {38789#true} {38809#(= |main_~#x~0.offset| 0)} #82#return; {38809#(= |main_~#x~0.offset| 0)} is VALID [2018-11-23 12:15:01,461 INFO L273 TraceCheckUtils]: 45: Hoare triple {38809#(= |main_~#x~0.offset| 0)} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {38809#(= |main_~#x~0.offset| 0)} is VALID [2018-11-23 12:15:01,461 INFO L256 TraceCheckUtils]: 46: Hoare triple {38809#(= |main_~#x~0.offset| 0)} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {38789#true} is VALID [2018-11-23 12:15:01,461 INFO L273 TraceCheckUtils]: 47: Hoare triple {38789#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {38789#true} is VALID [2018-11-23 12:15:01,461 INFO L273 TraceCheckUtils]: 48: Hoare triple {38789#true} assume !!(~i~1 < 40); {38789#true} is VALID [2018-11-23 12:15:01,462 INFO L273 TraceCheckUtils]: 49: Hoare triple {38789#true} assume !(~i~1 > 20); {38789#true} is VALID [2018-11-23 12:15:01,462 INFO L273 TraceCheckUtils]: 50: Hoare triple {38789#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38789#true} is VALID [2018-11-23 12:15:01,462 INFO L273 TraceCheckUtils]: 51: Hoare triple {38789#true} assume !!(~i~1 < 40); {38789#true} is VALID [2018-11-23 12:15:01,462 INFO L273 TraceCheckUtils]: 52: Hoare triple {38789#true} assume !(~i~1 > 20); {38789#true} is VALID [2018-11-23 12:15:01,462 INFO L273 TraceCheckUtils]: 53: Hoare triple {38789#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38789#true} is VALID [2018-11-23 12:15:01,462 INFO L273 TraceCheckUtils]: 54: Hoare triple {38789#true} assume !!(~i~1 < 40); {38789#true} is VALID [2018-11-23 12:15:01,462 INFO L273 TraceCheckUtils]: 55: Hoare triple {38789#true} assume !(~i~1 > 20); {38789#true} is VALID [2018-11-23 12:15:01,462 INFO L273 TraceCheckUtils]: 56: Hoare triple {38789#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38789#true} is VALID [2018-11-23 12:15:01,462 INFO L273 TraceCheckUtils]: 57: Hoare triple {38789#true} assume !!(~i~1 < 40); {38789#true} is VALID [2018-11-23 12:15:01,462 INFO L273 TraceCheckUtils]: 58: Hoare triple {38789#true} assume !(~i~1 > 20); {38789#true} is VALID [2018-11-23 12:15:01,463 INFO L273 TraceCheckUtils]: 59: Hoare triple {38789#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38789#true} is VALID [2018-11-23 12:15:01,463 INFO L273 TraceCheckUtils]: 60: Hoare triple {38789#true} assume !!(~i~1 < 40); {38789#true} is VALID [2018-11-23 12:15:01,463 INFO L273 TraceCheckUtils]: 61: Hoare triple {38789#true} assume !(~i~1 > 20); {38789#true} is VALID [2018-11-23 12:15:01,463 INFO L273 TraceCheckUtils]: 62: Hoare triple {38789#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38789#true} is VALID [2018-11-23 12:15:01,463 INFO L273 TraceCheckUtils]: 63: Hoare triple {38789#true} assume !!(~i~1 < 40); {38789#true} is VALID [2018-11-23 12:15:01,463 INFO L273 TraceCheckUtils]: 64: Hoare triple {38789#true} assume !(~i~1 > 20); {38789#true} is VALID [2018-11-23 12:15:01,463 INFO L273 TraceCheckUtils]: 65: Hoare triple {38789#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38789#true} is VALID [2018-11-23 12:15:01,463 INFO L273 TraceCheckUtils]: 66: Hoare triple {38789#true} assume !!(~i~1 < 40); {38789#true} is VALID [2018-11-23 12:15:01,463 INFO L273 TraceCheckUtils]: 67: Hoare triple {38789#true} assume !(~i~1 > 20); {38789#true} is VALID [2018-11-23 12:15:01,464 INFO L273 TraceCheckUtils]: 68: Hoare triple {38789#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38789#true} is VALID [2018-11-23 12:15:01,464 INFO L273 TraceCheckUtils]: 69: Hoare triple {38789#true} assume !!(~i~1 < 40); {38789#true} is VALID [2018-11-23 12:15:01,464 INFO L273 TraceCheckUtils]: 70: Hoare triple {38789#true} assume !(~i~1 > 20); {38789#true} is VALID [2018-11-23 12:15:01,464 INFO L273 TraceCheckUtils]: 71: Hoare triple {38789#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38789#true} is VALID [2018-11-23 12:15:01,464 INFO L273 TraceCheckUtils]: 72: Hoare triple {38789#true} assume !!(~i~1 < 40); {38789#true} is VALID [2018-11-23 12:15:01,464 INFO L273 TraceCheckUtils]: 73: Hoare triple {38789#true} assume !(~i~1 > 20); {38789#true} is VALID [2018-11-23 12:15:01,464 INFO L273 TraceCheckUtils]: 74: Hoare triple {38789#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38789#true} is VALID [2018-11-23 12:15:01,464 INFO L273 TraceCheckUtils]: 75: Hoare triple {38789#true} assume !!(~i~1 < 40); {38789#true} is VALID [2018-11-23 12:15:01,464 INFO L273 TraceCheckUtils]: 76: Hoare triple {38789#true} assume !(~i~1 > 20); {38789#true} is VALID [2018-11-23 12:15:01,464 INFO L273 TraceCheckUtils]: 77: Hoare triple {38789#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38789#true} is VALID [2018-11-23 12:15:01,465 INFO L273 TraceCheckUtils]: 78: Hoare triple {38789#true} assume !!(~i~1 < 40); {38789#true} is VALID [2018-11-23 12:15:01,465 INFO L273 TraceCheckUtils]: 79: Hoare triple {38789#true} assume !(~i~1 > 20); {38789#true} is VALID [2018-11-23 12:15:01,465 INFO L273 TraceCheckUtils]: 80: Hoare triple {38789#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38789#true} is VALID [2018-11-23 12:15:01,465 INFO L273 TraceCheckUtils]: 81: Hoare triple {38789#true} assume !!(~i~1 < 40); {38789#true} is VALID [2018-11-23 12:15:01,465 INFO L273 TraceCheckUtils]: 82: Hoare triple {38789#true} assume !(~i~1 > 20); {38789#true} is VALID [2018-11-23 12:15:01,465 INFO L273 TraceCheckUtils]: 83: Hoare triple {38789#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38789#true} is VALID [2018-11-23 12:15:01,465 INFO L273 TraceCheckUtils]: 84: Hoare triple {38789#true} assume !!(~i~1 < 40); {38789#true} is VALID [2018-11-23 12:15:01,465 INFO L273 TraceCheckUtils]: 85: Hoare triple {38789#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {38789#true} is VALID [2018-11-23 12:15:01,465 INFO L273 TraceCheckUtils]: 86: Hoare triple {38789#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38789#true} is VALID [2018-11-23 12:15:01,465 INFO L273 TraceCheckUtils]: 87: Hoare triple {38789#true} assume !!(~i~1 < 40); {38789#true} is VALID [2018-11-23 12:15:01,466 INFO L273 TraceCheckUtils]: 88: Hoare triple {38789#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {38789#true} is VALID [2018-11-23 12:15:01,466 INFO L273 TraceCheckUtils]: 89: Hoare triple {38789#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38789#true} is VALID [2018-11-23 12:15:01,466 INFO L273 TraceCheckUtils]: 90: Hoare triple {38789#true} assume !!(~i~1 < 40); {38789#true} is VALID [2018-11-23 12:15:01,466 INFO L273 TraceCheckUtils]: 91: Hoare triple {38789#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {38789#true} is VALID [2018-11-23 12:15:01,466 INFO L273 TraceCheckUtils]: 92: Hoare triple {38789#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38789#true} is VALID [2018-11-23 12:15:01,466 INFO L273 TraceCheckUtils]: 93: Hoare triple {38789#true} assume !!(~i~1 < 40); {38789#true} is VALID [2018-11-23 12:15:01,466 INFO L273 TraceCheckUtils]: 94: Hoare triple {38789#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {38789#true} is VALID [2018-11-23 12:15:01,466 INFO L273 TraceCheckUtils]: 95: Hoare triple {38789#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38789#true} is VALID [2018-11-23 12:15:01,466 INFO L273 TraceCheckUtils]: 96: Hoare triple {38789#true} assume !!(~i~1 < 40); {38789#true} is VALID [2018-11-23 12:15:01,466 INFO L273 TraceCheckUtils]: 97: Hoare triple {38789#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {38789#true} is VALID [2018-11-23 12:15:01,467 INFO L273 TraceCheckUtils]: 98: Hoare triple {38789#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38789#true} is VALID [2018-11-23 12:15:01,467 INFO L273 TraceCheckUtils]: 99: Hoare triple {38789#true} assume !!(~i~1 < 40); {38789#true} is VALID [2018-11-23 12:15:01,467 INFO L273 TraceCheckUtils]: 100: Hoare triple {38789#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {38789#true} is VALID [2018-11-23 12:15:01,467 INFO L273 TraceCheckUtils]: 101: Hoare triple {38789#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38789#true} is VALID [2018-11-23 12:15:01,467 INFO L273 TraceCheckUtils]: 102: Hoare triple {38789#true} assume !!(~i~1 < 40); {38789#true} is VALID [2018-11-23 12:15:01,467 INFO L273 TraceCheckUtils]: 103: Hoare triple {38789#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {38789#true} is VALID [2018-11-23 12:15:01,467 INFO L273 TraceCheckUtils]: 104: Hoare triple {38789#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38789#true} is VALID [2018-11-23 12:15:01,467 INFO L273 TraceCheckUtils]: 105: Hoare triple {38789#true} assume !!(~i~1 < 40); {38789#true} is VALID [2018-11-23 12:15:01,467 INFO L273 TraceCheckUtils]: 106: Hoare triple {38789#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {38789#true} is VALID [2018-11-23 12:15:01,467 INFO L273 TraceCheckUtils]: 107: Hoare triple {38789#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38789#true} is VALID [2018-11-23 12:15:01,468 INFO L273 TraceCheckUtils]: 108: Hoare triple {38789#true} assume !!(~i~1 < 40); {38789#true} is VALID [2018-11-23 12:15:01,468 INFO L273 TraceCheckUtils]: 109: Hoare triple {38789#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {38789#true} is VALID [2018-11-23 12:15:01,468 INFO L273 TraceCheckUtils]: 110: Hoare triple {38789#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38789#true} is VALID [2018-11-23 12:15:01,468 INFO L273 TraceCheckUtils]: 111: Hoare triple {38789#true} assume !!(~i~1 < 40); {38789#true} is VALID [2018-11-23 12:15:01,468 INFO L273 TraceCheckUtils]: 112: Hoare triple {38789#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {38789#true} is VALID [2018-11-23 12:15:01,468 INFO L273 TraceCheckUtils]: 113: Hoare triple {38789#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38789#true} is VALID [2018-11-23 12:15:01,468 INFO L273 TraceCheckUtils]: 114: Hoare triple {38789#true} assume !(~i~1 < 40); {38789#true} is VALID [2018-11-23 12:15:01,468 INFO L273 TraceCheckUtils]: 115: Hoare triple {38789#true} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {38789#true} is VALID [2018-11-23 12:15:01,468 INFO L273 TraceCheckUtils]: 116: Hoare triple {38789#true} assume true; {38789#true} is VALID [2018-11-23 12:15:01,469 INFO L268 TraceCheckUtils]: 117: Hoare quadruple {38789#true} {38809#(= |main_~#x~0.offset| 0)} #84#return; {38809#(= |main_~#x~0.offset| 0)} is VALID [2018-11-23 12:15:01,469 INFO L273 TraceCheckUtils]: 118: Hoare triple {38809#(= |main_~#x~0.offset| 0)} 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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {38809#(= |main_~#x~0.offset| 0)} is VALID [2018-11-23 12:15:01,470 INFO L256 TraceCheckUtils]: 119: Hoare triple {38809#(= |main_~#x~0.offset| 0)} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {38789#true} is VALID [2018-11-23 12:15:01,470 INFO L273 TraceCheckUtils]: 120: Hoare triple {38789#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {38789#true} is VALID [2018-11-23 12:15:01,470 INFO L273 TraceCheckUtils]: 121: Hoare triple {38789#true} assume !!(~i~1 < 40); {38789#true} is VALID [2018-11-23 12:15:01,470 INFO L273 TraceCheckUtils]: 122: Hoare triple {38789#true} assume !(~i~1 > 20); {38789#true} is VALID [2018-11-23 12:15:01,470 INFO L273 TraceCheckUtils]: 123: Hoare triple {38789#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38789#true} is VALID [2018-11-23 12:15:01,470 INFO L273 TraceCheckUtils]: 124: Hoare triple {38789#true} assume !!(~i~1 < 40); {38789#true} is VALID [2018-11-23 12:15:01,470 INFO L273 TraceCheckUtils]: 125: Hoare triple {38789#true} assume !(~i~1 > 20); {38789#true} is VALID [2018-11-23 12:15:01,470 INFO L273 TraceCheckUtils]: 126: Hoare triple {38789#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38789#true} is VALID [2018-11-23 12:15:01,470 INFO L273 TraceCheckUtils]: 127: Hoare triple {38789#true} assume !!(~i~1 < 40); {38789#true} is VALID [2018-11-23 12:15:01,470 INFO L273 TraceCheckUtils]: 128: Hoare triple {38789#true} assume !(~i~1 > 20); {38789#true} is VALID [2018-11-23 12:15:01,471 INFO L273 TraceCheckUtils]: 129: Hoare triple {38789#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38789#true} is VALID [2018-11-23 12:15:01,471 INFO L273 TraceCheckUtils]: 130: Hoare triple {38789#true} assume !!(~i~1 < 40); {38789#true} is VALID [2018-11-23 12:15:01,471 INFO L273 TraceCheckUtils]: 131: Hoare triple {38789#true} assume !(~i~1 > 20); {38789#true} is VALID [2018-11-23 12:15:01,471 INFO L273 TraceCheckUtils]: 132: Hoare triple {38789#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38789#true} is VALID [2018-11-23 12:15:01,471 INFO L273 TraceCheckUtils]: 133: Hoare triple {38789#true} assume !!(~i~1 < 40); {38789#true} is VALID [2018-11-23 12:15:01,471 INFO L273 TraceCheckUtils]: 134: Hoare triple {38789#true} assume !(~i~1 > 20); {38789#true} is VALID [2018-11-23 12:15:01,471 INFO L273 TraceCheckUtils]: 135: Hoare triple {38789#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38789#true} is VALID [2018-11-23 12:15:01,471 INFO L273 TraceCheckUtils]: 136: Hoare triple {38789#true} assume !!(~i~1 < 40); {38789#true} is VALID [2018-11-23 12:15:01,471 INFO L273 TraceCheckUtils]: 137: Hoare triple {38789#true} assume !(~i~1 > 20); {38789#true} is VALID [2018-11-23 12:15:01,471 INFO L273 TraceCheckUtils]: 138: Hoare triple {38789#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38789#true} is VALID [2018-11-23 12:15:01,472 INFO L273 TraceCheckUtils]: 139: Hoare triple {38789#true} assume !!(~i~1 < 40); {38789#true} is VALID [2018-11-23 12:15:01,472 INFO L273 TraceCheckUtils]: 140: Hoare triple {38789#true} assume !(~i~1 > 20); {38789#true} is VALID [2018-11-23 12:15:01,472 INFO L273 TraceCheckUtils]: 141: Hoare triple {38789#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38789#true} is VALID [2018-11-23 12:15:01,472 INFO L273 TraceCheckUtils]: 142: Hoare triple {38789#true} assume !!(~i~1 < 40); {38789#true} is VALID [2018-11-23 12:15:01,472 INFO L273 TraceCheckUtils]: 143: Hoare triple {38789#true} assume !(~i~1 > 20); {38789#true} is VALID [2018-11-23 12:15:01,472 INFO L273 TraceCheckUtils]: 144: Hoare triple {38789#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38789#true} is VALID [2018-11-23 12:15:01,472 INFO L273 TraceCheckUtils]: 145: Hoare triple {38789#true} assume !!(~i~1 < 40); {38789#true} is VALID [2018-11-23 12:15:01,472 INFO L273 TraceCheckUtils]: 146: Hoare triple {38789#true} assume !(~i~1 > 20); {38789#true} is VALID [2018-11-23 12:15:01,472 INFO L273 TraceCheckUtils]: 147: Hoare triple {38789#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38789#true} is VALID [2018-11-23 12:15:01,473 INFO L273 TraceCheckUtils]: 148: Hoare triple {38789#true} assume !!(~i~1 < 40); {38789#true} is VALID [2018-11-23 12:15:01,473 INFO L273 TraceCheckUtils]: 149: Hoare triple {38789#true} assume !(~i~1 > 20); {38789#true} is VALID [2018-11-23 12:15:01,473 INFO L273 TraceCheckUtils]: 150: Hoare triple {38789#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38789#true} is VALID [2018-11-23 12:15:01,473 INFO L273 TraceCheckUtils]: 151: Hoare triple {38789#true} assume !!(~i~1 < 40); {38789#true} is VALID [2018-11-23 12:15:01,473 INFO L273 TraceCheckUtils]: 152: Hoare triple {38789#true} assume !(~i~1 > 20); {38789#true} is VALID [2018-11-23 12:15:01,473 INFO L273 TraceCheckUtils]: 153: Hoare triple {38789#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38789#true} is VALID [2018-11-23 12:15:01,473 INFO L273 TraceCheckUtils]: 154: Hoare triple {38789#true} assume !!(~i~1 < 40); {38789#true} is VALID [2018-11-23 12:15:01,473 INFO L273 TraceCheckUtils]: 155: Hoare triple {38789#true} assume !(~i~1 > 20); {38789#true} is VALID [2018-11-23 12:15:01,473 INFO L273 TraceCheckUtils]: 156: Hoare triple {38789#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38789#true} is VALID [2018-11-23 12:15:01,473 INFO L273 TraceCheckUtils]: 157: Hoare triple {38789#true} assume !!(~i~1 < 40); {38789#true} is VALID [2018-11-23 12:15:01,474 INFO L273 TraceCheckUtils]: 158: Hoare triple {38789#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {38789#true} is VALID [2018-11-23 12:15:01,474 INFO L273 TraceCheckUtils]: 159: Hoare triple {38789#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38789#true} is VALID [2018-11-23 12:15:01,474 INFO L273 TraceCheckUtils]: 160: Hoare triple {38789#true} assume !!(~i~1 < 40); {38789#true} is VALID [2018-11-23 12:15:01,474 INFO L273 TraceCheckUtils]: 161: Hoare triple {38789#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {38789#true} is VALID [2018-11-23 12:15:01,474 INFO L273 TraceCheckUtils]: 162: Hoare triple {38789#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38789#true} is VALID [2018-11-23 12:15:01,474 INFO L273 TraceCheckUtils]: 163: Hoare triple {38789#true} assume !!(~i~1 < 40); {38789#true} is VALID [2018-11-23 12:15:01,474 INFO L273 TraceCheckUtils]: 164: Hoare triple {38789#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {38789#true} is VALID [2018-11-23 12:15:01,474 INFO L273 TraceCheckUtils]: 165: Hoare triple {38789#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38789#true} is VALID [2018-11-23 12:15:01,474 INFO L273 TraceCheckUtils]: 166: Hoare triple {38789#true} assume !!(~i~1 < 40); {38789#true} is VALID [2018-11-23 12:15:01,474 INFO L273 TraceCheckUtils]: 167: Hoare triple {38789#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {38789#true} is VALID [2018-11-23 12:15:01,475 INFO L273 TraceCheckUtils]: 168: Hoare triple {38789#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38789#true} is VALID [2018-11-23 12:15:01,475 INFO L273 TraceCheckUtils]: 169: Hoare triple {38789#true} assume !!(~i~1 < 40); {38789#true} is VALID [2018-11-23 12:15:01,475 INFO L273 TraceCheckUtils]: 170: Hoare triple {38789#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {38789#true} is VALID [2018-11-23 12:15:01,475 INFO L273 TraceCheckUtils]: 171: Hoare triple {38789#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38789#true} is VALID [2018-11-23 12:15:01,475 INFO L273 TraceCheckUtils]: 172: Hoare triple {38789#true} assume !!(~i~1 < 40); {38789#true} is VALID [2018-11-23 12:15:01,475 INFO L273 TraceCheckUtils]: 173: Hoare triple {38789#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {38789#true} is VALID [2018-11-23 12:15:01,475 INFO L273 TraceCheckUtils]: 174: Hoare triple {38789#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38789#true} is VALID [2018-11-23 12:15:01,475 INFO L273 TraceCheckUtils]: 175: Hoare triple {38789#true} assume !!(~i~1 < 40); {38789#true} is VALID [2018-11-23 12:15:01,475 INFO L273 TraceCheckUtils]: 176: Hoare triple {38789#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {38789#true} is VALID [2018-11-23 12:15:01,475 INFO L273 TraceCheckUtils]: 177: Hoare triple {38789#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38789#true} is VALID [2018-11-23 12:15:01,476 INFO L273 TraceCheckUtils]: 178: Hoare triple {38789#true} assume !!(~i~1 < 40); {38789#true} is VALID [2018-11-23 12:15:01,476 INFO L273 TraceCheckUtils]: 179: Hoare triple {38789#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {38789#true} is VALID [2018-11-23 12:15:01,476 INFO L273 TraceCheckUtils]: 180: Hoare triple {38789#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38789#true} is VALID [2018-11-23 12:15:01,476 INFO L273 TraceCheckUtils]: 181: Hoare triple {38789#true} assume !!(~i~1 < 40); {38789#true} is VALID [2018-11-23 12:15:01,476 INFO L273 TraceCheckUtils]: 182: Hoare triple {38789#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {38789#true} is VALID [2018-11-23 12:15:01,476 INFO L273 TraceCheckUtils]: 183: Hoare triple {38789#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38789#true} is VALID [2018-11-23 12:15:01,476 INFO L273 TraceCheckUtils]: 184: Hoare triple {38789#true} assume !!(~i~1 < 40); {38789#true} is VALID [2018-11-23 12:15:01,476 INFO L273 TraceCheckUtils]: 185: Hoare triple {38789#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {38789#true} is VALID [2018-11-23 12:15:01,476 INFO L273 TraceCheckUtils]: 186: Hoare triple {38789#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38789#true} is VALID [2018-11-23 12:15:01,476 INFO L273 TraceCheckUtils]: 187: Hoare triple {38789#true} assume !(~i~1 < 40); {38789#true} is VALID [2018-11-23 12:15:01,477 INFO L273 TraceCheckUtils]: 188: Hoare triple {38789#true} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {38789#true} is VALID [2018-11-23 12:15:01,477 INFO L273 TraceCheckUtils]: 189: Hoare triple {38789#true} assume true; {38789#true} is VALID [2018-11-23 12:15:01,477 INFO L268 TraceCheckUtils]: 190: Hoare quadruple {38789#true} {38809#(= |main_~#x~0.offset| 0)} #86#return; {38809#(= |main_~#x~0.offset| 0)} is VALID [2018-11-23 12:15:01,478 INFO L273 TraceCheckUtils]: 191: Hoare triple {38809#(= |main_~#x~0.offset| 0)} 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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {39368#(and (<= main_~i~2 0) (= |main_~#x~0.offset| 0))} is VALID [2018-11-23 12:15:01,478 INFO L273 TraceCheckUtils]: 192: Hoare triple {39368#(and (<= main_~i~2 0) (= |main_~#x~0.offset| 0))} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {39368#(and (<= main_~i~2 0) (= |main_~#x~0.offset| 0))} is VALID [2018-11-23 12:15:01,479 INFO L273 TraceCheckUtils]: 193: Hoare triple {39368#(and (<= main_~i~2 0) (= |main_~#x~0.offset| 0))} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {39375#(and (= |main_~#x~0.offset| 0) (<= main_~i~2 1))} is VALID [2018-11-23 12:15:01,479 INFO L273 TraceCheckUtils]: 194: Hoare triple {39375#(and (= |main_~#x~0.offset| 0) (<= main_~i~2 1))} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {39375#(and (= |main_~#x~0.offset| 0) (<= main_~i~2 1))} is VALID [2018-11-23 12:15:01,480 INFO L273 TraceCheckUtils]: 195: Hoare triple {39375#(and (= |main_~#x~0.offset| 0) (<= main_~i~2 1))} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {39382#(and (= |main_~#x~0.offset| 0) (<= main_~i~2 2))} is VALID [2018-11-23 12:15:01,480 INFO L273 TraceCheckUtils]: 196: Hoare triple {39382#(and (= |main_~#x~0.offset| 0) (<= main_~i~2 2))} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {39382#(and (= |main_~#x~0.offset| 0) (<= main_~i~2 2))} is VALID [2018-11-23 12:15:01,481 INFO L273 TraceCheckUtils]: 197: Hoare triple {39382#(and (= |main_~#x~0.offset| 0) (<= main_~i~2 2))} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {39389#(and (<= main_~i~2 3) (= |main_~#x~0.offset| 0))} is VALID [2018-11-23 12:15:01,482 INFO L273 TraceCheckUtils]: 198: Hoare triple {39389#(and (<= main_~i~2 3) (= |main_~#x~0.offset| 0))} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {39389#(and (<= main_~i~2 3) (= |main_~#x~0.offset| 0))} is VALID [2018-11-23 12:15:01,483 INFO L273 TraceCheckUtils]: 199: Hoare triple {39389#(and (<= main_~i~2 3) (= |main_~#x~0.offset| 0))} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {39396#(and (= |main_~#x~0.offset| 0) (<= main_~i~2 4))} is VALID [2018-11-23 12:15:01,484 INFO L273 TraceCheckUtils]: 200: Hoare triple {39396#(and (= |main_~#x~0.offset| 0) (<= main_~i~2 4))} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {39396#(and (= |main_~#x~0.offset| 0) (<= main_~i~2 4))} is VALID [2018-11-23 12:15:01,485 INFO L273 TraceCheckUtils]: 201: Hoare triple {39396#(and (= |main_~#x~0.offset| 0) (<= main_~i~2 4))} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {39403#(and (<= main_~i~2 5) (= |main_~#x~0.offset| 0))} is VALID [2018-11-23 12:15:01,485 INFO L273 TraceCheckUtils]: 202: Hoare triple {39403#(and (<= main_~i~2 5) (= |main_~#x~0.offset| 0))} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {39403#(and (<= main_~i~2 5) (= |main_~#x~0.offset| 0))} is VALID [2018-11-23 12:15:01,486 INFO L273 TraceCheckUtils]: 203: Hoare triple {39403#(and (<= main_~i~2 5) (= |main_~#x~0.offset| 0))} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {39410#(and (<= main_~i~2 6) (= |main_~#x~0.offset| 0))} is VALID [2018-11-23 12:15:01,487 INFO L273 TraceCheckUtils]: 204: Hoare triple {39410#(and (<= main_~i~2 6) (= |main_~#x~0.offset| 0))} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {39410#(and (<= main_~i~2 6) (= |main_~#x~0.offset| 0))} is VALID [2018-11-23 12:15:01,488 INFO L273 TraceCheckUtils]: 205: Hoare triple {39410#(and (<= main_~i~2 6) (= |main_~#x~0.offset| 0))} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {39417#(and (<= main_~i~2 7) (= |main_~#x~0.offset| 0))} is VALID [2018-11-23 12:15:01,488 INFO L273 TraceCheckUtils]: 206: Hoare triple {39417#(and (<= main_~i~2 7) (= |main_~#x~0.offset| 0))} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {39417#(and (<= main_~i~2 7) (= |main_~#x~0.offset| 0))} is VALID [2018-11-23 12:15:01,489 INFO L273 TraceCheckUtils]: 207: Hoare triple {39417#(and (<= main_~i~2 7) (= |main_~#x~0.offset| 0))} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {39424#(and (<= main_~i~2 8) (= |main_~#x~0.offset| 0))} is VALID [2018-11-23 12:15:01,490 INFO L273 TraceCheckUtils]: 208: Hoare triple {39424#(and (<= main_~i~2 8) (= |main_~#x~0.offset| 0))} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {39424#(and (<= main_~i~2 8) (= |main_~#x~0.offset| 0))} is VALID [2018-11-23 12:15:01,491 INFO L273 TraceCheckUtils]: 209: Hoare triple {39424#(and (<= main_~i~2 8) (= |main_~#x~0.offset| 0))} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {39431#(and (<= main_~i~2 9) (= |main_~#x~0.offset| 0))} is VALID [2018-11-23 12:15:01,491 INFO L273 TraceCheckUtils]: 210: Hoare triple {39431#(and (<= main_~i~2 9) (= |main_~#x~0.offset| 0))} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {39431#(and (<= main_~i~2 9) (= |main_~#x~0.offset| 0))} is VALID [2018-11-23 12:15:01,492 INFO L273 TraceCheckUtils]: 211: Hoare triple {39431#(and (<= main_~i~2 9) (= |main_~#x~0.offset| 0))} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {39438#(and (<= main_~i~2 10) (= |main_~#x~0.offset| 0))} is VALID [2018-11-23 12:15:01,493 INFO L273 TraceCheckUtils]: 212: Hoare triple {39438#(and (<= main_~i~2 10) (= |main_~#x~0.offset| 0))} assume !(~i~2 < 39); {38790#false} is VALID [2018-11-23 12:15:01,493 INFO L273 TraceCheckUtils]: 213: Hoare triple {38790#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {38790#false} is VALID [2018-11-23 12:15:01,493 INFO L256 TraceCheckUtils]: 214: Hoare triple {38790#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {38790#false} is VALID [2018-11-23 12:15:01,493 INFO L273 TraceCheckUtils]: 215: Hoare triple {38790#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {38790#false} is VALID [2018-11-23 12:15:01,494 INFO L273 TraceCheckUtils]: 216: Hoare triple {38790#false} assume !!(~i~1 < 40); {38790#false} is VALID [2018-11-23 12:15:01,494 INFO L273 TraceCheckUtils]: 217: Hoare triple {38790#false} assume !(~i~1 > 20); {38790#false} is VALID [2018-11-23 12:15:01,494 INFO L273 TraceCheckUtils]: 218: Hoare triple {38790#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38790#false} is VALID [2018-11-23 12:15:01,494 INFO L273 TraceCheckUtils]: 219: Hoare triple {38790#false} assume !!(~i~1 < 40); {38790#false} is VALID [2018-11-23 12:15:01,494 INFO L273 TraceCheckUtils]: 220: Hoare triple {38790#false} assume !(~i~1 > 20); {38790#false} is VALID [2018-11-23 12:15:01,494 INFO L273 TraceCheckUtils]: 221: Hoare triple {38790#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38790#false} is VALID [2018-11-23 12:15:01,495 INFO L273 TraceCheckUtils]: 222: Hoare triple {38790#false} assume !!(~i~1 < 40); {38790#false} is VALID [2018-11-23 12:15:01,495 INFO L273 TraceCheckUtils]: 223: Hoare triple {38790#false} assume !(~i~1 > 20); {38790#false} is VALID [2018-11-23 12:15:01,495 INFO L273 TraceCheckUtils]: 224: Hoare triple {38790#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38790#false} is VALID [2018-11-23 12:15:01,495 INFO L273 TraceCheckUtils]: 225: Hoare triple {38790#false} assume !!(~i~1 < 40); {38790#false} is VALID [2018-11-23 12:15:01,495 INFO L273 TraceCheckUtils]: 226: Hoare triple {38790#false} assume !(~i~1 > 20); {38790#false} is VALID [2018-11-23 12:15:01,496 INFO L273 TraceCheckUtils]: 227: Hoare triple {38790#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38790#false} is VALID [2018-11-23 12:15:01,496 INFO L273 TraceCheckUtils]: 228: Hoare triple {38790#false} assume !!(~i~1 < 40); {38790#false} is VALID [2018-11-23 12:15:01,496 INFO L273 TraceCheckUtils]: 229: Hoare triple {38790#false} assume !(~i~1 > 20); {38790#false} is VALID [2018-11-23 12:15:01,496 INFO L273 TraceCheckUtils]: 230: Hoare triple {38790#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38790#false} is VALID [2018-11-23 12:15:01,496 INFO L273 TraceCheckUtils]: 231: Hoare triple {38790#false} assume !!(~i~1 < 40); {38790#false} is VALID [2018-11-23 12:15:01,496 INFO L273 TraceCheckUtils]: 232: Hoare triple {38790#false} assume !(~i~1 > 20); {38790#false} is VALID [2018-11-23 12:15:01,497 INFO L273 TraceCheckUtils]: 233: Hoare triple {38790#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38790#false} is VALID [2018-11-23 12:15:01,497 INFO L273 TraceCheckUtils]: 234: Hoare triple {38790#false} assume !!(~i~1 < 40); {38790#false} is VALID [2018-11-23 12:15:01,497 INFO L273 TraceCheckUtils]: 235: Hoare triple {38790#false} assume !(~i~1 > 20); {38790#false} is VALID [2018-11-23 12:15:01,497 INFO L273 TraceCheckUtils]: 236: Hoare triple {38790#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38790#false} is VALID [2018-11-23 12:15:01,497 INFO L273 TraceCheckUtils]: 237: Hoare triple {38790#false} assume !!(~i~1 < 40); {38790#false} is VALID [2018-11-23 12:15:01,497 INFO L273 TraceCheckUtils]: 238: Hoare triple {38790#false} assume !(~i~1 > 20); {38790#false} is VALID [2018-11-23 12:15:01,498 INFO L273 TraceCheckUtils]: 239: Hoare triple {38790#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38790#false} is VALID [2018-11-23 12:15:01,498 INFO L273 TraceCheckUtils]: 240: Hoare triple {38790#false} assume !!(~i~1 < 40); {38790#false} is VALID [2018-11-23 12:15:01,498 INFO L273 TraceCheckUtils]: 241: Hoare triple {38790#false} assume !(~i~1 > 20); {38790#false} is VALID [2018-11-23 12:15:01,498 INFO L273 TraceCheckUtils]: 242: Hoare triple {38790#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38790#false} is VALID [2018-11-23 12:15:01,498 INFO L273 TraceCheckUtils]: 243: Hoare triple {38790#false} assume !!(~i~1 < 40); {38790#false} is VALID [2018-11-23 12:15:01,498 INFO L273 TraceCheckUtils]: 244: Hoare triple {38790#false} assume !(~i~1 > 20); {38790#false} is VALID [2018-11-23 12:15:01,498 INFO L273 TraceCheckUtils]: 245: Hoare triple {38790#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38790#false} is VALID [2018-11-23 12:15:01,498 INFO L273 TraceCheckUtils]: 246: Hoare triple {38790#false} assume !!(~i~1 < 40); {38790#false} is VALID [2018-11-23 12:15:01,498 INFO L273 TraceCheckUtils]: 247: Hoare triple {38790#false} assume !(~i~1 > 20); {38790#false} is VALID [2018-11-23 12:15:01,498 INFO L273 TraceCheckUtils]: 248: Hoare triple {38790#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38790#false} is VALID [2018-11-23 12:15:01,499 INFO L273 TraceCheckUtils]: 249: Hoare triple {38790#false} assume !!(~i~1 < 40); {38790#false} is VALID [2018-11-23 12:15:01,499 INFO L273 TraceCheckUtils]: 250: Hoare triple {38790#false} assume !(~i~1 > 20); {38790#false} is VALID [2018-11-23 12:15:01,499 INFO L273 TraceCheckUtils]: 251: Hoare triple {38790#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38790#false} is VALID [2018-11-23 12:15:01,499 INFO L273 TraceCheckUtils]: 252: Hoare triple {38790#false} assume !!(~i~1 < 40); {38790#false} is VALID [2018-11-23 12:15:01,499 INFO L273 TraceCheckUtils]: 253: Hoare triple {38790#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {38790#false} is VALID [2018-11-23 12:15:01,499 INFO L273 TraceCheckUtils]: 254: Hoare triple {38790#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38790#false} is VALID [2018-11-23 12:15:01,499 INFO L273 TraceCheckUtils]: 255: Hoare triple {38790#false} assume !!(~i~1 < 40); {38790#false} is VALID [2018-11-23 12:15:01,499 INFO L273 TraceCheckUtils]: 256: Hoare triple {38790#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {38790#false} is VALID [2018-11-23 12:15:01,499 INFO L273 TraceCheckUtils]: 257: Hoare triple {38790#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38790#false} is VALID [2018-11-23 12:15:01,499 INFO L273 TraceCheckUtils]: 258: Hoare triple {38790#false} assume !!(~i~1 < 40); {38790#false} is VALID [2018-11-23 12:15:01,500 INFO L273 TraceCheckUtils]: 259: Hoare triple {38790#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {38790#false} is VALID [2018-11-23 12:15:01,500 INFO L273 TraceCheckUtils]: 260: Hoare triple {38790#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38790#false} is VALID [2018-11-23 12:15:01,500 INFO L273 TraceCheckUtils]: 261: Hoare triple {38790#false} assume !!(~i~1 < 40); {38790#false} is VALID [2018-11-23 12:15:01,500 INFO L273 TraceCheckUtils]: 262: Hoare triple {38790#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {38790#false} is VALID [2018-11-23 12:15:01,500 INFO L273 TraceCheckUtils]: 263: Hoare triple {38790#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38790#false} is VALID [2018-11-23 12:15:01,500 INFO L273 TraceCheckUtils]: 264: Hoare triple {38790#false} assume !!(~i~1 < 40); {38790#false} is VALID [2018-11-23 12:15:01,500 INFO L273 TraceCheckUtils]: 265: Hoare triple {38790#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {38790#false} is VALID [2018-11-23 12:15:01,500 INFO L273 TraceCheckUtils]: 266: Hoare triple {38790#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38790#false} is VALID [2018-11-23 12:15:01,501 INFO L273 TraceCheckUtils]: 267: Hoare triple {38790#false} assume !!(~i~1 < 40); {38790#false} is VALID [2018-11-23 12:15:01,501 INFO L273 TraceCheckUtils]: 268: Hoare triple {38790#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {38790#false} is VALID [2018-11-23 12:15:01,501 INFO L273 TraceCheckUtils]: 269: Hoare triple {38790#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38790#false} is VALID [2018-11-23 12:15:01,501 INFO L273 TraceCheckUtils]: 270: Hoare triple {38790#false} assume !!(~i~1 < 40); {38790#false} is VALID [2018-11-23 12:15:01,501 INFO L273 TraceCheckUtils]: 271: Hoare triple {38790#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {38790#false} is VALID [2018-11-23 12:15:01,501 INFO L273 TraceCheckUtils]: 272: Hoare triple {38790#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38790#false} is VALID [2018-11-23 12:15:01,502 INFO L273 TraceCheckUtils]: 273: Hoare triple {38790#false} assume !!(~i~1 < 40); {38790#false} is VALID [2018-11-23 12:15:01,502 INFO L273 TraceCheckUtils]: 274: Hoare triple {38790#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {38790#false} is VALID [2018-11-23 12:15:01,502 INFO L273 TraceCheckUtils]: 275: Hoare triple {38790#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38790#false} is VALID [2018-11-23 12:15:01,502 INFO L273 TraceCheckUtils]: 276: Hoare triple {38790#false} assume !!(~i~1 < 40); {38790#false} is VALID [2018-11-23 12:15:01,502 INFO L273 TraceCheckUtils]: 277: Hoare triple {38790#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {38790#false} is VALID [2018-11-23 12:15:01,502 INFO L273 TraceCheckUtils]: 278: Hoare triple {38790#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38790#false} is VALID [2018-11-23 12:15:01,502 INFO L273 TraceCheckUtils]: 279: Hoare triple {38790#false} assume !!(~i~1 < 40); {38790#false} is VALID [2018-11-23 12:15:01,503 INFO L273 TraceCheckUtils]: 280: Hoare triple {38790#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {38790#false} is VALID [2018-11-23 12:15:01,503 INFO L273 TraceCheckUtils]: 281: Hoare triple {38790#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {38790#false} is VALID [2018-11-23 12:15:01,503 INFO L273 TraceCheckUtils]: 282: Hoare triple {38790#false} assume !(~i~1 < 40); {38790#false} is VALID [2018-11-23 12:15:01,503 INFO L273 TraceCheckUtils]: 283: Hoare triple {38790#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {38790#false} is VALID [2018-11-23 12:15:01,503 INFO L273 TraceCheckUtils]: 284: Hoare triple {38790#false} assume true; {38790#false} is VALID [2018-11-23 12:15:01,503 INFO L268 TraceCheckUtils]: 285: Hoare quadruple {38790#false} {38790#false} #88#return; {38790#false} is VALID [2018-11-23 12:15:01,503 INFO L273 TraceCheckUtils]: 286: Hoare triple {38790#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {38790#false} is VALID [2018-11-23 12:15:01,504 INFO L273 TraceCheckUtils]: 287: Hoare triple {38790#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {38790#false} is VALID [2018-11-23 12:15:01,504 INFO L273 TraceCheckUtils]: 288: Hoare triple {38790#false} assume !false; {38790#false} is VALID [2018-11-23 12:15:01,553 INFO L134 CoverageAnalysis]: Checked inductivity of 7037 backedges. 3002 proven. 100 refuted. 0 times theorem prover too weak. 3935 trivial. 0 not checked. [2018-11-23 12:15:01,573 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:15:01,573 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [14] total 14 [2018-11-23 12:15:01,573 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 289 [2018-11-23 12:15:01,574 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:15:01,574 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states. [2018-11-23 12:15:01,643 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 63 edges. 63 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:15:01,644 INFO L459 AbstractCegarLoop]: Interpolant automaton has 14 states [2018-11-23 12:15:01,644 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2018-11-23 12:15:01,644 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=91, Invalid=91, Unknown=0, NotChecked=0, Total=182 [2018-11-23 12:15:01,644 INFO L87 Difference]: Start difference. First operand 148 states and 163 transitions. Second operand 14 states. [2018-11-23 12:15:01,970 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:01,970 INFO L93 Difference]: Finished difference Result 228 states and 255 transitions. [2018-11-23 12:15:01,970 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2018-11-23 12:15:01,970 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 289 [2018-11-23 12:15:01,971 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:15:01,971 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2018-11-23 12:15:01,971 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 76 transitions. [2018-11-23 12:15:01,971 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2018-11-23 12:15:01,972 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 76 transitions. [2018-11-23 12:15:01,972 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states and 76 transitions. [2018-11-23 12:15:02,043 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-23 12:15:02,046 INFO L225 Difference]: With dead ends: 228 [2018-11-23 12:15:02,046 INFO L226 Difference]: Without dead ends: 151 [2018-11-23 12:15:02,046 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 288 GetRequests, 276 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=91, Invalid=91, Unknown=0, NotChecked=0, Total=182 [2018-11-23 12:15:02,046 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 151 states. [2018-11-23 12:15:02,388 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 151 to 150. [2018-11-23 12:15:02,388 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:15:02,388 INFO L82 GeneralOperation]: Start isEquivalent. First operand 151 states. Second operand 150 states. [2018-11-23 12:15:02,388 INFO L74 IsIncluded]: Start isIncluded. First operand 151 states. Second operand 150 states. [2018-11-23 12:15:02,388 INFO L87 Difference]: Start difference. First operand 151 states. Second operand 150 states. [2018-11-23 12:15:02,390 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:02,391 INFO L93 Difference]: Finished difference Result 151 states and 166 transitions. [2018-11-23 12:15:02,391 INFO L276 IsEmpty]: Start isEmpty. Operand 151 states and 166 transitions. [2018-11-23 12:15:02,391 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:15:02,391 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:15:02,391 INFO L74 IsIncluded]: Start isIncluded. First operand 150 states. Second operand 151 states. [2018-11-23 12:15:02,391 INFO L87 Difference]: Start difference. First operand 150 states. Second operand 151 states. [2018-11-23 12:15:02,393 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:02,393 INFO L93 Difference]: Finished difference Result 151 states and 166 transitions. [2018-11-23 12:15:02,393 INFO L276 IsEmpty]: Start isEmpty. Operand 151 states and 166 transitions. [2018-11-23 12:15:02,394 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:15:02,394 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:15:02,394 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:15:02,394 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:15:02,394 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 150 states. [2018-11-23 12:15:02,396 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 150 states to 150 states and 165 transitions. [2018-11-23 12:15:02,396 INFO L78 Accepts]: Start accepts. Automaton has 150 states and 165 transitions. Word has length 289 [2018-11-23 12:15:02,396 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:15:02,396 INFO L480 AbstractCegarLoop]: Abstraction has 150 states and 165 transitions. [2018-11-23 12:15:02,396 INFO L481 AbstractCegarLoop]: Interpolant automaton has 14 states. [2018-11-23 12:15:02,396 INFO L276 IsEmpty]: Start isEmpty. Operand 150 states and 165 transitions. [2018-11-23 12:15:02,398 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 292 [2018-11-23 12:15:02,398 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:15:02,398 INFO L402 BasicCegarLoop]: trace histogram [66, 66, 36, 30, 17, 17, 11, 11, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:15:02,398 INFO L423 AbstractCegarLoop]: === Iteration 45 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:15:02,398 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:15:02,398 INFO L82 PathProgramCache]: Analyzing trace with hash -1691715968, now seen corresponding path program 40 times [2018-11-23 12:15:02,398 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:15:02,399 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:15:02,399 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:15:02,399 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:15:02,399 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:15:02,412 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:15:02,413 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:15:02,413 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 46 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 46 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:15:02,425 INFO L103 rtionOrderModulation]: Keeping assertion order TERMS_WITH_SMALL_CONSTANTS_FIRST [2018-11-23 12:15:02,525 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2018-11-23 12:15:02,525 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:15:02,569 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:15:02,570 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:15:03,035 INFO L256 TraceCheckUtils]: 0: Hoare triple {40500#true} call ULTIMATE.init(); {40500#true} is VALID [2018-11-23 12:15:03,036 INFO L273 TraceCheckUtils]: 1: Hoare triple {40500#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {40500#true} is VALID [2018-11-23 12:15:03,036 INFO L273 TraceCheckUtils]: 2: Hoare triple {40500#true} assume true; {40500#true} is VALID [2018-11-23 12:15:03,036 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {40500#true} {40500#true} #78#return; {40500#true} is VALID [2018-11-23 12:15:03,036 INFO L256 TraceCheckUtils]: 4: Hoare triple {40500#true} call #t~ret12 := main(); {40500#true} is VALID [2018-11-23 12:15:03,036 INFO L273 TraceCheckUtils]: 5: Hoare triple {40500#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {40500#true} is VALID [2018-11-23 12:15:03,037 INFO L256 TraceCheckUtils]: 6: Hoare triple {40500#true} call init_nondet(~#x~0.base, ~#x~0.offset); {40500#true} is VALID [2018-11-23 12:15:03,037 INFO L273 TraceCheckUtils]: 7: Hoare triple {40500#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {40500#true} is VALID [2018-11-23 12:15:03,037 INFO L273 TraceCheckUtils]: 8: Hoare triple {40500#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {40500#true} is VALID [2018-11-23 12:15:03,037 INFO L273 TraceCheckUtils]: 9: Hoare triple {40500#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {40500#true} is VALID [2018-11-23 12:15:03,037 INFO L273 TraceCheckUtils]: 10: Hoare triple {40500#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {40500#true} is VALID [2018-11-23 12:15:03,037 INFO L273 TraceCheckUtils]: 11: Hoare triple {40500#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {40500#true} is VALID [2018-11-23 12:15:03,038 INFO L273 TraceCheckUtils]: 12: Hoare triple {40500#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {40500#true} is VALID [2018-11-23 12:15:03,038 INFO L273 TraceCheckUtils]: 13: Hoare triple {40500#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {40500#true} is VALID [2018-11-23 12:15:03,038 INFO L273 TraceCheckUtils]: 14: Hoare triple {40500#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {40500#true} is VALID [2018-11-23 12:15:03,038 INFO L273 TraceCheckUtils]: 15: Hoare triple {40500#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {40500#true} is VALID [2018-11-23 12:15:03,038 INFO L273 TraceCheckUtils]: 16: Hoare triple {40500#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {40500#true} is VALID [2018-11-23 12:15:03,038 INFO L273 TraceCheckUtils]: 17: Hoare triple {40500#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {40500#true} is VALID [2018-11-23 12:15:03,038 INFO L273 TraceCheckUtils]: 18: Hoare triple {40500#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {40500#true} is VALID [2018-11-23 12:15:03,039 INFO L273 TraceCheckUtils]: 19: Hoare triple {40500#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {40500#true} is VALID [2018-11-23 12:15:03,039 INFO L273 TraceCheckUtils]: 20: Hoare triple {40500#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {40500#true} is VALID [2018-11-23 12:15:03,039 INFO L273 TraceCheckUtils]: 21: Hoare triple {40500#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {40500#true} is VALID [2018-11-23 12:15:03,039 INFO L273 TraceCheckUtils]: 22: Hoare triple {40500#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {40500#true} is VALID [2018-11-23 12:15:03,039 INFO L273 TraceCheckUtils]: 23: Hoare triple {40500#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {40500#true} is VALID [2018-11-23 12:15:03,039 INFO L273 TraceCheckUtils]: 24: Hoare triple {40500#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {40500#true} is VALID [2018-11-23 12:15:03,039 INFO L273 TraceCheckUtils]: 25: Hoare triple {40500#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {40500#true} is VALID [2018-11-23 12:15:03,039 INFO L273 TraceCheckUtils]: 26: Hoare triple {40500#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {40500#true} is VALID [2018-11-23 12:15:03,039 INFO L273 TraceCheckUtils]: 27: Hoare triple {40500#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {40500#true} is VALID [2018-11-23 12:15:03,040 INFO L273 TraceCheckUtils]: 28: Hoare triple {40500#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {40500#true} is VALID [2018-11-23 12:15:03,040 INFO L273 TraceCheckUtils]: 29: Hoare triple {40500#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {40500#true} is VALID [2018-11-23 12:15:03,040 INFO L273 TraceCheckUtils]: 30: Hoare triple {40500#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {40500#true} is VALID [2018-11-23 12:15:03,040 INFO L273 TraceCheckUtils]: 31: Hoare triple {40500#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {40500#true} is VALID [2018-11-23 12:15:03,040 INFO L273 TraceCheckUtils]: 32: Hoare triple {40500#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {40500#true} is VALID [2018-11-23 12:15:03,040 INFO L273 TraceCheckUtils]: 33: Hoare triple {40500#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {40500#true} is VALID [2018-11-23 12:15:03,040 INFO L273 TraceCheckUtils]: 34: Hoare triple {40500#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {40500#true} is VALID [2018-11-23 12:15:03,040 INFO L273 TraceCheckUtils]: 35: Hoare triple {40500#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {40500#true} is VALID [2018-11-23 12:15:03,040 INFO L273 TraceCheckUtils]: 36: Hoare triple {40500#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {40500#true} is VALID [2018-11-23 12:15:03,040 INFO L273 TraceCheckUtils]: 37: Hoare triple {40500#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {40500#true} is VALID [2018-11-23 12:15:03,041 INFO L273 TraceCheckUtils]: 38: Hoare triple {40500#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {40500#true} is VALID [2018-11-23 12:15:03,041 INFO L273 TraceCheckUtils]: 39: Hoare triple {40500#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {40500#true} is VALID [2018-11-23 12:15:03,041 INFO L273 TraceCheckUtils]: 40: Hoare triple {40500#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {40500#true} is VALID [2018-11-23 12:15:03,041 INFO L273 TraceCheckUtils]: 41: Hoare triple {40500#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {40500#true} is VALID [2018-11-23 12:15:03,041 INFO L273 TraceCheckUtils]: 42: Hoare triple {40500#true} assume !(~i~0 < 40); {40500#true} is VALID [2018-11-23 12:15:03,041 INFO L273 TraceCheckUtils]: 43: Hoare triple {40500#true} assume true; {40500#true} is VALID [2018-11-23 12:15:03,041 INFO L268 TraceCheckUtils]: 44: Hoare quadruple {40500#true} {40500#true} #82#return; {40500#true} is VALID [2018-11-23 12:15:03,041 INFO L273 TraceCheckUtils]: 45: Hoare triple {40500#true} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {40500#true} is VALID [2018-11-23 12:15:03,041 INFO L256 TraceCheckUtils]: 46: Hoare triple {40500#true} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {40500#true} is VALID [2018-11-23 12:15:03,041 INFO L273 TraceCheckUtils]: 47: Hoare triple {40500#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {40500#true} is VALID [2018-11-23 12:15:03,042 INFO L273 TraceCheckUtils]: 48: Hoare triple {40500#true} assume !!(~i~1 < 40); {40500#true} is VALID [2018-11-23 12:15:03,042 INFO L273 TraceCheckUtils]: 49: Hoare triple {40500#true} assume !(~i~1 > 20); {40500#true} is VALID [2018-11-23 12:15:03,042 INFO L273 TraceCheckUtils]: 50: Hoare triple {40500#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40500#true} is VALID [2018-11-23 12:15:03,042 INFO L273 TraceCheckUtils]: 51: Hoare triple {40500#true} assume !!(~i~1 < 40); {40500#true} is VALID [2018-11-23 12:15:03,042 INFO L273 TraceCheckUtils]: 52: Hoare triple {40500#true} assume !(~i~1 > 20); {40500#true} is VALID [2018-11-23 12:15:03,042 INFO L273 TraceCheckUtils]: 53: Hoare triple {40500#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40500#true} is VALID [2018-11-23 12:15:03,042 INFO L273 TraceCheckUtils]: 54: Hoare triple {40500#true} assume !!(~i~1 < 40); {40500#true} is VALID [2018-11-23 12:15:03,042 INFO L273 TraceCheckUtils]: 55: Hoare triple {40500#true} assume !(~i~1 > 20); {40500#true} is VALID [2018-11-23 12:15:03,042 INFO L273 TraceCheckUtils]: 56: Hoare triple {40500#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40500#true} is VALID [2018-11-23 12:15:03,042 INFO L273 TraceCheckUtils]: 57: Hoare triple {40500#true} assume !!(~i~1 < 40); {40500#true} is VALID [2018-11-23 12:15:03,043 INFO L273 TraceCheckUtils]: 58: Hoare triple {40500#true} assume !(~i~1 > 20); {40500#true} is VALID [2018-11-23 12:15:03,043 INFO L273 TraceCheckUtils]: 59: Hoare triple {40500#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40500#true} is VALID [2018-11-23 12:15:03,043 INFO L273 TraceCheckUtils]: 60: Hoare triple {40500#true} assume !!(~i~1 < 40); {40500#true} is VALID [2018-11-23 12:15:03,043 INFO L273 TraceCheckUtils]: 61: Hoare triple {40500#true} assume !(~i~1 > 20); {40500#true} is VALID [2018-11-23 12:15:03,043 INFO L273 TraceCheckUtils]: 62: Hoare triple {40500#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40500#true} is VALID [2018-11-23 12:15:03,043 INFO L273 TraceCheckUtils]: 63: Hoare triple {40500#true} assume !!(~i~1 < 40); {40500#true} is VALID [2018-11-23 12:15:03,043 INFO L273 TraceCheckUtils]: 64: Hoare triple {40500#true} assume !(~i~1 > 20); {40500#true} is VALID [2018-11-23 12:15:03,043 INFO L273 TraceCheckUtils]: 65: Hoare triple {40500#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40500#true} is VALID [2018-11-23 12:15:03,043 INFO L273 TraceCheckUtils]: 66: Hoare triple {40500#true} assume !!(~i~1 < 40); {40500#true} is VALID [2018-11-23 12:15:03,044 INFO L273 TraceCheckUtils]: 67: Hoare triple {40500#true} assume !(~i~1 > 20); {40500#true} is VALID [2018-11-23 12:15:03,044 INFO L273 TraceCheckUtils]: 68: Hoare triple {40500#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40500#true} is VALID [2018-11-23 12:15:03,044 INFO L273 TraceCheckUtils]: 69: Hoare triple {40500#true} assume !!(~i~1 < 40); {40500#true} is VALID [2018-11-23 12:15:03,044 INFO L273 TraceCheckUtils]: 70: Hoare triple {40500#true} assume !(~i~1 > 20); {40500#true} is VALID [2018-11-23 12:15:03,044 INFO L273 TraceCheckUtils]: 71: Hoare triple {40500#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40500#true} is VALID [2018-11-23 12:15:03,044 INFO L273 TraceCheckUtils]: 72: Hoare triple {40500#true} assume !!(~i~1 < 40); {40500#true} is VALID [2018-11-23 12:15:03,044 INFO L273 TraceCheckUtils]: 73: Hoare triple {40500#true} assume !(~i~1 > 20); {40500#true} is VALID [2018-11-23 12:15:03,044 INFO L273 TraceCheckUtils]: 74: Hoare triple {40500#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40500#true} is VALID [2018-11-23 12:15:03,044 INFO L273 TraceCheckUtils]: 75: Hoare triple {40500#true} assume !!(~i~1 < 40); {40500#true} is VALID [2018-11-23 12:15:03,044 INFO L273 TraceCheckUtils]: 76: Hoare triple {40500#true} assume !(~i~1 > 20); {40500#true} is VALID [2018-11-23 12:15:03,045 INFO L273 TraceCheckUtils]: 77: Hoare triple {40500#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40500#true} is VALID [2018-11-23 12:15:03,045 INFO L273 TraceCheckUtils]: 78: Hoare triple {40500#true} assume !!(~i~1 < 40); {40500#true} is VALID [2018-11-23 12:15:03,045 INFO L273 TraceCheckUtils]: 79: Hoare triple {40500#true} assume !(~i~1 > 20); {40500#true} is VALID [2018-11-23 12:15:03,045 INFO L273 TraceCheckUtils]: 80: Hoare triple {40500#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40500#true} is VALID [2018-11-23 12:15:03,045 INFO L273 TraceCheckUtils]: 81: Hoare triple {40500#true} assume !!(~i~1 < 40); {40500#true} is VALID [2018-11-23 12:15:03,045 INFO L273 TraceCheckUtils]: 82: Hoare triple {40500#true} assume !(~i~1 > 20); {40500#true} is VALID [2018-11-23 12:15:03,045 INFO L273 TraceCheckUtils]: 83: Hoare triple {40500#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40500#true} is VALID [2018-11-23 12:15:03,045 INFO L273 TraceCheckUtils]: 84: Hoare triple {40500#true} assume !!(~i~1 < 40); {40500#true} is VALID [2018-11-23 12:15:03,045 INFO L273 TraceCheckUtils]: 85: Hoare triple {40500#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {40500#true} is VALID [2018-11-23 12:15:03,045 INFO L273 TraceCheckUtils]: 86: Hoare triple {40500#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40500#true} is VALID [2018-11-23 12:15:03,046 INFO L273 TraceCheckUtils]: 87: Hoare triple {40500#true} assume !!(~i~1 < 40); {40500#true} is VALID [2018-11-23 12:15:03,046 INFO L273 TraceCheckUtils]: 88: Hoare triple {40500#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {40500#true} is VALID [2018-11-23 12:15:03,046 INFO L273 TraceCheckUtils]: 89: Hoare triple {40500#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40500#true} is VALID [2018-11-23 12:15:03,046 INFO L273 TraceCheckUtils]: 90: Hoare triple {40500#true} assume !!(~i~1 < 40); {40500#true} is VALID [2018-11-23 12:15:03,046 INFO L273 TraceCheckUtils]: 91: Hoare triple {40500#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {40500#true} is VALID [2018-11-23 12:15:03,046 INFO L273 TraceCheckUtils]: 92: Hoare triple {40500#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40500#true} is VALID [2018-11-23 12:15:03,046 INFO L273 TraceCheckUtils]: 93: Hoare triple {40500#true} assume !!(~i~1 < 40); {40500#true} is VALID [2018-11-23 12:15:03,046 INFO L273 TraceCheckUtils]: 94: Hoare triple {40500#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {40500#true} is VALID [2018-11-23 12:15:03,046 INFO L273 TraceCheckUtils]: 95: Hoare triple {40500#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40500#true} is VALID [2018-11-23 12:15:03,047 INFO L273 TraceCheckUtils]: 96: Hoare triple {40500#true} assume !!(~i~1 < 40); {40500#true} is VALID [2018-11-23 12:15:03,047 INFO L273 TraceCheckUtils]: 97: Hoare triple {40500#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {40500#true} is VALID [2018-11-23 12:15:03,047 INFO L273 TraceCheckUtils]: 98: Hoare triple {40500#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40500#true} is VALID [2018-11-23 12:15:03,047 INFO L273 TraceCheckUtils]: 99: Hoare triple {40500#true} assume !!(~i~1 < 40); {40500#true} is VALID [2018-11-23 12:15:03,047 INFO L273 TraceCheckUtils]: 100: Hoare triple {40500#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {40500#true} is VALID [2018-11-23 12:15:03,047 INFO L273 TraceCheckUtils]: 101: Hoare triple {40500#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40500#true} is VALID [2018-11-23 12:15:03,047 INFO L273 TraceCheckUtils]: 102: Hoare triple {40500#true} assume !!(~i~1 < 40); {40500#true} is VALID [2018-11-23 12:15:03,047 INFO L273 TraceCheckUtils]: 103: Hoare triple {40500#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {40500#true} is VALID [2018-11-23 12:15:03,047 INFO L273 TraceCheckUtils]: 104: Hoare triple {40500#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40500#true} is VALID [2018-11-23 12:15:03,047 INFO L273 TraceCheckUtils]: 105: Hoare triple {40500#true} assume !!(~i~1 < 40); {40500#true} is VALID [2018-11-23 12:15:03,048 INFO L273 TraceCheckUtils]: 106: Hoare triple {40500#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {40500#true} is VALID [2018-11-23 12:15:03,048 INFO L273 TraceCheckUtils]: 107: Hoare triple {40500#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40500#true} is VALID [2018-11-23 12:15:03,048 INFO L273 TraceCheckUtils]: 108: Hoare triple {40500#true} assume !!(~i~1 < 40); {40500#true} is VALID [2018-11-23 12:15:03,048 INFO L273 TraceCheckUtils]: 109: Hoare triple {40500#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {40500#true} is VALID [2018-11-23 12:15:03,048 INFO L273 TraceCheckUtils]: 110: Hoare triple {40500#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40500#true} is VALID [2018-11-23 12:15:03,048 INFO L273 TraceCheckUtils]: 111: Hoare triple {40500#true} assume !!(~i~1 < 40); {40500#true} is VALID [2018-11-23 12:15:03,048 INFO L273 TraceCheckUtils]: 112: Hoare triple {40500#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {40500#true} is VALID [2018-11-23 12:15:03,048 INFO L273 TraceCheckUtils]: 113: Hoare triple {40500#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40500#true} is VALID [2018-11-23 12:15:03,048 INFO L273 TraceCheckUtils]: 114: Hoare triple {40500#true} assume !(~i~1 < 40); {40500#true} is VALID [2018-11-23 12:15:03,048 INFO L273 TraceCheckUtils]: 115: Hoare triple {40500#true} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {40500#true} is VALID [2018-11-23 12:15:03,049 INFO L273 TraceCheckUtils]: 116: Hoare triple {40500#true} assume true; {40500#true} is VALID [2018-11-23 12:15:03,049 INFO L268 TraceCheckUtils]: 117: Hoare quadruple {40500#true} {40500#true} #84#return; {40500#true} is VALID [2018-11-23 12:15:03,049 INFO L273 TraceCheckUtils]: 118: Hoare triple {40500#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {40500#true} is VALID [2018-11-23 12:15:03,049 INFO L256 TraceCheckUtils]: 119: Hoare triple {40500#true} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {40500#true} is VALID [2018-11-23 12:15:03,049 INFO L273 TraceCheckUtils]: 120: Hoare triple {40500#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {40500#true} is VALID [2018-11-23 12:15:03,049 INFO L273 TraceCheckUtils]: 121: Hoare triple {40500#true} assume !!(~i~1 < 40); {40500#true} is VALID [2018-11-23 12:15:03,049 INFO L273 TraceCheckUtils]: 122: Hoare triple {40500#true} assume !(~i~1 > 20); {40500#true} is VALID [2018-11-23 12:15:03,049 INFO L273 TraceCheckUtils]: 123: Hoare triple {40500#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40500#true} is VALID [2018-11-23 12:15:03,049 INFO L273 TraceCheckUtils]: 124: Hoare triple {40500#true} assume !!(~i~1 < 40); {40500#true} is VALID [2018-11-23 12:15:03,049 INFO L273 TraceCheckUtils]: 125: Hoare triple {40500#true} assume !(~i~1 > 20); {40500#true} is VALID [2018-11-23 12:15:03,050 INFO L273 TraceCheckUtils]: 126: Hoare triple {40500#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40500#true} is VALID [2018-11-23 12:15:03,050 INFO L273 TraceCheckUtils]: 127: Hoare triple {40500#true} assume !!(~i~1 < 40); {40500#true} is VALID [2018-11-23 12:15:03,050 INFO L273 TraceCheckUtils]: 128: Hoare triple {40500#true} assume !(~i~1 > 20); {40500#true} is VALID [2018-11-23 12:15:03,050 INFO L273 TraceCheckUtils]: 129: Hoare triple {40500#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40500#true} is VALID [2018-11-23 12:15:03,050 INFO L273 TraceCheckUtils]: 130: Hoare triple {40500#true} assume !!(~i~1 < 40); {40500#true} is VALID [2018-11-23 12:15:03,050 INFO L273 TraceCheckUtils]: 131: Hoare triple {40500#true} assume !(~i~1 > 20); {40500#true} is VALID [2018-11-23 12:15:03,050 INFO L273 TraceCheckUtils]: 132: Hoare triple {40500#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40500#true} is VALID [2018-11-23 12:15:03,050 INFO L273 TraceCheckUtils]: 133: Hoare triple {40500#true} assume !!(~i~1 < 40); {40500#true} is VALID [2018-11-23 12:15:03,050 INFO L273 TraceCheckUtils]: 134: Hoare triple {40500#true} assume !(~i~1 > 20); {40500#true} is VALID [2018-11-23 12:15:03,050 INFO L273 TraceCheckUtils]: 135: Hoare triple {40500#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40500#true} is VALID [2018-11-23 12:15:03,051 INFO L273 TraceCheckUtils]: 136: Hoare triple {40500#true} assume !!(~i~1 < 40); {40500#true} is VALID [2018-11-23 12:15:03,051 INFO L273 TraceCheckUtils]: 137: Hoare triple {40500#true} assume !(~i~1 > 20); {40500#true} is VALID [2018-11-23 12:15:03,051 INFO L273 TraceCheckUtils]: 138: Hoare triple {40500#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40500#true} is VALID [2018-11-23 12:15:03,051 INFO L273 TraceCheckUtils]: 139: Hoare triple {40500#true} assume !!(~i~1 < 40); {40500#true} is VALID [2018-11-23 12:15:03,051 INFO L273 TraceCheckUtils]: 140: Hoare triple {40500#true} assume !(~i~1 > 20); {40500#true} is VALID [2018-11-23 12:15:03,051 INFO L273 TraceCheckUtils]: 141: Hoare triple {40500#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40500#true} is VALID [2018-11-23 12:15:03,051 INFO L273 TraceCheckUtils]: 142: Hoare triple {40500#true} assume !!(~i~1 < 40); {40500#true} is VALID [2018-11-23 12:15:03,051 INFO L273 TraceCheckUtils]: 143: Hoare triple {40500#true} assume !(~i~1 > 20); {40500#true} is VALID [2018-11-23 12:15:03,051 INFO L273 TraceCheckUtils]: 144: Hoare triple {40500#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40500#true} is VALID [2018-11-23 12:15:03,051 INFO L273 TraceCheckUtils]: 145: Hoare triple {40500#true} assume !!(~i~1 < 40); {40500#true} is VALID [2018-11-23 12:15:03,052 INFO L273 TraceCheckUtils]: 146: Hoare triple {40500#true} assume !(~i~1 > 20); {40500#true} is VALID [2018-11-23 12:15:03,052 INFO L273 TraceCheckUtils]: 147: Hoare triple {40500#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40500#true} is VALID [2018-11-23 12:15:03,052 INFO L273 TraceCheckUtils]: 148: Hoare triple {40500#true} assume !!(~i~1 < 40); {40500#true} is VALID [2018-11-23 12:15:03,052 INFO L273 TraceCheckUtils]: 149: Hoare triple {40500#true} assume !(~i~1 > 20); {40500#true} is VALID [2018-11-23 12:15:03,052 INFO L273 TraceCheckUtils]: 150: Hoare triple {40500#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40500#true} is VALID [2018-11-23 12:15:03,052 INFO L273 TraceCheckUtils]: 151: Hoare triple {40500#true} assume !!(~i~1 < 40); {40500#true} is VALID [2018-11-23 12:15:03,052 INFO L273 TraceCheckUtils]: 152: Hoare triple {40500#true} assume !(~i~1 > 20); {40500#true} is VALID [2018-11-23 12:15:03,052 INFO L273 TraceCheckUtils]: 153: Hoare triple {40500#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40500#true} is VALID [2018-11-23 12:15:03,052 INFO L273 TraceCheckUtils]: 154: Hoare triple {40500#true} assume !!(~i~1 < 40); {40500#true} is VALID [2018-11-23 12:15:03,052 INFO L273 TraceCheckUtils]: 155: Hoare triple {40500#true} assume !(~i~1 > 20); {40500#true} is VALID [2018-11-23 12:15:03,053 INFO L273 TraceCheckUtils]: 156: Hoare triple {40500#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40500#true} is VALID [2018-11-23 12:15:03,053 INFO L273 TraceCheckUtils]: 157: Hoare triple {40500#true} assume !!(~i~1 < 40); {40500#true} is VALID [2018-11-23 12:15:03,053 INFO L273 TraceCheckUtils]: 158: Hoare triple {40500#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {40500#true} is VALID [2018-11-23 12:15:03,053 INFO L273 TraceCheckUtils]: 159: Hoare triple {40500#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40500#true} is VALID [2018-11-23 12:15:03,053 INFO L273 TraceCheckUtils]: 160: Hoare triple {40500#true} assume !!(~i~1 < 40); {40500#true} is VALID [2018-11-23 12:15:03,053 INFO L273 TraceCheckUtils]: 161: Hoare triple {40500#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {40500#true} is VALID [2018-11-23 12:15:03,053 INFO L273 TraceCheckUtils]: 162: Hoare triple {40500#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40500#true} is VALID [2018-11-23 12:15:03,053 INFO L273 TraceCheckUtils]: 163: Hoare triple {40500#true} assume !!(~i~1 < 40); {40500#true} is VALID [2018-11-23 12:15:03,053 INFO L273 TraceCheckUtils]: 164: Hoare triple {40500#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {40500#true} is VALID [2018-11-23 12:15:03,054 INFO L273 TraceCheckUtils]: 165: Hoare triple {40500#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40500#true} is VALID [2018-11-23 12:15:03,054 INFO L273 TraceCheckUtils]: 166: Hoare triple {40500#true} assume !!(~i~1 < 40); {40500#true} is VALID [2018-11-23 12:15:03,054 INFO L273 TraceCheckUtils]: 167: Hoare triple {40500#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {40500#true} is VALID [2018-11-23 12:15:03,054 INFO L273 TraceCheckUtils]: 168: Hoare triple {40500#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40500#true} is VALID [2018-11-23 12:15:03,054 INFO L273 TraceCheckUtils]: 169: Hoare triple {40500#true} assume !!(~i~1 < 40); {40500#true} is VALID [2018-11-23 12:15:03,054 INFO L273 TraceCheckUtils]: 170: Hoare triple {40500#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {40500#true} is VALID [2018-11-23 12:15:03,054 INFO L273 TraceCheckUtils]: 171: Hoare triple {40500#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40500#true} is VALID [2018-11-23 12:15:03,054 INFO L273 TraceCheckUtils]: 172: Hoare triple {40500#true} assume !!(~i~1 < 40); {40500#true} is VALID [2018-11-23 12:15:03,054 INFO L273 TraceCheckUtils]: 173: Hoare triple {40500#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {40500#true} is VALID [2018-11-23 12:15:03,054 INFO L273 TraceCheckUtils]: 174: Hoare triple {40500#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40500#true} is VALID [2018-11-23 12:15:03,055 INFO L273 TraceCheckUtils]: 175: Hoare triple {40500#true} assume !!(~i~1 < 40); {40500#true} is VALID [2018-11-23 12:15:03,055 INFO L273 TraceCheckUtils]: 176: Hoare triple {40500#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {40500#true} is VALID [2018-11-23 12:15:03,055 INFO L273 TraceCheckUtils]: 177: Hoare triple {40500#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40500#true} is VALID [2018-11-23 12:15:03,055 INFO L273 TraceCheckUtils]: 178: Hoare triple {40500#true} assume !!(~i~1 < 40); {40500#true} is VALID [2018-11-23 12:15:03,055 INFO L273 TraceCheckUtils]: 179: Hoare triple {40500#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {40500#true} is VALID [2018-11-23 12:15:03,055 INFO L273 TraceCheckUtils]: 180: Hoare triple {40500#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40500#true} is VALID [2018-11-23 12:15:03,055 INFO L273 TraceCheckUtils]: 181: Hoare triple {40500#true} assume !!(~i~1 < 40); {40500#true} is VALID [2018-11-23 12:15:03,055 INFO L273 TraceCheckUtils]: 182: Hoare triple {40500#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {40500#true} is VALID [2018-11-23 12:15:03,055 INFO L273 TraceCheckUtils]: 183: Hoare triple {40500#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40500#true} is VALID [2018-11-23 12:15:03,055 INFO L273 TraceCheckUtils]: 184: Hoare triple {40500#true} assume !!(~i~1 < 40); {40500#true} is VALID [2018-11-23 12:15:03,056 INFO L273 TraceCheckUtils]: 185: Hoare triple {40500#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {40500#true} is VALID [2018-11-23 12:15:03,056 INFO L273 TraceCheckUtils]: 186: Hoare triple {40500#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40500#true} is VALID [2018-11-23 12:15:03,056 INFO L273 TraceCheckUtils]: 187: Hoare triple {40500#true} assume !(~i~1 < 40); {40500#true} is VALID [2018-11-23 12:15:03,056 INFO L273 TraceCheckUtils]: 188: Hoare triple {40500#true} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {40500#true} is VALID [2018-11-23 12:15:03,056 INFO L273 TraceCheckUtils]: 189: Hoare triple {40500#true} assume true; {40500#true} is VALID [2018-11-23 12:15:03,056 INFO L268 TraceCheckUtils]: 190: Hoare quadruple {40500#true} {40500#true} #86#return; {40500#true} is VALID [2018-11-23 12:15:03,056 INFO L273 TraceCheckUtils]: 191: Hoare triple {40500#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {40500#true} is VALID [2018-11-23 12:15:03,056 INFO L273 TraceCheckUtils]: 192: Hoare triple {40500#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {40500#true} is VALID [2018-11-23 12:15:03,056 INFO L273 TraceCheckUtils]: 193: Hoare triple {40500#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {40500#true} is VALID [2018-11-23 12:15:03,056 INFO L273 TraceCheckUtils]: 194: Hoare triple {40500#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {40500#true} is VALID [2018-11-23 12:15:03,057 INFO L273 TraceCheckUtils]: 195: Hoare triple {40500#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {40500#true} is VALID [2018-11-23 12:15:03,057 INFO L273 TraceCheckUtils]: 196: Hoare triple {40500#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {40500#true} is VALID [2018-11-23 12:15:03,057 INFO L273 TraceCheckUtils]: 197: Hoare triple {40500#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {40500#true} is VALID [2018-11-23 12:15:03,057 INFO L273 TraceCheckUtils]: 198: Hoare triple {40500#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {40500#true} is VALID [2018-11-23 12:15:03,057 INFO L273 TraceCheckUtils]: 199: Hoare triple {40500#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {40500#true} is VALID [2018-11-23 12:15:03,057 INFO L273 TraceCheckUtils]: 200: Hoare triple {40500#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {40500#true} is VALID [2018-11-23 12:15:03,057 INFO L273 TraceCheckUtils]: 201: Hoare triple {40500#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {40500#true} is VALID [2018-11-23 12:15:03,057 INFO L273 TraceCheckUtils]: 202: Hoare triple {40500#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {40500#true} is VALID [2018-11-23 12:15:03,057 INFO L273 TraceCheckUtils]: 203: Hoare triple {40500#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {40500#true} is VALID [2018-11-23 12:15:03,057 INFO L273 TraceCheckUtils]: 204: Hoare triple {40500#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {40500#true} is VALID [2018-11-23 12:15:03,058 INFO L273 TraceCheckUtils]: 205: Hoare triple {40500#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {40500#true} is VALID [2018-11-23 12:15:03,058 INFO L273 TraceCheckUtils]: 206: Hoare triple {40500#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {40500#true} is VALID [2018-11-23 12:15:03,058 INFO L273 TraceCheckUtils]: 207: Hoare triple {40500#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {40500#true} is VALID [2018-11-23 12:15:03,058 INFO L273 TraceCheckUtils]: 208: Hoare triple {40500#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {40500#true} is VALID [2018-11-23 12:15:03,058 INFO L273 TraceCheckUtils]: 209: Hoare triple {40500#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {40500#true} is VALID [2018-11-23 12:15:03,058 INFO L273 TraceCheckUtils]: 210: Hoare triple {40500#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {40500#true} is VALID [2018-11-23 12:15:03,058 INFO L273 TraceCheckUtils]: 211: Hoare triple {40500#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {40500#true} is VALID [2018-11-23 12:15:03,058 INFO L273 TraceCheckUtils]: 212: Hoare triple {40500#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {40500#true} is VALID [2018-11-23 12:15:03,058 INFO L273 TraceCheckUtils]: 213: Hoare triple {40500#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {40500#true} is VALID [2018-11-23 12:15:03,058 INFO L273 TraceCheckUtils]: 214: Hoare triple {40500#true} assume !(~i~2 < 39); {40500#true} is VALID [2018-11-23 12:15:03,059 INFO L273 TraceCheckUtils]: 215: Hoare triple {40500#true} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {40500#true} is VALID [2018-11-23 12:15:03,059 INFO L256 TraceCheckUtils]: 216: Hoare triple {40500#true} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {40500#true} is VALID [2018-11-23 12:15:03,059 INFO L273 TraceCheckUtils]: 217: Hoare triple {40500#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {41156#(<= rangesum_~i~1 0)} is VALID [2018-11-23 12:15:03,060 INFO L273 TraceCheckUtils]: 218: Hoare triple {41156#(<= rangesum_~i~1 0)} assume !!(~i~1 < 40); {41156#(<= rangesum_~i~1 0)} is VALID [2018-11-23 12:15:03,060 INFO L273 TraceCheckUtils]: 219: Hoare triple {41156#(<= rangesum_~i~1 0)} assume !(~i~1 > 20); {41156#(<= rangesum_~i~1 0)} is VALID [2018-11-23 12:15:03,060 INFO L273 TraceCheckUtils]: 220: Hoare triple {41156#(<= rangesum_~i~1 0)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {41166#(<= rangesum_~i~1 1)} is VALID [2018-11-23 12:15:03,061 INFO L273 TraceCheckUtils]: 221: Hoare triple {41166#(<= rangesum_~i~1 1)} assume !!(~i~1 < 40); {41166#(<= rangesum_~i~1 1)} is VALID [2018-11-23 12:15:03,061 INFO L273 TraceCheckUtils]: 222: Hoare triple {41166#(<= rangesum_~i~1 1)} assume !(~i~1 > 20); {41166#(<= rangesum_~i~1 1)} is VALID [2018-11-23 12:15:03,061 INFO L273 TraceCheckUtils]: 223: Hoare triple {41166#(<= rangesum_~i~1 1)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {41176#(<= rangesum_~i~1 2)} is VALID [2018-11-23 12:15:03,062 INFO L273 TraceCheckUtils]: 224: Hoare triple {41176#(<= rangesum_~i~1 2)} assume !!(~i~1 < 40); {41176#(<= rangesum_~i~1 2)} is VALID [2018-11-23 12:15:03,062 INFO L273 TraceCheckUtils]: 225: Hoare triple {41176#(<= rangesum_~i~1 2)} assume !(~i~1 > 20); {41176#(<= rangesum_~i~1 2)} is VALID [2018-11-23 12:15:03,062 INFO L273 TraceCheckUtils]: 226: Hoare triple {41176#(<= rangesum_~i~1 2)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {41186#(<= rangesum_~i~1 3)} is VALID [2018-11-23 12:15:03,063 INFO L273 TraceCheckUtils]: 227: Hoare triple {41186#(<= rangesum_~i~1 3)} assume !!(~i~1 < 40); {41186#(<= rangesum_~i~1 3)} is VALID [2018-11-23 12:15:03,063 INFO L273 TraceCheckUtils]: 228: Hoare triple {41186#(<= rangesum_~i~1 3)} assume !(~i~1 > 20); {41186#(<= rangesum_~i~1 3)} is VALID [2018-11-23 12:15:03,064 INFO L273 TraceCheckUtils]: 229: Hoare triple {41186#(<= rangesum_~i~1 3)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {41196#(<= rangesum_~i~1 4)} is VALID [2018-11-23 12:15:03,065 INFO L273 TraceCheckUtils]: 230: Hoare triple {41196#(<= rangesum_~i~1 4)} assume !!(~i~1 < 40); {41196#(<= rangesum_~i~1 4)} is VALID [2018-11-23 12:15:03,065 INFO L273 TraceCheckUtils]: 231: Hoare triple {41196#(<= rangesum_~i~1 4)} assume !(~i~1 > 20); {41196#(<= rangesum_~i~1 4)} is VALID [2018-11-23 12:15:03,066 INFO L273 TraceCheckUtils]: 232: Hoare triple {41196#(<= rangesum_~i~1 4)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {41206#(<= rangesum_~i~1 5)} is VALID [2018-11-23 12:15:03,066 INFO L273 TraceCheckUtils]: 233: Hoare triple {41206#(<= rangesum_~i~1 5)} assume !!(~i~1 < 40); {41206#(<= rangesum_~i~1 5)} is VALID [2018-11-23 12:15:03,067 INFO L273 TraceCheckUtils]: 234: Hoare triple {41206#(<= rangesum_~i~1 5)} assume !(~i~1 > 20); {41206#(<= rangesum_~i~1 5)} is VALID [2018-11-23 12:15:03,068 INFO L273 TraceCheckUtils]: 235: Hoare triple {41206#(<= rangesum_~i~1 5)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {41216#(<= rangesum_~i~1 6)} is VALID [2018-11-23 12:15:03,068 INFO L273 TraceCheckUtils]: 236: Hoare triple {41216#(<= rangesum_~i~1 6)} assume !!(~i~1 < 40); {41216#(<= rangesum_~i~1 6)} is VALID [2018-11-23 12:15:03,069 INFO L273 TraceCheckUtils]: 237: Hoare triple {41216#(<= rangesum_~i~1 6)} assume !(~i~1 > 20); {41216#(<= rangesum_~i~1 6)} is VALID [2018-11-23 12:15:03,069 INFO L273 TraceCheckUtils]: 238: Hoare triple {41216#(<= rangesum_~i~1 6)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {41226#(<= rangesum_~i~1 7)} is VALID [2018-11-23 12:15:03,070 INFO L273 TraceCheckUtils]: 239: Hoare triple {41226#(<= rangesum_~i~1 7)} assume !!(~i~1 < 40); {41226#(<= rangesum_~i~1 7)} is VALID [2018-11-23 12:15:03,070 INFO L273 TraceCheckUtils]: 240: Hoare triple {41226#(<= rangesum_~i~1 7)} assume !(~i~1 > 20); {41226#(<= rangesum_~i~1 7)} is VALID [2018-11-23 12:15:03,071 INFO L273 TraceCheckUtils]: 241: Hoare triple {41226#(<= rangesum_~i~1 7)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {41236#(<= rangesum_~i~1 8)} is VALID [2018-11-23 12:15:03,071 INFO L273 TraceCheckUtils]: 242: Hoare triple {41236#(<= rangesum_~i~1 8)} assume !!(~i~1 < 40); {41236#(<= rangesum_~i~1 8)} is VALID [2018-11-23 12:15:03,072 INFO L273 TraceCheckUtils]: 243: Hoare triple {41236#(<= rangesum_~i~1 8)} assume !(~i~1 > 20); {41236#(<= rangesum_~i~1 8)} is VALID [2018-11-23 12:15:03,072 INFO L273 TraceCheckUtils]: 244: Hoare triple {41236#(<= rangesum_~i~1 8)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {41246#(<= rangesum_~i~1 9)} is VALID [2018-11-23 12:15:03,073 INFO L273 TraceCheckUtils]: 245: Hoare triple {41246#(<= rangesum_~i~1 9)} assume !!(~i~1 < 40); {41246#(<= rangesum_~i~1 9)} is VALID [2018-11-23 12:15:03,073 INFO L273 TraceCheckUtils]: 246: Hoare triple {41246#(<= rangesum_~i~1 9)} assume !(~i~1 > 20); {41246#(<= rangesum_~i~1 9)} is VALID [2018-11-23 12:15:03,074 INFO L273 TraceCheckUtils]: 247: Hoare triple {41246#(<= rangesum_~i~1 9)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {41256#(<= rangesum_~i~1 10)} is VALID [2018-11-23 12:15:03,075 INFO L273 TraceCheckUtils]: 248: Hoare triple {41256#(<= rangesum_~i~1 10)} assume !!(~i~1 < 40); {41256#(<= rangesum_~i~1 10)} is VALID [2018-11-23 12:15:03,075 INFO L273 TraceCheckUtils]: 249: Hoare triple {41256#(<= rangesum_~i~1 10)} assume !(~i~1 > 20); {41256#(<= rangesum_~i~1 10)} is VALID [2018-11-23 12:15:03,076 INFO L273 TraceCheckUtils]: 250: Hoare triple {41256#(<= rangesum_~i~1 10)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {41266#(<= rangesum_~i~1 11)} is VALID [2018-11-23 12:15:03,076 INFO L273 TraceCheckUtils]: 251: Hoare triple {41266#(<= rangesum_~i~1 11)} assume !!(~i~1 < 40); {41266#(<= rangesum_~i~1 11)} is VALID [2018-11-23 12:15:03,077 INFO L273 TraceCheckUtils]: 252: Hoare triple {41266#(<= rangesum_~i~1 11)} assume !(~i~1 > 20); {41266#(<= rangesum_~i~1 11)} is VALID [2018-11-23 12:15:03,078 INFO L273 TraceCheckUtils]: 253: Hoare triple {41266#(<= rangesum_~i~1 11)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {41276#(<= rangesum_~i~1 12)} is VALID [2018-11-23 12:15:03,078 INFO L273 TraceCheckUtils]: 254: Hoare triple {41276#(<= rangesum_~i~1 12)} assume !!(~i~1 < 40); {41276#(<= rangesum_~i~1 12)} is VALID [2018-11-23 12:15:03,079 INFO L273 TraceCheckUtils]: 255: Hoare triple {41276#(<= rangesum_~i~1 12)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {40501#false} is VALID [2018-11-23 12:15:03,079 INFO L273 TraceCheckUtils]: 256: Hoare triple {40501#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40501#false} is VALID [2018-11-23 12:15:03,079 INFO L273 TraceCheckUtils]: 257: Hoare triple {40501#false} assume !!(~i~1 < 40); {40501#false} is VALID [2018-11-23 12:15:03,080 INFO L273 TraceCheckUtils]: 258: Hoare triple {40501#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {40501#false} is VALID [2018-11-23 12:15:03,080 INFO L273 TraceCheckUtils]: 259: Hoare triple {40501#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40501#false} is VALID [2018-11-23 12:15:03,080 INFO L273 TraceCheckUtils]: 260: Hoare triple {40501#false} assume !!(~i~1 < 40); {40501#false} is VALID [2018-11-23 12:15:03,080 INFO L273 TraceCheckUtils]: 261: Hoare triple {40501#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {40501#false} is VALID [2018-11-23 12:15:03,080 INFO L273 TraceCheckUtils]: 262: Hoare triple {40501#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40501#false} is VALID [2018-11-23 12:15:03,080 INFO L273 TraceCheckUtils]: 263: Hoare triple {40501#false} assume !!(~i~1 < 40); {40501#false} is VALID [2018-11-23 12:15:03,081 INFO L273 TraceCheckUtils]: 264: Hoare triple {40501#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {40501#false} is VALID [2018-11-23 12:15:03,081 INFO L273 TraceCheckUtils]: 265: Hoare triple {40501#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40501#false} is VALID [2018-11-23 12:15:03,081 INFO L273 TraceCheckUtils]: 266: Hoare triple {40501#false} assume !!(~i~1 < 40); {40501#false} is VALID [2018-11-23 12:15:03,081 INFO L273 TraceCheckUtils]: 267: Hoare triple {40501#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {40501#false} is VALID [2018-11-23 12:15:03,081 INFO L273 TraceCheckUtils]: 268: Hoare triple {40501#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40501#false} is VALID [2018-11-23 12:15:03,081 INFO L273 TraceCheckUtils]: 269: Hoare triple {40501#false} assume !!(~i~1 < 40); {40501#false} is VALID [2018-11-23 12:15:03,081 INFO L273 TraceCheckUtils]: 270: Hoare triple {40501#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {40501#false} is VALID [2018-11-23 12:15:03,082 INFO L273 TraceCheckUtils]: 271: Hoare triple {40501#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40501#false} is VALID [2018-11-23 12:15:03,082 INFO L273 TraceCheckUtils]: 272: Hoare triple {40501#false} assume !!(~i~1 < 40); {40501#false} is VALID [2018-11-23 12:15:03,082 INFO L273 TraceCheckUtils]: 273: Hoare triple {40501#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {40501#false} is VALID [2018-11-23 12:15:03,082 INFO L273 TraceCheckUtils]: 274: Hoare triple {40501#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40501#false} is VALID [2018-11-23 12:15:03,082 INFO L273 TraceCheckUtils]: 275: Hoare triple {40501#false} assume !!(~i~1 < 40); {40501#false} is VALID [2018-11-23 12:15:03,082 INFO L273 TraceCheckUtils]: 276: Hoare triple {40501#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {40501#false} is VALID [2018-11-23 12:15:03,082 INFO L273 TraceCheckUtils]: 277: Hoare triple {40501#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40501#false} is VALID [2018-11-23 12:15:03,082 INFO L273 TraceCheckUtils]: 278: Hoare triple {40501#false} assume !!(~i~1 < 40); {40501#false} is VALID [2018-11-23 12:15:03,082 INFO L273 TraceCheckUtils]: 279: Hoare triple {40501#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {40501#false} is VALID [2018-11-23 12:15:03,082 INFO L273 TraceCheckUtils]: 280: Hoare triple {40501#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40501#false} is VALID [2018-11-23 12:15:03,083 INFO L273 TraceCheckUtils]: 281: Hoare triple {40501#false} assume !!(~i~1 < 40); {40501#false} is VALID [2018-11-23 12:15:03,083 INFO L273 TraceCheckUtils]: 282: Hoare triple {40501#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {40501#false} is VALID [2018-11-23 12:15:03,083 INFO L273 TraceCheckUtils]: 283: Hoare triple {40501#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {40501#false} is VALID [2018-11-23 12:15:03,083 INFO L273 TraceCheckUtils]: 284: Hoare triple {40501#false} assume !(~i~1 < 40); {40501#false} is VALID [2018-11-23 12:15:03,083 INFO L273 TraceCheckUtils]: 285: Hoare triple {40501#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {40501#false} is VALID [2018-11-23 12:15:03,083 INFO L273 TraceCheckUtils]: 286: Hoare triple {40501#false} assume true; {40501#false} is VALID [2018-11-23 12:15:03,083 INFO L268 TraceCheckUtils]: 287: Hoare quadruple {40501#false} {40500#true} #88#return; {40501#false} is VALID [2018-11-23 12:15:03,084 INFO L273 TraceCheckUtils]: 288: Hoare triple {40501#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {40501#false} is VALID [2018-11-23 12:15:03,084 INFO L273 TraceCheckUtils]: 289: Hoare triple {40501#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {40501#false} is VALID [2018-11-23 12:15:03,084 INFO L273 TraceCheckUtils]: 290: Hoare triple {40501#false} assume !false; {40501#false} is VALID [2018-11-23 12:15:03,167 INFO L134 CoverageAnalysis]: Checked inductivity of 7058 backedges. 3367 proven. 222 refuted. 0 times theorem prover too weak. 3469 trivial. 0 not checked. [2018-11-23 12:15:03,186 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:15:03,186 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [15] total 15 [2018-11-23 12:15:03,186 INFO L78 Accepts]: Start accepts. Automaton has 15 states. Word has length 291 [2018-11-23 12:15:03,187 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:15:03,187 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 15 states. [2018-11-23 12:15:03,264 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-23 12:15:03,264 INFO L459 AbstractCegarLoop]: Interpolant automaton has 15 states [2018-11-23 12:15:03,264 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2018-11-23 12:15:03,265 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=105, Invalid=105, Unknown=0, NotChecked=0, Total=210 [2018-11-23 12:15:03,265 INFO L87 Difference]: Start difference. First operand 150 states and 165 transitions. Second operand 15 states. [2018-11-23 12:15:03,653 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:03,654 INFO L93 Difference]: Finished difference Result 257 states and 289 transitions. [2018-11-23 12:15:03,654 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2018-11-23 12:15:03,654 INFO L78 Accepts]: Start accepts. Automaton has 15 states. Word has length 291 [2018-11-23 12:15:03,654 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:15:03,654 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 15 states. [2018-11-23 12:15:03,655 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 103 transitions. [2018-11-23 12:15:03,655 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 15 states. [2018-11-23 12:15:03,655 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 103 transitions. [2018-11-23 12:15:03,656 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 15 states and 103 transitions. [2018-11-23 12:15:03,742 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-23 12:15:03,745 INFO L225 Difference]: With dead ends: 257 [2018-11-23 12:15:03,745 INFO L226 Difference]: Without dead ends: 154 [2018-11-23 12:15:03,747 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 290 GetRequests, 277 SyntacticMatches, 0 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=105, Invalid=105, Unknown=0, NotChecked=0, Total=210 [2018-11-23 12:15:03,747 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 154 states. [2018-11-23 12:15:03,845 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 154 to 153. [2018-11-23 12:15:03,845 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:15:03,845 INFO L82 GeneralOperation]: Start isEquivalent. First operand 154 states. Second operand 153 states. [2018-11-23 12:15:03,846 INFO L74 IsIncluded]: Start isIncluded. First operand 154 states. Second operand 153 states. [2018-11-23 12:15:03,846 INFO L87 Difference]: Start difference. First operand 154 states. Second operand 153 states. [2018-11-23 12:15:03,849 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:03,849 INFO L93 Difference]: Finished difference Result 154 states and 169 transitions. [2018-11-23 12:15:03,849 INFO L276 IsEmpty]: Start isEmpty. Operand 154 states and 169 transitions. [2018-11-23 12:15:03,849 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:15:03,849 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:15:03,849 INFO L74 IsIncluded]: Start isIncluded. First operand 153 states. Second operand 154 states. [2018-11-23 12:15:03,849 INFO L87 Difference]: Start difference. First operand 153 states. Second operand 154 states. [2018-11-23 12:15:03,851 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:03,851 INFO L93 Difference]: Finished difference Result 154 states and 169 transitions. [2018-11-23 12:15:03,851 INFO L276 IsEmpty]: Start isEmpty. Operand 154 states and 169 transitions. [2018-11-23 12:15:03,852 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:15:03,852 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:15:03,852 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:15:03,852 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:15:03,852 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 153 states. [2018-11-23 12:15:03,854 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 153 states to 153 states and 168 transitions. [2018-11-23 12:15:03,854 INFO L78 Accepts]: Start accepts. Automaton has 153 states and 168 transitions. Word has length 291 [2018-11-23 12:15:03,854 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:15:03,855 INFO L480 AbstractCegarLoop]: Abstraction has 153 states and 168 transitions. [2018-11-23 12:15:03,855 INFO L481 AbstractCegarLoop]: Interpolant automaton has 15 states. [2018-11-23 12:15:03,855 INFO L276 IsEmpty]: Start isEmpty. Operand 153 states and 168 transitions. [2018-11-23 12:15:03,856 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 301 [2018-11-23 12:15:03,856 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:15:03,856 INFO L402 BasicCegarLoop]: trace histogram [69, 69, 39, 30, 17, 17, 11, 11, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:15:03,857 INFO L423 AbstractCegarLoop]: === Iteration 46 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:15:03,857 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:15:03,857 INFO L82 PathProgramCache]: Analyzing trace with hash -1454392292, now seen corresponding path program 41 times [2018-11-23 12:15:03,857 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:15:03,857 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:15:03,858 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:15:03,858 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:15:03,858 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:15:03,872 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:15:03,872 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:15:03,872 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 47 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 47 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:15:03,889 INFO L103 rtionOrderModulation]: Keeping assertion order INSIDE_LOOP_FIRST1 [2018-11-23 12:15:03,937 INFO L249 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 12 check-sat command(s) [2018-11-23 12:15:03,937 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:15:03,988 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:15:03,990 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:15:04,323 INFO L256 TraceCheckUtils]: 0: Hoare triple {42271#true} call ULTIMATE.init(); {42271#true} is VALID [2018-11-23 12:15:04,324 INFO L273 TraceCheckUtils]: 1: Hoare triple {42271#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {42271#true} is VALID [2018-11-23 12:15:04,324 INFO L273 TraceCheckUtils]: 2: Hoare triple {42271#true} assume true; {42271#true} is VALID [2018-11-23 12:15:04,324 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {42271#true} {42271#true} #78#return; {42271#true} is VALID [2018-11-23 12:15:04,324 INFO L256 TraceCheckUtils]: 4: Hoare triple {42271#true} call #t~ret12 := main(); {42271#true} is VALID [2018-11-23 12:15:04,324 INFO L273 TraceCheckUtils]: 5: Hoare triple {42271#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {42271#true} is VALID [2018-11-23 12:15:04,325 INFO L256 TraceCheckUtils]: 6: Hoare triple {42271#true} call init_nondet(~#x~0.base, ~#x~0.offset); {42271#true} is VALID [2018-11-23 12:15:04,325 INFO L273 TraceCheckUtils]: 7: Hoare triple {42271#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {42271#true} is VALID [2018-11-23 12:15:04,325 INFO L273 TraceCheckUtils]: 8: Hoare triple {42271#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {42271#true} is VALID [2018-11-23 12:15:04,325 INFO L273 TraceCheckUtils]: 9: Hoare triple {42271#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {42271#true} is VALID [2018-11-23 12:15:04,325 INFO L273 TraceCheckUtils]: 10: Hoare triple {42271#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {42271#true} is VALID [2018-11-23 12:15:04,325 INFO L273 TraceCheckUtils]: 11: Hoare triple {42271#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {42271#true} is VALID [2018-11-23 12:15:04,326 INFO L273 TraceCheckUtils]: 12: Hoare triple {42271#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {42271#true} is VALID [2018-11-23 12:15:04,326 INFO L273 TraceCheckUtils]: 13: Hoare triple {42271#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {42271#true} is VALID [2018-11-23 12:15:04,326 INFO L273 TraceCheckUtils]: 14: Hoare triple {42271#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {42271#true} is VALID [2018-11-23 12:15:04,326 INFO L273 TraceCheckUtils]: 15: Hoare triple {42271#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {42271#true} is VALID [2018-11-23 12:15:04,326 INFO L273 TraceCheckUtils]: 16: Hoare triple {42271#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {42271#true} is VALID [2018-11-23 12:15:04,326 INFO L273 TraceCheckUtils]: 17: Hoare triple {42271#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {42271#true} is VALID [2018-11-23 12:15:04,327 INFO L273 TraceCheckUtils]: 18: Hoare triple {42271#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {42271#true} is VALID [2018-11-23 12:15:04,327 INFO L273 TraceCheckUtils]: 19: Hoare triple {42271#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {42271#true} is VALID [2018-11-23 12:15:04,327 INFO L273 TraceCheckUtils]: 20: Hoare triple {42271#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {42271#true} is VALID [2018-11-23 12:15:04,327 INFO L273 TraceCheckUtils]: 21: Hoare triple {42271#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {42271#true} is VALID [2018-11-23 12:15:04,327 INFO L273 TraceCheckUtils]: 22: Hoare triple {42271#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {42271#true} is VALID [2018-11-23 12:15:04,327 INFO L273 TraceCheckUtils]: 23: Hoare triple {42271#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {42271#true} is VALID [2018-11-23 12:15:04,327 INFO L273 TraceCheckUtils]: 24: Hoare triple {42271#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {42271#true} is VALID [2018-11-23 12:15:04,327 INFO L273 TraceCheckUtils]: 25: Hoare triple {42271#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {42271#true} is VALID [2018-11-23 12:15:04,327 INFO L273 TraceCheckUtils]: 26: Hoare triple {42271#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {42271#true} is VALID [2018-11-23 12:15:04,328 INFO L273 TraceCheckUtils]: 27: Hoare triple {42271#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {42271#true} is VALID [2018-11-23 12:15:04,328 INFO L273 TraceCheckUtils]: 28: Hoare triple {42271#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {42271#true} is VALID [2018-11-23 12:15:04,328 INFO L273 TraceCheckUtils]: 29: Hoare triple {42271#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {42271#true} is VALID [2018-11-23 12:15:04,328 INFO L273 TraceCheckUtils]: 30: Hoare triple {42271#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {42271#true} is VALID [2018-11-23 12:15:04,328 INFO L273 TraceCheckUtils]: 31: Hoare triple {42271#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {42271#true} is VALID [2018-11-23 12:15:04,328 INFO L273 TraceCheckUtils]: 32: Hoare triple {42271#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {42271#true} is VALID [2018-11-23 12:15:04,328 INFO L273 TraceCheckUtils]: 33: Hoare triple {42271#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {42271#true} is VALID [2018-11-23 12:15:04,328 INFO L273 TraceCheckUtils]: 34: Hoare triple {42271#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {42271#true} is VALID [2018-11-23 12:15:04,328 INFO L273 TraceCheckUtils]: 35: Hoare triple {42271#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {42271#true} is VALID [2018-11-23 12:15:04,328 INFO L273 TraceCheckUtils]: 36: Hoare triple {42271#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {42271#true} is VALID [2018-11-23 12:15:04,329 INFO L273 TraceCheckUtils]: 37: Hoare triple {42271#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {42271#true} is VALID [2018-11-23 12:15:04,329 INFO L273 TraceCheckUtils]: 38: Hoare triple {42271#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {42271#true} is VALID [2018-11-23 12:15:04,329 INFO L273 TraceCheckUtils]: 39: Hoare triple {42271#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {42271#true} is VALID [2018-11-23 12:15:04,329 INFO L273 TraceCheckUtils]: 40: Hoare triple {42271#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {42271#true} is VALID [2018-11-23 12:15:04,329 INFO L273 TraceCheckUtils]: 41: Hoare triple {42271#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {42271#true} is VALID [2018-11-23 12:15:04,329 INFO L273 TraceCheckUtils]: 42: Hoare triple {42271#true} assume !(~i~0 < 40); {42271#true} is VALID [2018-11-23 12:15:04,329 INFO L273 TraceCheckUtils]: 43: Hoare triple {42271#true} assume true; {42271#true} is VALID [2018-11-23 12:15:04,329 INFO L268 TraceCheckUtils]: 44: Hoare quadruple {42271#true} {42271#true} #82#return; {42271#true} is VALID [2018-11-23 12:15:04,329 INFO L273 TraceCheckUtils]: 45: Hoare triple {42271#true} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {42271#true} is VALID [2018-11-23 12:15:04,329 INFO L256 TraceCheckUtils]: 46: Hoare triple {42271#true} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {42271#true} is VALID [2018-11-23 12:15:04,330 INFO L273 TraceCheckUtils]: 47: Hoare triple {42271#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {42271#true} is VALID [2018-11-23 12:15:04,330 INFO L273 TraceCheckUtils]: 48: Hoare triple {42271#true} assume !!(~i~1 < 40); {42271#true} is VALID [2018-11-23 12:15:04,330 INFO L273 TraceCheckUtils]: 49: Hoare triple {42271#true} assume !(~i~1 > 20); {42271#true} is VALID [2018-11-23 12:15:04,330 INFO L273 TraceCheckUtils]: 50: Hoare triple {42271#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42271#true} is VALID [2018-11-23 12:15:04,330 INFO L273 TraceCheckUtils]: 51: Hoare triple {42271#true} assume !!(~i~1 < 40); {42271#true} is VALID [2018-11-23 12:15:04,330 INFO L273 TraceCheckUtils]: 52: Hoare triple {42271#true} assume !(~i~1 > 20); {42271#true} is VALID [2018-11-23 12:15:04,330 INFO L273 TraceCheckUtils]: 53: Hoare triple {42271#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42271#true} is VALID [2018-11-23 12:15:04,330 INFO L273 TraceCheckUtils]: 54: Hoare triple {42271#true} assume !!(~i~1 < 40); {42271#true} is VALID [2018-11-23 12:15:04,330 INFO L273 TraceCheckUtils]: 55: Hoare triple {42271#true} assume !(~i~1 > 20); {42271#true} is VALID [2018-11-23 12:15:04,331 INFO L273 TraceCheckUtils]: 56: Hoare triple {42271#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42271#true} is VALID [2018-11-23 12:15:04,331 INFO L273 TraceCheckUtils]: 57: Hoare triple {42271#true} assume !!(~i~1 < 40); {42271#true} is VALID [2018-11-23 12:15:04,331 INFO L273 TraceCheckUtils]: 58: Hoare triple {42271#true} assume !(~i~1 > 20); {42271#true} is VALID [2018-11-23 12:15:04,331 INFO L273 TraceCheckUtils]: 59: Hoare triple {42271#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42271#true} is VALID [2018-11-23 12:15:04,331 INFO L273 TraceCheckUtils]: 60: Hoare triple {42271#true} assume !!(~i~1 < 40); {42271#true} is VALID [2018-11-23 12:15:04,331 INFO L273 TraceCheckUtils]: 61: Hoare triple {42271#true} assume !(~i~1 > 20); {42271#true} is VALID [2018-11-23 12:15:04,331 INFO L273 TraceCheckUtils]: 62: Hoare triple {42271#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42271#true} is VALID [2018-11-23 12:15:04,331 INFO L273 TraceCheckUtils]: 63: Hoare triple {42271#true} assume !!(~i~1 < 40); {42271#true} is VALID [2018-11-23 12:15:04,331 INFO L273 TraceCheckUtils]: 64: Hoare triple {42271#true} assume !(~i~1 > 20); {42271#true} is VALID [2018-11-23 12:15:04,331 INFO L273 TraceCheckUtils]: 65: Hoare triple {42271#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42271#true} is VALID [2018-11-23 12:15:04,332 INFO L273 TraceCheckUtils]: 66: Hoare triple {42271#true} assume !!(~i~1 < 40); {42271#true} is VALID [2018-11-23 12:15:04,332 INFO L273 TraceCheckUtils]: 67: Hoare triple {42271#true} assume !(~i~1 > 20); {42271#true} is VALID [2018-11-23 12:15:04,332 INFO L273 TraceCheckUtils]: 68: Hoare triple {42271#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42271#true} is VALID [2018-11-23 12:15:04,332 INFO L273 TraceCheckUtils]: 69: Hoare triple {42271#true} assume !!(~i~1 < 40); {42271#true} is VALID [2018-11-23 12:15:04,332 INFO L273 TraceCheckUtils]: 70: Hoare triple {42271#true} assume !(~i~1 > 20); {42271#true} is VALID [2018-11-23 12:15:04,332 INFO L273 TraceCheckUtils]: 71: Hoare triple {42271#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42271#true} is VALID [2018-11-23 12:15:04,332 INFO L273 TraceCheckUtils]: 72: Hoare triple {42271#true} assume !!(~i~1 < 40); {42271#true} is VALID [2018-11-23 12:15:04,332 INFO L273 TraceCheckUtils]: 73: Hoare triple {42271#true} assume !(~i~1 > 20); {42271#true} is VALID [2018-11-23 12:15:04,332 INFO L273 TraceCheckUtils]: 74: Hoare triple {42271#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42271#true} is VALID [2018-11-23 12:15:04,332 INFO L273 TraceCheckUtils]: 75: Hoare triple {42271#true} assume !!(~i~1 < 40); {42271#true} is VALID [2018-11-23 12:15:04,333 INFO L273 TraceCheckUtils]: 76: Hoare triple {42271#true} assume !(~i~1 > 20); {42271#true} is VALID [2018-11-23 12:15:04,333 INFO L273 TraceCheckUtils]: 77: Hoare triple {42271#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42271#true} is VALID [2018-11-23 12:15:04,333 INFO L273 TraceCheckUtils]: 78: Hoare triple {42271#true} assume !!(~i~1 < 40); {42271#true} is VALID [2018-11-23 12:15:04,333 INFO L273 TraceCheckUtils]: 79: Hoare triple {42271#true} assume !(~i~1 > 20); {42271#true} is VALID [2018-11-23 12:15:04,333 INFO L273 TraceCheckUtils]: 80: Hoare triple {42271#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42271#true} is VALID [2018-11-23 12:15:04,333 INFO L273 TraceCheckUtils]: 81: Hoare triple {42271#true} assume !!(~i~1 < 40); {42271#true} is VALID [2018-11-23 12:15:04,333 INFO L273 TraceCheckUtils]: 82: Hoare triple {42271#true} assume !(~i~1 > 20); {42271#true} is VALID [2018-11-23 12:15:04,333 INFO L273 TraceCheckUtils]: 83: Hoare triple {42271#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42271#true} is VALID [2018-11-23 12:15:04,333 INFO L273 TraceCheckUtils]: 84: Hoare triple {42271#true} assume !!(~i~1 < 40); {42271#true} is VALID [2018-11-23 12:15:04,334 INFO L273 TraceCheckUtils]: 85: Hoare triple {42271#true} assume !(~i~1 > 20); {42531#(<= rangesum_~i~1 20)} is VALID [2018-11-23 12:15:04,334 INFO L273 TraceCheckUtils]: 86: Hoare triple {42531#(<= rangesum_~i~1 20)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42535#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:15:04,335 INFO L273 TraceCheckUtils]: 87: Hoare triple {42535#(<= rangesum_~i~1 21)} assume !!(~i~1 < 40); {42535#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:15:04,335 INFO L273 TraceCheckUtils]: 88: Hoare triple {42535#(<= rangesum_~i~1 21)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {42535#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:15:04,335 INFO L273 TraceCheckUtils]: 89: Hoare triple {42535#(<= rangesum_~i~1 21)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42545#(<= rangesum_~i~1 22)} is VALID [2018-11-23 12:15:04,336 INFO L273 TraceCheckUtils]: 90: Hoare triple {42545#(<= rangesum_~i~1 22)} assume !!(~i~1 < 40); {42545#(<= rangesum_~i~1 22)} is VALID [2018-11-23 12:15:04,336 INFO L273 TraceCheckUtils]: 91: Hoare triple {42545#(<= rangesum_~i~1 22)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {42545#(<= rangesum_~i~1 22)} is VALID [2018-11-23 12:15:04,337 INFO L273 TraceCheckUtils]: 92: Hoare triple {42545#(<= rangesum_~i~1 22)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42555#(<= rangesum_~i~1 23)} is VALID [2018-11-23 12:15:04,337 INFO L273 TraceCheckUtils]: 93: Hoare triple {42555#(<= rangesum_~i~1 23)} assume !!(~i~1 < 40); {42555#(<= rangesum_~i~1 23)} is VALID [2018-11-23 12:15:04,338 INFO L273 TraceCheckUtils]: 94: Hoare triple {42555#(<= rangesum_~i~1 23)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {42555#(<= rangesum_~i~1 23)} is VALID [2018-11-23 12:15:04,338 INFO L273 TraceCheckUtils]: 95: Hoare triple {42555#(<= rangesum_~i~1 23)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42565#(<= rangesum_~i~1 24)} is VALID [2018-11-23 12:15:04,339 INFO L273 TraceCheckUtils]: 96: Hoare triple {42565#(<= rangesum_~i~1 24)} assume !!(~i~1 < 40); {42565#(<= rangesum_~i~1 24)} is VALID [2018-11-23 12:15:04,339 INFO L273 TraceCheckUtils]: 97: Hoare triple {42565#(<= rangesum_~i~1 24)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {42565#(<= rangesum_~i~1 24)} is VALID [2018-11-23 12:15:04,340 INFO L273 TraceCheckUtils]: 98: Hoare triple {42565#(<= rangesum_~i~1 24)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42575#(<= rangesum_~i~1 25)} is VALID [2018-11-23 12:15:04,340 INFO L273 TraceCheckUtils]: 99: Hoare triple {42575#(<= rangesum_~i~1 25)} assume !!(~i~1 < 40); {42575#(<= rangesum_~i~1 25)} is VALID [2018-11-23 12:15:04,341 INFO L273 TraceCheckUtils]: 100: Hoare triple {42575#(<= rangesum_~i~1 25)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {42575#(<= rangesum_~i~1 25)} is VALID [2018-11-23 12:15:04,342 INFO L273 TraceCheckUtils]: 101: Hoare triple {42575#(<= rangesum_~i~1 25)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42585#(<= rangesum_~i~1 26)} is VALID [2018-11-23 12:15:04,342 INFO L273 TraceCheckUtils]: 102: Hoare triple {42585#(<= rangesum_~i~1 26)} assume !!(~i~1 < 40); {42585#(<= rangesum_~i~1 26)} is VALID [2018-11-23 12:15:04,343 INFO L273 TraceCheckUtils]: 103: Hoare triple {42585#(<= rangesum_~i~1 26)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {42585#(<= rangesum_~i~1 26)} is VALID [2018-11-23 12:15:04,343 INFO L273 TraceCheckUtils]: 104: Hoare triple {42585#(<= rangesum_~i~1 26)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42595#(<= rangesum_~i~1 27)} is VALID [2018-11-23 12:15:04,344 INFO L273 TraceCheckUtils]: 105: Hoare triple {42595#(<= rangesum_~i~1 27)} assume !!(~i~1 < 40); {42595#(<= rangesum_~i~1 27)} is VALID [2018-11-23 12:15:04,344 INFO L273 TraceCheckUtils]: 106: Hoare triple {42595#(<= rangesum_~i~1 27)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {42595#(<= rangesum_~i~1 27)} is VALID [2018-11-23 12:15:04,345 INFO L273 TraceCheckUtils]: 107: Hoare triple {42595#(<= rangesum_~i~1 27)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42605#(<= rangesum_~i~1 28)} is VALID [2018-11-23 12:15:04,346 INFO L273 TraceCheckUtils]: 108: Hoare triple {42605#(<= rangesum_~i~1 28)} assume !!(~i~1 < 40); {42605#(<= rangesum_~i~1 28)} is VALID [2018-11-23 12:15:04,346 INFO L273 TraceCheckUtils]: 109: Hoare triple {42605#(<= rangesum_~i~1 28)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {42605#(<= rangesum_~i~1 28)} is VALID [2018-11-23 12:15:04,347 INFO L273 TraceCheckUtils]: 110: Hoare triple {42605#(<= rangesum_~i~1 28)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42615#(<= rangesum_~i~1 29)} is VALID [2018-11-23 12:15:04,347 INFO L273 TraceCheckUtils]: 111: Hoare triple {42615#(<= rangesum_~i~1 29)} assume !!(~i~1 < 40); {42615#(<= rangesum_~i~1 29)} is VALID [2018-11-23 12:15:04,348 INFO L273 TraceCheckUtils]: 112: Hoare triple {42615#(<= rangesum_~i~1 29)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {42615#(<= rangesum_~i~1 29)} is VALID [2018-11-23 12:15:04,349 INFO L273 TraceCheckUtils]: 113: Hoare triple {42615#(<= rangesum_~i~1 29)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42625#(<= rangesum_~i~1 30)} is VALID [2018-11-23 12:15:04,349 INFO L273 TraceCheckUtils]: 114: Hoare triple {42625#(<= rangesum_~i~1 30)} assume !!(~i~1 < 40); {42625#(<= rangesum_~i~1 30)} is VALID [2018-11-23 12:15:04,350 INFO L273 TraceCheckUtils]: 115: Hoare triple {42625#(<= rangesum_~i~1 30)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {42625#(<= rangesum_~i~1 30)} is VALID [2018-11-23 12:15:04,350 INFO L273 TraceCheckUtils]: 116: Hoare triple {42625#(<= rangesum_~i~1 30)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42635#(<= rangesum_~i~1 31)} is VALID [2018-11-23 12:15:04,351 INFO L273 TraceCheckUtils]: 117: Hoare triple {42635#(<= rangesum_~i~1 31)} assume !(~i~1 < 40); {42272#false} is VALID [2018-11-23 12:15:04,351 INFO L273 TraceCheckUtils]: 118: Hoare triple {42272#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {42272#false} is VALID [2018-11-23 12:15:04,352 INFO L273 TraceCheckUtils]: 119: Hoare triple {42272#false} assume true; {42272#false} is VALID [2018-11-23 12:15:04,352 INFO L268 TraceCheckUtils]: 120: Hoare quadruple {42272#false} {42271#true} #84#return; {42272#false} is VALID [2018-11-23 12:15:04,352 INFO L273 TraceCheckUtils]: 121: Hoare triple {42272#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {42272#false} is VALID [2018-11-23 12:15:04,352 INFO L256 TraceCheckUtils]: 122: Hoare triple {42272#false} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {42272#false} is VALID [2018-11-23 12:15:04,352 INFO L273 TraceCheckUtils]: 123: Hoare triple {42272#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {42272#false} is VALID [2018-11-23 12:15:04,352 INFO L273 TraceCheckUtils]: 124: Hoare triple {42272#false} assume !!(~i~1 < 40); {42272#false} is VALID [2018-11-23 12:15:04,353 INFO L273 TraceCheckUtils]: 125: Hoare triple {42272#false} assume !(~i~1 > 20); {42272#false} is VALID [2018-11-23 12:15:04,353 INFO L273 TraceCheckUtils]: 126: Hoare triple {42272#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42272#false} is VALID [2018-11-23 12:15:04,353 INFO L273 TraceCheckUtils]: 127: Hoare triple {42272#false} assume !!(~i~1 < 40); {42272#false} is VALID [2018-11-23 12:15:04,353 INFO L273 TraceCheckUtils]: 128: Hoare triple {42272#false} assume !(~i~1 > 20); {42272#false} is VALID [2018-11-23 12:15:04,353 INFO L273 TraceCheckUtils]: 129: Hoare triple {42272#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42272#false} is VALID [2018-11-23 12:15:04,354 INFO L273 TraceCheckUtils]: 130: Hoare triple {42272#false} assume !!(~i~1 < 40); {42272#false} is VALID [2018-11-23 12:15:04,354 INFO L273 TraceCheckUtils]: 131: Hoare triple {42272#false} assume !(~i~1 > 20); {42272#false} is VALID [2018-11-23 12:15:04,354 INFO L273 TraceCheckUtils]: 132: Hoare triple {42272#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42272#false} is VALID [2018-11-23 12:15:04,354 INFO L273 TraceCheckUtils]: 133: Hoare triple {42272#false} assume !!(~i~1 < 40); {42272#false} is VALID [2018-11-23 12:15:04,354 INFO L273 TraceCheckUtils]: 134: Hoare triple {42272#false} assume !(~i~1 > 20); {42272#false} is VALID [2018-11-23 12:15:04,354 INFO L273 TraceCheckUtils]: 135: Hoare triple {42272#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42272#false} is VALID [2018-11-23 12:15:04,354 INFO L273 TraceCheckUtils]: 136: Hoare triple {42272#false} assume !!(~i~1 < 40); {42272#false} is VALID [2018-11-23 12:15:04,354 INFO L273 TraceCheckUtils]: 137: Hoare triple {42272#false} assume !(~i~1 > 20); {42272#false} is VALID [2018-11-23 12:15:04,354 INFO L273 TraceCheckUtils]: 138: Hoare triple {42272#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42272#false} is VALID [2018-11-23 12:15:04,354 INFO L273 TraceCheckUtils]: 139: Hoare triple {42272#false} assume !!(~i~1 < 40); {42272#false} is VALID [2018-11-23 12:15:04,355 INFO L273 TraceCheckUtils]: 140: Hoare triple {42272#false} assume !(~i~1 > 20); {42272#false} is VALID [2018-11-23 12:15:04,355 INFO L273 TraceCheckUtils]: 141: Hoare triple {42272#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42272#false} is VALID [2018-11-23 12:15:04,355 INFO L273 TraceCheckUtils]: 142: Hoare triple {42272#false} assume !!(~i~1 < 40); {42272#false} is VALID [2018-11-23 12:15:04,355 INFO L273 TraceCheckUtils]: 143: Hoare triple {42272#false} assume !(~i~1 > 20); {42272#false} is VALID [2018-11-23 12:15:04,355 INFO L273 TraceCheckUtils]: 144: Hoare triple {42272#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42272#false} is VALID [2018-11-23 12:15:04,355 INFO L273 TraceCheckUtils]: 145: Hoare triple {42272#false} assume !!(~i~1 < 40); {42272#false} is VALID [2018-11-23 12:15:04,355 INFO L273 TraceCheckUtils]: 146: Hoare triple {42272#false} assume !(~i~1 > 20); {42272#false} is VALID [2018-11-23 12:15:04,355 INFO L273 TraceCheckUtils]: 147: Hoare triple {42272#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42272#false} is VALID [2018-11-23 12:15:04,355 INFO L273 TraceCheckUtils]: 148: Hoare triple {42272#false} assume !!(~i~1 < 40); {42272#false} is VALID [2018-11-23 12:15:04,355 INFO L273 TraceCheckUtils]: 149: Hoare triple {42272#false} assume !(~i~1 > 20); {42272#false} is VALID [2018-11-23 12:15:04,356 INFO L273 TraceCheckUtils]: 150: Hoare triple {42272#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42272#false} is VALID [2018-11-23 12:15:04,356 INFO L273 TraceCheckUtils]: 151: Hoare triple {42272#false} assume !!(~i~1 < 40); {42272#false} is VALID [2018-11-23 12:15:04,356 INFO L273 TraceCheckUtils]: 152: Hoare triple {42272#false} assume !(~i~1 > 20); {42272#false} is VALID [2018-11-23 12:15:04,356 INFO L273 TraceCheckUtils]: 153: Hoare triple {42272#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42272#false} is VALID [2018-11-23 12:15:04,356 INFO L273 TraceCheckUtils]: 154: Hoare triple {42272#false} assume !!(~i~1 < 40); {42272#false} is VALID [2018-11-23 12:15:04,356 INFO L273 TraceCheckUtils]: 155: Hoare triple {42272#false} assume !(~i~1 > 20); {42272#false} is VALID [2018-11-23 12:15:04,356 INFO L273 TraceCheckUtils]: 156: Hoare triple {42272#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42272#false} is VALID [2018-11-23 12:15:04,356 INFO L273 TraceCheckUtils]: 157: Hoare triple {42272#false} assume !!(~i~1 < 40); {42272#false} is VALID [2018-11-23 12:15:04,356 INFO L273 TraceCheckUtils]: 158: Hoare triple {42272#false} assume !(~i~1 > 20); {42272#false} is VALID [2018-11-23 12:15:04,356 INFO L273 TraceCheckUtils]: 159: Hoare triple {42272#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42272#false} is VALID [2018-11-23 12:15:04,357 INFO L273 TraceCheckUtils]: 160: Hoare triple {42272#false} assume !!(~i~1 < 40); {42272#false} is VALID [2018-11-23 12:15:04,357 INFO L273 TraceCheckUtils]: 161: Hoare triple {42272#false} assume !(~i~1 > 20); {42272#false} is VALID [2018-11-23 12:15:04,357 INFO L273 TraceCheckUtils]: 162: Hoare triple {42272#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42272#false} is VALID [2018-11-23 12:15:04,357 INFO L273 TraceCheckUtils]: 163: Hoare triple {42272#false} assume !!(~i~1 < 40); {42272#false} is VALID [2018-11-23 12:15:04,357 INFO L273 TraceCheckUtils]: 164: Hoare triple {42272#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {42272#false} is VALID [2018-11-23 12:15:04,357 INFO L273 TraceCheckUtils]: 165: Hoare triple {42272#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42272#false} is VALID [2018-11-23 12:15:04,357 INFO L273 TraceCheckUtils]: 166: Hoare triple {42272#false} assume !!(~i~1 < 40); {42272#false} is VALID [2018-11-23 12:15:04,357 INFO L273 TraceCheckUtils]: 167: Hoare triple {42272#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {42272#false} is VALID [2018-11-23 12:15:04,357 INFO L273 TraceCheckUtils]: 168: Hoare triple {42272#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42272#false} is VALID [2018-11-23 12:15:04,357 INFO L273 TraceCheckUtils]: 169: Hoare triple {42272#false} assume !!(~i~1 < 40); {42272#false} is VALID [2018-11-23 12:15:04,358 INFO L273 TraceCheckUtils]: 170: Hoare triple {42272#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {42272#false} is VALID [2018-11-23 12:15:04,358 INFO L273 TraceCheckUtils]: 171: Hoare triple {42272#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42272#false} is VALID [2018-11-23 12:15:04,358 INFO L273 TraceCheckUtils]: 172: Hoare triple {42272#false} assume !!(~i~1 < 40); {42272#false} is VALID [2018-11-23 12:15:04,358 INFO L273 TraceCheckUtils]: 173: Hoare triple {42272#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {42272#false} is VALID [2018-11-23 12:15:04,358 INFO L273 TraceCheckUtils]: 174: Hoare triple {42272#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42272#false} is VALID [2018-11-23 12:15:04,358 INFO L273 TraceCheckUtils]: 175: Hoare triple {42272#false} assume !!(~i~1 < 40); {42272#false} is VALID [2018-11-23 12:15:04,358 INFO L273 TraceCheckUtils]: 176: Hoare triple {42272#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {42272#false} is VALID [2018-11-23 12:15:04,358 INFO L273 TraceCheckUtils]: 177: Hoare triple {42272#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42272#false} is VALID [2018-11-23 12:15:04,358 INFO L273 TraceCheckUtils]: 178: Hoare triple {42272#false} assume !!(~i~1 < 40); {42272#false} is VALID [2018-11-23 12:15:04,359 INFO L273 TraceCheckUtils]: 179: Hoare triple {42272#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {42272#false} is VALID [2018-11-23 12:15:04,359 INFO L273 TraceCheckUtils]: 180: Hoare triple {42272#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42272#false} is VALID [2018-11-23 12:15:04,359 INFO L273 TraceCheckUtils]: 181: Hoare triple {42272#false} assume !!(~i~1 < 40); {42272#false} is VALID [2018-11-23 12:15:04,359 INFO L273 TraceCheckUtils]: 182: Hoare triple {42272#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {42272#false} is VALID [2018-11-23 12:15:04,359 INFO L273 TraceCheckUtils]: 183: Hoare triple {42272#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42272#false} is VALID [2018-11-23 12:15:04,359 INFO L273 TraceCheckUtils]: 184: Hoare triple {42272#false} assume !!(~i~1 < 40); {42272#false} is VALID [2018-11-23 12:15:04,359 INFO L273 TraceCheckUtils]: 185: Hoare triple {42272#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {42272#false} is VALID [2018-11-23 12:15:04,359 INFO L273 TraceCheckUtils]: 186: Hoare triple {42272#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42272#false} is VALID [2018-11-23 12:15:04,359 INFO L273 TraceCheckUtils]: 187: Hoare triple {42272#false} assume !!(~i~1 < 40); {42272#false} is VALID [2018-11-23 12:15:04,359 INFO L273 TraceCheckUtils]: 188: Hoare triple {42272#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {42272#false} is VALID [2018-11-23 12:15:04,360 INFO L273 TraceCheckUtils]: 189: Hoare triple {42272#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42272#false} is VALID [2018-11-23 12:15:04,360 INFO L273 TraceCheckUtils]: 190: Hoare triple {42272#false} assume !!(~i~1 < 40); {42272#false} is VALID [2018-11-23 12:15:04,360 INFO L273 TraceCheckUtils]: 191: Hoare triple {42272#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {42272#false} is VALID [2018-11-23 12:15:04,360 INFO L273 TraceCheckUtils]: 192: Hoare triple {42272#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42272#false} is VALID [2018-11-23 12:15:04,360 INFO L273 TraceCheckUtils]: 193: Hoare triple {42272#false} assume !(~i~1 < 40); {42272#false} is VALID [2018-11-23 12:15:04,360 INFO L273 TraceCheckUtils]: 194: Hoare triple {42272#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {42272#false} is VALID [2018-11-23 12:15:04,360 INFO L273 TraceCheckUtils]: 195: Hoare triple {42272#false} assume true; {42272#false} is VALID [2018-11-23 12:15:04,360 INFO L268 TraceCheckUtils]: 196: Hoare quadruple {42272#false} {42272#false} #86#return; {42272#false} is VALID [2018-11-23 12:15:04,360 INFO L273 TraceCheckUtils]: 197: Hoare triple {42272#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {42272#false} is VALID [2018-11-23 12:15:04,360 INFO L273 TraceCheckUtils]: 198: Hoare triple {42272#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {42272#false} is VALID [2018-11-23 12:15:04,361 INFO L273 TraceCheckUtils]: 199: Hoare triple {42272#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {42272#false} is VALID [2018-11-23 12:15:04,361 INFO L273 TraceCheckUtils]: 200: Hoare triple {42272#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {42272#false} is VALID [2018-11-23 12:15:04,361 INFO L273 TraceCheckUtils]: 201: Hoare triple {42272#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {42272#false} is VALID [2018-11-23 12:15:04,361 INFO L273 TraceCheckUtils]: 202: Hoare triple {42272#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {42272#false} is VALID [2018-11-23 12:15:04,361 INFO L273 TraceCheckUtils]: 203: Hoare triple {42272#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {42272#false} is VALID [2018-11-23 12:15:04,361 INFO L273 TraceCheckUtils]: 204: Hoare triple {42272#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {42272#false} is VALID [2018-11-23 12:15:04,361 INFO L273 TraceCheckUtils]: 205: Hoare triple {42272#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {42272#false} is VALID [2018-11-23 12:15:04,361 INFO L273 TraceCheckUtils]: 206: Hoare triple {42272#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {42272#false} is VALID [2018-11-23 12:15:04,361 INFO L273 TraceCheckUtils]: 207: Hoare triple {42272#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {42272#false} is VALID [2018-11-23 12:15:04,361 INFO L273 TraceCheckUtils]: 208: Hoare triple {42272#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {42272#false} is VALID [2018-11-23 12:15:04,362 INFO L273 TraceCheckUtils]: 209: Hoare triple {42272#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {42272#false} is VALID [2018-11-23 12:15:04,362 INFO L273 TraceCheckUtils]: 210: Hoare triple {42272#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {42272#false} is VALID [2018-11-23 12:15:04,362 INFO L273 TraceCheckUtils]: 211: Hoare triple {42272#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {42272#false} is VALID [2018-11-23 12:15:04,362 INFO L273 TraceCheckUtils]: 212: Hoare triple {42272#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {42272#false} is VALID [2018-11-23 12:15:04,362 INFO L273 TraceCheckUtils]: 213: Hoare triple {42272#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {42272#false} is VALID [2018-11-23 12:15:04,362 INFO L273 TraceCheckUtils]: 214: Hoare triple {42272#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {42272#false} is VALID [2018-11-23 12:15:04,362 INFO L273 TraceCheckUtils]: 215: Hoare triple {42272#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {42272#false} is VALID [2018-11-23 12:15:04,362 INFO L273 TraceCheckUtils]: 216: Hoare triple {42272#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {42272#false} is VALID [2018-11-23 12:15:04,362 INFO L273 TraceCheckUtils]: 217: Hoare triple {42272#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {42272#false} is VALID [2018-11-23 12:15:04,362 INFO L273 TraceCheckUtils]: 218: Hoare triple {42272#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {42272#false} is VALID [2018-11-23 12:15:04,363 INFO L273 TraceCheckUtils]: 219: Hoare triple {42272#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {42272#false} is VALID [2018-11-23 12:15:04,363 INFO L273 TraceCheckUtils]: 220: Hoare triple {42272#false} assume !(~i~2 < 39); {42272#false} is VALID [2018-11-23 12:15:04,363 INFO L273 TraceCheckUtils]: 221: Hoare triple {42272#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {42272#false} is VALID [2018-11-23 12:15:04,363 INFO L256 TraceCheckUtils]: 222: Hoare triple {42272#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {42272#false} is VALID [2018-11-23 12:15:04,363 INFO L273 TraceCheckUtils]: 223: Hoare triple {42272#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {42272#false} is VALID [2018-11-23 12:15:04,363 INFO L273 TraceCheckUtils]: 224: Hoare triple {42272#false} assume !!(~i~1 < 40); {42272#false} is VALID [2018-11-23 12:15:04,363 INFO L273 TraceCheckUtils]: 225: Hoare triple {42272#false} assume !(~i~1 > 20); {42272#false} is VALID [2018-11-23 12:15:04,363 INFO L273 TraceCheckUtils]: 226: Hoare triple {42272#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42272#false} is VALID [2018-11-23 12:15:04,363 INFO L273 TraceCheckUtils]: 227: Hoare triple {42272#false} assume !!(~i~1 < 40); {42272#false} is VALID [2018-11-23 12:15:04,363 INFO L273 TraceCheckUtils]: 228: Hoare triple {42272#false} assume !(~i~1 > 20); {42272#false} is VALID [2018-11-23 12:15:04,364 INFO L273 TraceCheckUtils]: 229: Hoare triple {42272#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42272#false} is VALID [2018-11-23 12:15:04,364 INFO L273 TraceCheckUtils]: 230: Hoare triple {42272#false} assume !!(~i~1 < 40); {42272#false} is VALID [2018-11-23 12:15:04,364 INFO L273 TraceCheckUtils]: 231: Hoare triple {42272#false} assume !(~i~1 > 20); {42272#false} is VALID [2018-11-23 12:15:04,364 INFO L273 TraceCheckUtils]: 232: Hoare triple {42272#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42272#false} is VALID [2018-11-23 12:15:04,364 INFO L273 TraceCheckUtils]: 233: Hoare triple {42272#false} assume !!(~i~1 < 40); {42272#false} is VALID [2018-11-23 12:15:04,364 INFO L273 TraceCheckUtils]: 234: Hoare triple {42272#false} assume !(~i~1 > 20); {42272#false} is VALID [2018-11-23 12:15:04,364 INFO L273 TraceCheckUtils]: 235: Hoare triple {42272#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42272#false} is VALID [2018-11-23 12:15:04,364 INFO L273 TraceCheckUtils]: 236: Hoare triple {42272#false} assume !!(~i~1 < 40); {42272#false} is VALID [2018-11-23 12:15:04,364 INFO L273 TraceCheckUtils]: 237: Hoare triple {42272#false} assume !(~i~1 > 20); {42272#false} is VALID [2018-11-23 12:15:04,364 INFO L273 TraceCheckUtils]: 238: Hoare triple {42272#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42272#false} is VALID [2018-11-23 12:15:04,365 INFO L273 TraceCheckUtils]: 239: Hoare triple {42272#false} assume !!(~i~1 < 40); {42272#false} is VALID [2018-11-23 12:15:04,365 INFO L273 TraceCheckUtils]: 240: Hoare triple {42272#false} assume !(~i~1 > 20); {42272#false} is VALID [2018-11-23 12:15:04,365 INFO L273 TraceCheckUtils]: 241: Hoare triple {42272#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42272#false} is VALID [2018-11-23 12:15:04,365 INFO L273 TraceCheckUtils]: 242: Hoare triple {42272#false} assume !!(~i~1 < 40); {42272#false} is VALID [2018-11-23 12:15:04,365 INFO L273 TraceCheckUtils]: 243: Hoare triple {42272#false} assume !(~i~1 > 20); {42272#false} is VALID [2018-11-23 12:15:04,365 INFO L273 TraceCheckUtils]: 244: Hoare triple {42272#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42272#false} is VALID [2018-11-23 12:15:04,365 INFO L273 TraceCheckUtils]: 245: Hoare triple {42272#false} assume !!(~i~1 < 40); {42272#false} is VALID [2018-11-23 12:15:04,365 INFO L273 TraceCheckUtils]: 246: Hoare triple {42272#false} assume !(~i~1 > 20); {42272#false} is VALID [2018-11-23 12:15:04,365 INFO L273 TraceCheckUtils]: 247: Hoare triple {42272#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42272#false} is VALID [2018-11-23 12:15:04,365 INFO L273 TraceCheckUtils]: 248: Hoare triple {42272#false} assume !!(~i~1 < 40); {42272#false} is VALID [2018-11-23 12:15:04,366 INFO L273 TraceCheckUtils]: 249: Hoare triple {42272#false} assume !(~i~1 > 20); {42272#false} is VALID [2018-11-23 12:15:04,366 INFO L273 TraceCheckUtils]: 250: Hoare triple {42272#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42272#false} is VALID [2018-11-23 12:15:04,366 INFO L273 TraceCheckUtils]: 251: Hoare triple {42272#false} assume !!(~i~1 < 40); {42272#false} is VALID [2018-11-23 12:15:04,366 INFO L273 TraceCheckUtils]: 252: Hoare triple {42272#false} assume !(~i~1 > 20); {42272#false} is VALID [2018-11-23 12:15:04,366 INFO L273 TraceCheckUtils]: 253: Hoare triple {42272#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42272#false} is VALID [2018-11-23 12:15:04,366 INFO L273 TraceCheckUtils]: 254: Hoare triple {42272#false} assume !!(~i~1 < 40); {42272#false} is VALID [2018-11-23 12:15:04,366 INFO L273 TraceCheckUtils]: 255: Hoare triple {42272#false} assume !(~i~1 > 20); {42272#false} is VALID [2018-11-23 12:15:04,366 INFO L273 TraceCheckUtils]: 256: Hoare triple {42272#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42272#false} is VALID [2018-11-23 12:15:04,366 INFO L273 TraceCheckUtils]: 257: Hoare triple {42272#false} assume !!(~i~1 < 40); {42272#false} is VALID [2018-11-23 12:15:04,367 INFO L273 TraceCheckUtils]: 258: Hoare triple {42272#false} assume !(~i~1 > 20); {42272#false} is VALID [2018-11-23 12:15:04,367 INFO L273 TraceCheckUtils]: 259: Hoare triple {42272#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42272#false} is VALID [2018-11-23 12:15:04,367 INFO L273 TraceCheckUtils]: 260: Hoare triple {42272#false} assume !!(~i~1 < 40); {42272#false} is VALID [2018-11-23 12:15:04,367 INFO L273 TraceCheckUtils]: 261: Hoare triple {42272#false} assume !(~i~1 > 20); {42272#false} is VALID [2018-11-23 12:15:04,367 INFO L273 TraceCheckUtils]: 262: Hoare triple {42272#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42272#false} is VALID [2018-11-23 12:15:04,367 INFO L273 TraceCheckUtils]: 263: Hoare triple {42272#false} assume !!(~i~1 < 40); {42272#false} is VALID [2018-11-23 12:15:04,367 INFO L273 TraceCheckUtils]: 264: Hoare triple {42272#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {42272#false} is VALID [2018-11-23 12:15:04,367 INFO L273 TraceCheckUtils]: 265: Hoare triple {42272#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42272#false} is VALID [2018-11-23 12:15:04,367 INFO L273 TraceCheckUtils]: 266: Hoare triple {42272#false} assume !!(~i~1 < 40); {42272#false} is VALID [2018-11-23 12:15:04,367 INFO L273 TraceCheckUtils]: 267: Hoare triple {42272#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {42272#false} is VALID [2018-11-23 12:15:04,368 INFO L273 TraceCheckUtils]: 268: Hoare triple {42272#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42272#false} is VALID [2018-11-23 12:15:04,368 INFO L273 TraceCheckUtils]: 269: Hoare triple {42272#false} assume !!(~i~1 < 40); {42272#false} is VALID [2018-11-23 12:15:04,368 INFO L273 TraceCheckUtils]: 270: Hoare triple {42272#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {42272#false} is VALID [2018-11-23 12:15:04,368 INFO L273 TraceCheckUtils]: 271: Hoare triple {42272#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42272#false} is VALID [2018-11-23 12:15:04,368 INFO L273 TraceCheckUtils]: 272: Hoare triple {42272#false} assume !!(~i~1 < 40); {42272#false} is VALID [2018-11-23 12:15:04,368 INFO L273 TraceCheckUtils]: 273: Hoare triple {42272#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {42272#false} is VALID [2018-11-23 12:15:04,368 INFO L273 TraceCheckUtils]: 274: Hoare triple {42272#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42272#false} is VALID [2018-11-23 12:15:04,368 INFO L273 TraceCheckUtils]: 275: Hoare triple {42272#false} assume !!(~i~1 < 40); {42272#false} is VALID [2018-11-23 12:15:04,368 INFO L273 TraceCheckUtils]: 276: Hoare triple {42272#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {42272#false} is VALID [2018-11-23 12:15:04,368 INFO L273 TraceCheckUtils]: 277: Hoare triple {42272#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42272#false} is VALID [2018-11-23 12:15:04,369 INFO L273 TraceCheckUtils]: 278: Hoare triple {42272#false} assume !!(~i~1 < 40); {42272#false} is VALID [2018-11-23 12:15:04,369 INFO L273 TraceCheckUtils]: 279: Hoare triple {42272#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {42272#false} is VALID [2018-11-23 12:15:04,369 INFO L273 TraceCheckUtils]: 280: Hoare triple {42272#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42272#false} is VALID [2018-11-23 12:15:04,369 INFO L273 TraceCheckUtils]: 281: Hoare triple {42272#false} assume !!(~i~1 < 40); {42272#false} is VALID [2018-11-23 12:15:04,369 INFO L273 TraceCheckUtils]: 282: Hoare triple {42272#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {42272#false} is VALID [2018-11-23 12:15:04,369 INFO L273 TraceCheckUtils]: 283: Hoare triple {42272#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42272#false} is VALID [2018-11-23 12:15:04,369 INFO L273 TraceCheckUtils]: 284: Hoare triple {42272#false} assume !!(~i~1 < 40); {42272#false} is VALID [2018-11-23 12:15:04,369 INFO L273 TraceCheckUtils]: 285: Hoare triple {42272#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {42272#false} is VALID [2018-11-23 12:15:04,369 INFO L273 TraceCheckUtils]: 286: Hoare triple {42272#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42272#false} is VALID [2018-11-23 12:15:04,369 INFO L273 TraceCheckUtils]: 287: Hoare triple {42272#false} assume !!(~i~1 < 40); {42272#false} is VALID [2018-11-23 12:15:04,370 INFO L273 TraceCheckUtils]: 288: Hoare triple {42272#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {42272#false} is VALID [2018-11-23 12:15:04,370 INFO L273 TraceCheckUtils]: 289: Hoare triple {42272#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42272#false} is VALID [2018-11-23 12:15:04,370 INFO L273 TraceCheckUtils]: 290: Hoare triple {42272#false} assume !!(~i~1 < 40); {42272#false} is VALID [2018-11-23 12:15:04,370 INFO L273 TraceCheckUtils]: 291: Hoare triple {42272#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {42272#false} is VALID [2018-11-23 12:15:04,370 INFO L273 TraceCheckUtils]: 292: Hoare triple {42272#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {42272#false} is VALID [2018-11-23 12:15:04,370 INFO L273 TraceCheckUtils]: 293: Hoare triple {42272#false} assume !(~i~1 < 40); {42272#false} is VALID [2018-11-23 12:15:04,370 INFO L273 TraceCheckUtils]: 294: Hoare triple {42272#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {42272#false} is VALID [2018-11-23 12:15:04,370 INFO L273 TraceCheckUtils]: 295: Hoare triple {42272#false} assume true; {42272#false} is VALID [2018-11-23 12:15:04,370 INFO L268 TraceCheckUtils]: 296: Hoare quadruple {42272#false} {42272#false} #88#return; {42272#false} is VALID [2018-11-23 12:15:04,370 INFO L273 TraceCheckUtils]: 297: Hoare triple {42272#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {42272#false} is VALID [2018-11-23 12:15:04,371 INFO L273 TraceCheckUtils]: 298: Hoare triple {42272#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {42272#false} is VALID [2018-11-23 12:15:04,371 INFO L273 TraceCheckUtils]: 299: Hoare triple {42272#false} assume !false; {42272#false} is VALID [2018-11-23 12:15:04,402 INFO L134 CoverageAnalysis]: Checked inductivity of 7670 backedges. 3675 proven. 155 refuted. 0 times theorem prover too weak. 3840 trivial. 0 not checked. [2018-11-23 12:15:04,420 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:15:04,421 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [14] total 14 [2018-11-23 12:15:04,421 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 300 [2018-11-23 12:15:04,421 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:15:04,421 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states. [2018-11-23 12:15:04,497 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 74 edges. 74 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:15:04,497 INFO L459 AbstractCegarLoop]: Interpolant automaton has 14 states [2018-11-23 12:15:04,497 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2018-11-23 12:15:04,498 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=91, Invalid=91, Unknown=0, NotChecked=0, Total=182 [2018-11-23 12:15:04,498 INFO L87 Difference]: Start difference. First operand 153 states and 168 transitions. Second operand 14 states. [2018-11-23 12:15:04,801 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:04,801 INFO L93 Difference]: Finished difference Result 264 states and 298 transitions. [2018-11-23 12:15:04,801 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2018-11-23 12:15:04,801 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 300 [2018-11-23 12:15:04,801 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:15:04,801 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2018-11-23 12:15:04,802 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 111 transitions. [2018-11-23 12:15:04,802 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2018-11-23 12:15:04,803 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 111 transitions. [2018-11-23 12:15:04,803 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states and 111 transitions. [2018-11-23 12:15:04,902 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 111 edges. 111 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:15:04,905 INFO L225 Difference]: With dead ends: 264 [2018-11-23 12:15:04,905 INFO L226 Difference]: Without dead ends: 158 [2018-11-23 12:15:04,906 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 299 GetRequests, 287 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=91, Invalid=91, Unknown=0, NotChecked=0, Total=182 [2018-11-23 12:15:04,906 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 158 states. [2018-11-23 12:15:04,980 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 158 to 156. [2018-11-23 12:15:04,980 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:15:04,981 INFO L82 GeneralOperation]: Start isEquivalent. First operand 158 states. Second operand 156 states. [2018-11-23 12:15:04,981 INFO L74 IsIncluded]: Start isIncluded. First operand 158 states. Second operand 156 states. [2018-11-23 12:15:04,981 INFO L87 Difference]: Start difference. First operand 158 states. Second operand 156 states. [2018-11-23 12:15:04,985 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:04,985 INFO L93 Difference]: Finished difference Result 158 states and 175 transitions. [2018-11-23 12:15:04,985 INFO L276 IsEmpty]: Start isEmpty. Operand 158 states and 175 transitions. [2018-11-23 12:15:04,985 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:15:04,986 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:15:04,986 INFO L74 IsIncluded]: Start isIncluded. First operand 156 states. Second operand 158 states. [2018-11-23 12:15:04,986 INFO L87 Difference]: Start difference. First operand 156 states. Second operand 158 states. [2018-11-23 12:15:04,988 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:04,988 INFO L93 Difference]: Finished difference Result 158 states and 175 transitions. [2018-11-23 12:15:04,988 INFO L276 IsEmpty]: Start isEmpty. Operand 158 states and 175 transitions. [2018-11-23 12:15:04,988 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:15:04,989 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:15:04,989 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:15:04,989 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:15:04,989 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 156 states. [2018-11-23 12:15:04,991 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 156 states to 156 states and 172 transitions. [2018-11-23 12:15:04,991 INFO L78 Accepts]: Start accepts. Automaton has 156 states and 172 transitions. Word has length 300 [2018-11-23 12:15:04,991 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:15:04,991 INFO L480 AbstractCegarLoop]: Abstraction has 156 states and 172 transitions. [2018-11-23 12:15:04,991 INFO L481 AbstractCegarLoop]: Interpolant automaton has 14 states. [2018-11-23 12:15:04,991 INFO L276 IsEmpty]: Start isEmpty. Operand 156 states and 172 transitions. [2018-11-23 12:15:04,993 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 310 [2018-11-23 12:15:04,993 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:15:04,994 INFO L402 BasicCegarLoop]: trace histogram [72, 72, 39, 33, 17, 17, 11, 11, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:15:04,994 INFO L423 AbstractCegarLoop]: === Iteration 47 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:15:04,994 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:15:04,994 INFO L82 PathProgramCache]: Analyzing trace with hash 2058769726, now seen corresponding path program 42 times [2018-11-23 12:15:04,994 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:15:04,994 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:15:04,995 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:15:04,995 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:15:04,995 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:15:05,010 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:15:05,010 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:15:05,010 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 48 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 48 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:15:05,026 INFO L103 rtionOrderModulation]: Keeping assertion order MIX_INSIDE_OUTSIDE [2018-11-23 12:15:05,757 INFO L249 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 24 check-sat command(s) [2018-11-23 12:15:05,757 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:15:05,849 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:15:05,851 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:15:06,413 INFO L256 TraceCheckUtils]: 0: Hoare triple {44089#true} call ULTIMATE.init(); {44089#true} is VALID [2018-11-23 12:15:06,413 INFO L273 TraceCheckUtils]: 1: Hoare triple {44089#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {44089#true} is VALID [2018-11-23 12:15:06,413 INFO L273 TraceCheckUtils]: 2: Hoare triple {44089#true} assume true; {44089#true} is VALID [2018-11-23 12:15:06,413 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {44089#true} {44089#true} #78#return; {44089#true} is VALID [2018-11-23 12:15:06,414 INFO L256 TraceCheckUtils]: 4: Hoare triple {44089#true} call #t~ret12 := main(); {44089#true} is VALID [2018-11-23 12:15:06,414 INFO L273 TraceCheckUtils]: 5: Hoare triple {44089#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {44089#true} is VALID [2018-11-23 12:15:06,414 INFO L256 TraceCheckUtils]: 6: Hoare triple {44089#true} call init_nondet(~#x~0.base, ~#x~0.offset); {44089#true} is VALID [2018-11-23 12:15:06,414 INFO L273 TraceCheckUtils]: 7: Hoare triple {44089#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {44089#true} is VALID [2018-11-23 12:15:06,414 INFO L273 TraceCheckUtils]: 8: Hoare triple {44089#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {44089#true} is VALID [2018-11-23 12:15:06,414 INFO L273 TraceCheckUtils]: 9: Hoare triple {44089#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {44089#true} is VALID [2018-11-23 12:15:06,415 INFO L273 TraceCheckUtils]: 10: Hoare triple {44089#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {44089#true} is VALID [2018-11-23 12:15:06,415 INFO L273 TraceCheckUtils]: 11: Hoare triple {44089#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {44089#true} is VALID [2018-11-23 12:15:06,415 INFO L273 TraceCheckUtils]: 12: Hoare triple {44089#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {44089#true} is VALID [2018-11-23 12:15:06,415 INFO L273 TraceCheckUtils]: 13: Hoare triple {44089#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {44089#true} is VALID [2018-11-23 12:15:06,415 INFO L273 TraceCheckUtils]: 14: Hoare triple {44089#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {44089#true} is VALID [2018-11-23 12:15:06,415 INFO L273 TraceCheckUtils]: 15: Hoare triple {44089#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {44089#true} is VALID [2018-11-23 12:15:06,415 INFO L273 TraceCheckUtils]: 16: Hoare triple {44089#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {44089#true} is VALID [2018-11-23 12:15:06,416 INFO L273 TraceCheckUtils]: 17: Hoare triple {44089#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {44089#true} is VALID [2018-11-23 12:15:06,416 INFO L273 TraceCheckUtils]: 18: Hoare triple {44089#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {44089#true} is VALID [2018-11-23 12:15:06,416 INFO L273 TraceCheckUtils]: 19: Hoare triple {44089#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {44089#true} is VALID [2018-11-23 12:15:06,416 INFO L273 TraceCheckUtils]: 20: Hoare triple {44089#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {44089#true} is VALID [2018-11-23 12:15:06,416 INFO L273 TraceCheckUtils]: 21: Hoare triple {44089#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {44089#true} is VALID [2018-11-23 12:15:06,416 INFO L273 TraceCheckUtils]: 22: Hoare triple {44089#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {44089#true} is VALID [2018-11-23 12:15:06,416 INFO L273 TraceCheckUtils]: 23: Hoare triple {44089#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {44089#true} is VALID [2018-11-23 12:15:06,416 INFO L273 TraceCheckUtils]: 24: Hoare triple {44089#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {44089#true} is VALID [2018-11-23 12:15:06,416 INFO L273 TraceCheckUtils]: 25: Hoare triple {44089#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {44089#true} is VALID [2018-11-23 12:15:06,417 INFO L273 TraceCheckUtils]: 26: Hoare triple {44089#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {44089#true} is VALID [2018-11-23 12:15:06,417 INFO L273 TraceCheckUtils]: 27: Hoare triple {44089#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {44089#true} is VALID [2018-11-23 12:15:06,417 INFO L273 TraceCheckUtils]: 28: Hoare triple {44089#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {44089#true} is VALID [2018-11-23 12:15:06,417 INFO L273 TraceCheckUtils]: 29: Hoare triple {44089#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {44089#true} is VALID [2018-11-23 12:15:06,417 INFO L273 TraceCheckUtils]: 30: Hoare triple {44089#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {44089#true} is VALID [2018-11-23 12:15:06,417 INFO L273 TraceCheckUtils]: 31: Hoare triple {44089#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {44089#true} is VALID [2018-11-23 12:15:06,417 INFO L273 TraceCheckUtils]: 32: Hoare triple {44089#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {44089#true} is VALID [2018-11-23 12:15:06,417 INFO L273 TraceCheckUtils]: 33: Hoare triple {44089#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {44089#true} is VALID [2018-11-23 12:15:06,417 INFO L273 TraceCheckUtils]: 34: Hoare triple {44089#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {44089#true} is VALID [2018-11-23 12:15:06,417 INFO L273 TraceCheckUtils]: 35: Hoare triple {44089#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {44089#true} is VALID [2018-11-23 12:15:06,418 INFO L273 TraceCheckUtils]: 36: Hoare triple {44089#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {44089#true} is VALID [2018-11-23 12:15:06,418 INFO L273 TraceCheckUtils]: 37: Hoare triple {44089#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {44089#true} is VALID [2018-11-23 12:15:06,418 INFO L273 TraceCheckUtils]: 38: Hoare triple {44089#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {44089#true} is VALID [2018-11-23 12:15:06,418 INFO L273 TraceCheckUtils]: 39: Hoare triple {44089#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {44089#true} is VALID [2018-11-23 12:15:06,418 INFO L273 TraceCheckUtils]: 40: Hoare triple {44089#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {44089#true} is VALID [2018-11-23 12:15:06,418 INFO L273 TraceCheckUtils]: 41: Hoare triple {44089#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {44089#true} is VALID [2018-11-23 12:15:06,418 INFO L273 TraceCheckUtils]: 42: Hoare triple {44089#true} assume !(~i~0 < 40); {44089#true} is VALID [2018-11-23 12:15:06,418 INFO L273 TraceCheckUtils]: 43: Hoare triple {44089#true} assume true; {44089#true} is VALID [2018-11-23 12:15:06,418 INFO L268 TraceCheckUtils]: 44: Hoare quadruple {44089#true} {44089#true} #82#return; {44089#true} is VALID [2018-11-23 12:15:06,418 INFO L273 TraceCheckUtils]: 45: Hoare triple {44089#true} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {44089#true} is VALID [2018-11-23 12:15:06,419 INFO L256 TraceCheckUtils]: 46: Hoare triple {44089#true} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {44089#true} is VALID [2018-11-23 12:15:06,419 INFO L273 TraceCheckUtils]: 47: Hoare triple {44089#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {44089#true} is VALID [2018-11-23 12:15:06,419 INFO L273 TraceCheckUtils]: 48: Hoare triple {44089#true} assume !!(~i~1 < 40); {44089#true} is VALID [2018-11-23 12:15:06,419 INFO L273 TraceCheckUtils]: 49: Hoare triple {44089#true} assume !(~i~1 > 20); {44089#true} is VALID [2018-11-23 12:15:06,419 INFO L273 TraceCheckUtils]: 50: Hoare triple {44089#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44089#true} is VALID [2018-11-23 12:15:06,419 INFO L273 TraceCheckUtils]: 51: Hoare triple {44089#true} assume !!(~i~1 < 40); {44089#true} is VALID [2018-11-23 12:15:06,419 INFO L273 TraceCheckUtils]: 52: Hoare triple {44089#true} assume !(~i~1 > 20); {44089#true} is VALID [2018-11-23 12:15:06,419 INFO L273 TraceCheckUtils]: 53: Hoare triple {44089#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44089#true} is VALID [2018-11-23 12:15:06,419 INFO L273 TraceCheckUtils]: 54: Hoare triple {44089#true} assume !!(~i~1 < 40); {44089#true} is VALID [2018-11-23 12:15:06,419 INFO L273 TraceCheckUtils]: 55: Hoare triple {44089#true} assume !(~i~1 > 20); {44089#true} is VALID [2018-11-23 12:15:06,420 INFO L273 TraceCheckUtils]: 56: Hoare triple {44089#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44089#true} is VALID [2018-11-23 12:15:06,420 INFO L273 TraceCheckUtils]: 57: Hoare triple {44089#true} assume !!(~i~1 < 40); {44089#true} is VALID [2018-11-23 12:15:06,420 INFO L273 TraceCheckUtils]: 58: Hoare triple {44089#true} assume !(~i~1 > 20); {44089#true} is VALID [2018-11-23 12:15:06,420 INFO L273 TraceCheckUtils]: 59: Hoare triple {44089#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44089#true} is VALID [2018-11-23 12:15:06,420 INFO L273 TraceCheckUtils]: 60: Hoare triple {44089#true} assume !!(~i~1 < 40); {44089#true} is VALID [2018-11-23 12:15:06,420 INFO L273 TraceCheckUtils]: 61: Hoare triple {44089#true} assume !(~i~1 > 20); {44089#true} is VALID [2018-11-23 12:15:06,420 INFO L273 TraceCheckUtils]: 62: Hoare triple {44089#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44089#true} is VALID [2018-11-23 12:15:06,420 INFO L273 TraceCheckUtils]: 63: Hoare triple {44089#true} assume !!(~i~1 < 40); {44089#true} is VALID [2018-11-23 12:15:06,420 INFO L273 TraceCheckUtils]: 64: Hoare triple {44089#true} assume !(~i~1 > 20); {44089#true} is VALID [2018-11-23 12:15:06,420 INFO L273 TraceCheckUtils]: 65: Hoare triple {44089#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44089#true} is VALID [2018-11-23 12:15:06,421 INFO L273 TraceCheckUtils]: 66: Hoare triple {44089#true} assume !!(~i~1 < 40); {44089#true} is VALID [2018-11-23 12:15:06,421 INFO L273 TraceCheckUtils]: 67: Hoare triple {44089#true} assume !(~i~1 > 20); {44089#true} is VALID [2018-11-23 12:15:06,421 INFO L273 TraceCheckUtils]: 68: Hoare triple {44089#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44089#true} is VALID [2018-11-23 12:15:06,421 INFO L273 TraceCheckUtils]: 69: Hoare triple {44089#true} assume !!(~i~1 < 40); {44089#true} is VALID [2018-11-23 12:15:06,421 INFO L273 TraceCheckUtils]: 70: Hoare triple {44089#true} assume !(~i~1 > 20); {44089#true} is VALID [2018-11-23 12:15:06,421 INFO L273 TraceCheckUtils]: 71: Hoare triple {44089#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44089#true} is VALID [2018-11-23 12:15:06,421 INFO L273 TraceCheckUtils]: 72: Hoare triple {44089#true} assume !!(~i~1 < 40); {44089#true} is VALID [2018-11-23 12:15:06,421 INFO L273 TraceCheckUtils]: 73: Hoare triple {44089#true} assume !(~i~1 > 20); {44089#true} is VALID [2018-11-23 12:15:06,421 INFO L273 TraceCheckUtils]: 74: Hoare triple {44089#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44089#true} is VALID [2018-11-23 12:15:06,421 INFO L273 TraceCheckUtils]: 75: Hoare triple {44089#true} assume !!(~i~1 < 40); {44089#true} is VALID [2018-11-23 12:15:06,422 INFO L273 TraceCheckUtils]: 76: Hoare triple {44089#true} assume !(~i~1 > 20); {44089#true} is VALID [2018-11-23 12:15:06,422 INFO L273 TraceCheckUtils]: 77: Hoare triple {44089#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44089#true} is VALID [2018-11-23 12:15:06,422 INFO L273 TraceCheckUtils]: 78: Hoare triple {44089#true} assume !!(~i~1 < 40); {44089#true} is VALID [2018-11-23 12:15:06,422 INFO L273 TraceCheckUtils]: 79: Hoare triple {44089#true} assume !(~i~1 > 20); {44089#true} is VALID [2018-11-23 12:15:06,422 INFO L273 TraceCheckUtils]: 80: Hoare triple {44089#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44089#true} is VALID [2018-11-23 12:15:06,422 INFO L273 TraceCheckUtils]: 81: Hoare triple {44089#true} assume !!(~i~1 < 40); {44089#true} is VALID [2018-11-23 12:15:06,422 INFO L273 TraceCheckUtils]: 82: Hoare triple {44089#true} assume !(~i~1 > 20); {44089#true} is VALID [2018-11-23 12:15:06,422 INFO L273 TraceCheckUtils]: 83: Hoare triple {44089#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44089#true} is VALID [2018-11-23 12:15:06,422 INFO L273 TraceCheckUtils]: 84: Hoare triple {44089#true} assume !!(~i~1 < 40); {44089#true} is VALID [2018-11-23 12:15:06,423 INFO L273 TraceCheckUtils]: 85: Hoare triple {44089#true} assume !(~i~1 > 20); {44349#(<= rangesum_~i~1 20)} is VALID [2018-11-23 12:15:06,423 INFO L273 TraceCheckUtils]: 86: Hoare triple {44349#(<= rangesum_~i~1 20)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44353#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:15:06,424 INFO L273 TraceCheckUtils]: 87: Hoare triple {44353#(<= rangesum_~i~1 21)} assume !!(~i~1 < 40); {44353#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:15:06,424 INFO L273 TraceCheckUtils]: 88: Hoare triple {44353#(<= rangesum_~i~1 21)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {44353#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:15:06,424 INFO L273 TraceCheckUtils]: 89: Hoare triple {44353#(<= rangesum_~i~1 21)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44363#(<= rangesum_~i~1 22)} is VALID [2018-11-23 12:15:06,425 INFO L273 TraceCheckUtils]: 90: Hoare triple {44363#(<= rangesum_~i~1 22)} assume !!(~i~1 < 40); {44363#(<= rangesum_~i~1 22)} is VALID [2018-11-23 12:15:06,425 INFO L273 TraceCheckUtils]: 91: Hoare triple {44363#(<= rangesum_~i~1 22)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {44363#(<= rangesum_~i~1 22)} is VALID [2018-11-23 12:15:06,425 INFO L273 TraceCheckUtils]: 92: Hoare triple {44363#(<= rangesum_~i~1 22)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44373#(<= rangesum_~i~1 23)} is VALID [2018-11-23 12:15:06,426 INFO L273 TraceCheckUtils]: 93: Hoare triple {44373#(<= rangesum_~i~1 23)} assume !!(~i~1 < 40); {44373#(<= rangesum_~i~1 23)} is VALID [2018-11-23 12:15:06,426 INFO L273 TraceCheckUtils]: 94: Hoare triple {44373#(<= rangesum_~i~1 23)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {44373#(<= rangesum_~i~1 23)} is VALID [2018-11-23 12:15:06,426 INFO L273 TraceCheckUtils]: 95: Hoare triple {44373#(<= rangesum_~i~1 23)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44383#(<= rangesum_~i~1 24)} is VALID [2018-11-23 12:15:06,427 INFO L273 TraceCheckUtils]: 96: Hoare triple {44383#(<= rangesum_~i~1 24)} assume !!(~i~1 < 40); {44383#(<= rangesum_~i~1 24)} is VALID [2018-11-23 12:15:06,427 INFO L273 TraceCheckUtils]: 97: Hoare triple {44383#(<= rangesum_~i~1 24)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {44383#(<= rangesum_~i~1 24)} is VALID [2018-11-23 12:15:06,428 INFO L273 TraceCheckUtils]: 98: Hoare triple {44383#(<= rangesum_~i~1 24)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44393#(<= rangesum_~i~1 25)} is VALID [2018-11-23 12:15:06,428 INFO L273 TraceCheckUtils]: 99: Hoare triple {44393#(<= rangesum_~i~1 25)} assume !!(~i~1 < 40); {44393#(<= rangesum_~i~1 25)} is VALID [2018-11-23 12:15:06,429 INFO L273 TraceCheckUtils]: 100: Hoare triple {44393#(<= rangesum_~i~1 25)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {44393#(<= rangesum_~i~1 25)} is VALID [2018-11-23 12:15:06,429 INFO L273 TraceCheckUtils]: 101: Hoare triple {44393#(<= rangesum_~i~1 25)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44403#(<= rangesum_~i~1 26)} is VALID [2018-11-23 12:15:06,430 INFO L273 TraceCheckUtils]: 102: Hoare triple {44403#(<= rangesum_~i~1 26)} assume !!(~i~1 < 40); {44403#(<= rangesum_~i~1 26)} is VALID [2018-11-23 12:15:06,430 INFO L273 TraceCheckUtils]: 103: Hoare triple {44403#(<= rangesum_~i~1 26)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {44403#(<= rangesum_~i~1 26)} is VALID [2018-11-23 12:15:06,431 INFO L273 TraceCheckUtils]: 104: Hoare triple {44403#(<= rangesum_~i~1 26)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44413#(<= rangesum_~i~1 27)} is VALID [2018-11-23 12:15:06,432 INFO L273 TraceCheckUtils]: 105: Hoare triple {44413#(<= rangesum_~i~1 27)} assume !!(~i~1 < 40); {44413#(<= rangesum_~i~1 27)} is VALID [2018-11-23 12:15:06,432 INFO L273 TraceCheckUtils]: 106: Hoare triple {44413#(<= rangesum_~i~1 27)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {44413#(<= rangesum_~i~1 27)} is VALID [2018-11-23 12:15:06,433 INFO L273 TraceCheckUtils]: 107: Hoare triple {44413#(<= rangesum_~i~1 27)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44423#(<= rangesum_~i~1 28)} is VALID [2018-11-23 12:15:06,433 INFO L273 TraceCheckUtils]: 108: Hoare triple {44423#(<= rangesum_~i~1 28)} assume !!(~i~1 < 40); {44423#(<= rangesum_~i~1 28)} is VALID [2018-11-23 12:15:06,434 INFO L273 TraceCheckUtils]: 109: Hoare triple {44423#(<= rangesum_~i~1 28)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {44423#(<= rangesum_~i~1 28)} is VALID [2018-11-23 12:15:06,434 INFO L273 TraceCheckUtils]: 110: Hoare triple {44423#(<= rangesum_~i~1 28)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44433#(<= rangesum_~i~1 29)} is VALID [2018-11-23 12:15:06,435 INFO L273 TraceCheckUtils]: 111: Hoare triple {44433#(<= rangesum_~i~1 29)} assume !!(~i~1 < 40); {44433#(<= rangesum_~i~1 29)} is VALID [2018-11-23 12:15:06,435 INFO L273 TraceCheckUtils]: 112: Hoare triple {44433#(<= rangesum_~i~1 29)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {44433#(<= rangesum_~i~1 29)} is VALID [2018-11-23 12:15:06,436 INFO L273 TraceCheckUtils]: 113: Hoare triple {44433#(<= rangesum_~i~1 29)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44443#(<= rangesum_~i~1 30)} is VALID [2018-11-23 12:15:06,437 INFO L273 TraceCheckUtils]: 114: Hoare triple {44443#(<= rangesum_~i~1 30)} assume !!(~i~1 < 40); {44443#(<= rangesum_~i~1 30)} is VALID [2018-11-23 12:15:06,437 INFO L273 TraceCheckUtils]: 115: Hoare triple {44443#(<= rangesum_~i~1 30)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {44443#(<= rangesum_~i~1 30)} is VALID [2018-11-23 12:15:06,438 INFO L273 TraceCheckUtils]: 116: Hoare triple {44443#(<= rangesum_~i~1 30)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44453#(<= rangesum_~i~1 31)} is VALID [2018-11-23 12:15:06,438 INFO L273 TraceCheckUtils]: 117: Hoare triple {44453#(<= rangesum_~i~1 31)} assume !!(~i~1 < 40); {44453#(<= rangesum_~i~1 31)} is VALID [2018-11-23 12:15:06,439 INFO L273 TraceCheckUtils]: 118: Hoare triple {44453#(<= rangesum_~i~1 31)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {44453#(<= rangesum_~i~1 31)} is VALID [2018-11-23 12:15:06,439 INFO L273 TraceCheckUtils]: 119: Hoare triple {44453#(<= rangesum_~i~1 31)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44463#(<= rangesum_~i~1 32)} is VALID [2018-11-23 12:15:06,440 INFO L273 TraceCheckUtils]: 120: Hoare triple {44463#(<= rangesum_~i~1 32)} assume !(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,440 INFO L273 TraceCheckUtils]: 121: Hoare triple {44090#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {44090#false} is VALID [2018-11-23 12:15:06,440 INFO L273 TraceCheckUtils]: 122: Hoare triple {44090#false} assume true; {44090#false} is VALID [2018-11-23 12:15:06,441 INFO L268 TraceCheckUtils]: 123: Hoare quadruple {44090#false} {44089#true} #84#return; {44090#false} is VALID [2018-11-23 12:15:06,441 INFO L273 TraceCheckUtils]: 124: Hoare triple {44090#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {44090#false} is VALID [2018-11-23 12:15:06,441 INFO L256 TraceCheckUtils]: 125: Hoare triple {44090#false} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {44090#false} is VALID [2018-11-23 12:15:06,441 INFO L273 TraceCheckUtils]: 126: Hoare triple {44090#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {44090#false} is VALID [2018-11-23 12:15:06,441 INFO L273 TraceCheckUtils]: 127: Hoare triple {44090#false} assume !!(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,441 INFO L273 TraceCheckUtils]: 128: Hoare triple {44090#false} assume !(~i~1 > 20); {44090#false} is VALID [2018-11-23 12:15:06,442 INFO L273 TraceCheckUtils]: 129: Hoare triple {44090#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44090#false} is VALID [2018-11-23 12:15:06,442 INFO L273 TraceCheckUtils]: 130: Hoare triple {44090#false} assume !!(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,442 INFO L273 TraceCheckUtils]: 131: Hoare triple {44090#false} assume !(~i~1 > 20); {44090#false} is VALID [2018-11-23 12:15:06,442 INFO L273 TraceCheckUtils]: 132: Hoare triple {44090#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44090#false} is VALID [2018-11-23 12:15:06,442 INFO L273 TraceCheckUtils]: 133: Hoare triple {44090#false} assume !!(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,442 INFO L273 TraceCheckUtils]: 134: Hoare triple {44090#false} assume !(~i~1 > 20); {44090#false} is VALID [2018-11-23 12:15:06,443 INFO L273 TraceCheckUtils]: 135: Hoare triple {44090#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44090#false} is VALID [2018-11-23 12:15:06,443 INFO L273 TraceCheckUtils]: 136: Hoare triple {44090#false} assume !!(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,443 INFO L273 TraceCheckUtils]: 137: Hoare triple {44090#false} assume !(~i~1 > 20); {44090#false} is VALID [2018-11-23 12:15:06,443 INFO L273 TraceCheckUtils]: 138: Hoare triple {44090#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44090#false} is VALID [2018-11-23 12:15:06,443 INFO L273 TraceCheckUtils]: 139: Hoare triple {44090#false} assume !!(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,443 INFO L273 TraceCheckUtils]: 140: Hoare triple {44090#false} assume !(~i~1 > 20); {44090#false} is VALID [2018-11-23 12:15:06,443 INFO L273 TraceCheckUtils]: 141: Hoare triple {44090#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44090#false} is VALID [2018-11-23 12:15:06,443 INFO L273 TraceCheckUtils]: 142: Hoare triple {44090#false} assume !!(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,443 INFO L273 TraceCheckUtils]: 143: Hoare triple {44090#false} assume !(~i~1 > 20); {44090#false} is VALID [2018-11-23 12:15:06,444 INFO L273 TraceCheckUtils]: 144: Hoare triple {44090#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44090#false} is VALID [2018-11-23 12:15:06,444 INFO L273 TraceCheckUtils]: 145: Hoare triple {44090#false} assume !!(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,444 INFO L273 TraceCheckUtils]: 146: Hoare triple {44090#false} assume !(~i~1 > 20); {44090#false} is VALID [2018-11-23 12:15:06,444 INFO L273 TraceCheckUtils]: 147: Hoare triple {44090#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44090#false} is VALID [2018-11-23 12:15:06,444 INFO L273 TraceCheckUtils]: 148: Hoare triple {44090#false} assume !!(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,444 INFO L273 TraceCheckUtils]: 149: Hoare triple {44090#false} assume !(~i~1 > 20); {44090#false} is VALID [2018-11-23 12:15:06,444 INFO L273 TraceCheckUtils]: 150: Hoare triple {44090#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44090#false} is VALID [2018-11-23 12:15:06,444 INFO L273 TraceCheckUtils]: 151: Hoare triple {44090#false} assume !!(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,444 INFO L273 TraceCheckUtils]: 152: Hoare triple {44090#false} assume !(~i~1 > 20); {44090#false} is VALID [2018-11-23 12:15:06,444 INFO L273 TraceCheckUtils]: 153: Hoare triple {44090#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44090#false} is VALID [2018-11-23 12:15:06,445 INFO L273 TraceCheckUtils]: 154: Hoare triple {44090#false} assume !!(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,445 INFO L273 TraceCheckUtils]: 155: Hoare triple {44090#false} assume !(~i~1 > 20); {44090#false} is VALID [2018-11-23 12:15:06,445 INFO L273 TraceCheckUtils]: 156: Hoare triple {44090#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44090#false} is VALID [2018-11-23 12:15:06,445 INFO L273 TraceCheckUtils]: 157: Hoare triple {44090#false} assume !!(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,445 INFO L273 TraceCheckUtils]: 158: Hoare triple {44090#false} assume !(~i~1 > 20); {44090#false} is VALID [2018-11-23 12:15:06,445 INFO L273 TraceCheckUtils]: 159: Hoare triple {44090#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44090#false} is VALID [2018-11-23 12:15:06,445 INFO L273 TraceCheckUtils]: 160: Hoare triple {44090#false} assume !!(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,445 INFO L273 TraceCheckUtils]: 161: Hoare triple {44090#false} assume !(~i~1 > 20); {44090#false} is VALID [2018-11-23 12:15:06,445 INFO L273 TraceCheckUtils]: 162: Hoare triple {44090#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44090#false} is VALID [2018-11-23 12:15:06,446 INFO L273 TraceCheckUtils]: 163: Hoare triple {44090#false} assume !!(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,446 INFO L273 TraceCheckUtils]: 164: Hoare triple {44090#false} assume !(~i~1 > 20); {44090#false} is VALID [2018-11-23 12:15:06,446 INFO L273 TraceCheckUtils]: 165: Hoare triple {44090#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44090#false} is VALID [2018-11-23 12:15:06,446 INFO L273 TraceCheckUtils]: 166: Hoare triple {44090#false} assume !!(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,446 INFO L273 TraceCheckUtils]: 167: Hoare triple {44090#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {44090#false} is VALID [2018-11-23 12:15:06,446 INFO L273 TraceCheckUtils]: 168: Hoare triple {44090#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44090#false} is VALID [2018-11-23 12:15:06,446 INFO L273 TraceCheckUtils]: 169: Hoare triple {44090#false} assume !!(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,446 INFO L273 TraceCheckUtils]: 170: Hoare triple {44090#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {44090#false} is VALID [2018-11-23 12:15:06,446 INFO L273 TraceCheckUtils]: 171: Hoare triple {44090#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44090#false} is VALID [2018-11-23 12:15:06,446 INFO L273 TraceCheckUtils]: 172: Hoare triple {44090#false} assume !!(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,447 INFO L273 TraceCheckUtils]: 173: Hoare triple {44090#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {44090#false} is VALID [2018-11-23 12:15:06,447 INFO L273 TraceCheckUtils]: 174: Hoare triple {44090#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44090#false} is VALID [2018-11-23 12:15:06,447 INFO L273 TraceCheckUtils]: 175: Hoare triple {44090#false} assume !!(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,447 INFO L273 TraceCheckUtils]: 176: Hoare triple {44090#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {44090#false} is VALID [2018-11-23 12:15:06,447 INFO L273 TraceCheckUtils]: 177: Hoare triple {44090#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44090#false} is VALID [2018-11-23 12:15:06,447 INFO L273 TraceCheckUtils]: 178: Hoare triple {44090#false} assume !!(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,447 INFO L273 TraceCheckUtils]: 179: Hoare triple {44090#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {44090#false} is VALID [2018-11-23 12:15:06,447 INFO L273 TraceCheckUtils]: 180: Hoare triple {44090#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44090#false} is VALID [2018-11-23 12:15:06,447 INFO L273 TraceCheckUtils]: 181: Hoare triple {44090#false} assume !!(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,447 INFO L273 TraceCheckUtils]: 182: Hoare triple {44090#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {44090#false} is VALID [2018-11-23 12:15:06,448 INFO L273 TraceCheckUtils]: 183: Hoare triple {44090#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44090#false} is VALID [2018-11-23 12:15:06,448 INFO L273 TraceCheckUtils]: 184: Hoare triple {44090#false} assume !!(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,448 INFO L273 TraceCheckUtils]: 185: Hoare triple {44090#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {44090#false} is VALID [2018-11-23 12:15:06,448 INFO L273 TraceCheckUtils]: 186: Hoare triple {44090#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44090#false} is VALID [2018-11-23 12:15:06,448 INFO L273 TraceCheckUtils]: 187: Hoare triple {44090#false} assume !!(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,448 INFO L273 TraceCheckUtils]: 188: Hoare triple {44090#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {44090#false} is VALID [2018-11-23 12:15:06,448 INFO L273 TraceCheckUtils]: 189: Hoare triple {44090#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44090#false} is VALID [2018-11-23 12:15:06,448 INFO L273 TraceCheckUtils]: 190: Hoare triple {44090#false} assume !!(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,448 INFO L273 TraceCheckUtils]: 191: Hoare triple {44090#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {44090#false} is VALID [2018-11-23 12:15:06,449 INFO L273 TraceCheckUtils]: 192: Hoare triple {44090#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44090#false} is VALID [2018-11-23 12:15:06,449 INFO L273 TraceCheckUtils]: 193: Hoare triple {44090#false} assume !!(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,449 INFO L273 TraceCheckUtils]: 194: Hoare triple {44090#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {44090#false} is VALID [2018-11-23 12:15:06,449 INFO L273 TraceCheckUtils]: 195: Hoare triple {44090#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44090#false} is VALID [2018-11-23 12:15:06,449 INFO L273 TraceCheckUtils]: 196: Hoare triple {44090#false} assume !!(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,449 INFO L273 TraceCheckUtils]: 197: Hoare triple {44090#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {44090#false} is VALID [2018-11-23 12:15:06,449 INFO L273 TraceCheckUtils]: 198: Hoare triple {44090#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44090#false} is VALID [2018-11-23 12:15:06,449 INFO L273 TraceCheckUtils]: 199: Hoare triple {44090#false} assume !(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,449 INFO L273 TraceCheckUtils]: 200: Hoare triple {44090#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {44090#false} is VALID [2018-11-23 12:15:06,449 INFO L273 TraceCheckUtils]: 201: Hoare triple {44090#false} assume true; {44090#false} is VALID [2018-11-23 12:15:06,450 INFO L268 TraceCheckUtils]: 202: Hoare quadruple {44090#false} {44090#false} #86#return; {44090#false} is VALID [2018-11-23 12:15:06,450 INFO L273 TraceCheckUtils]: 203: Hoare triple {44090#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {44090#false} is VALID [2018-11-23 12:15:06,450 INFO L273 TraceCheckUtils]: 204: Hoare triple {44090#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {44090#false} is VALID [2018-11-23 12:15:06,450 INFO L273 TraceCheckUtils]: 205: Hoare triple {44090#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {44090#false} is VALID [2018-11-23 12:15:06,450 INFO L273 TraceCheckUtils]: 206: Hoare triple {44090#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {44090#false} is VALID [2018-11-23 12:15:06,450 INFO L273 TraceCheckUtils]: 207: Hoare triple {44090#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {44090#false} is VALID [2018-11-23 12:15:06,450 INFO L273 TraceCheckUtils]: 208: Hoare triple {44090#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {44090#false} is VALID [2018-11-23 12:15:06,450 INFO L273 TraceCheckUtils]: 209: Hoare triple {44090#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {44090#false} is VALID [2018-11-23 12:15:06,450 INFO L273 TraceCheckUtils]: 210: Hoare triple {44090#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {44090#false} is VALID [2018-11-23 12:15:06,451 INFO L273 TraceCheckUtils]: 211: Hoare triple {44090#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {44090#false} is VALID [2018-11-23 12:15:06,451 INFO L273 TraceCheckUtils]: 212: Hoare triple {44090#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {44090#false} is VALID [2018-11-23 12:15:06,451 INFO L273 TraceCheckUtils]: 213: Hoare triple {44090#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {44090#false} is VALID [2018-11-23 12:15:06,451 INFO L273 TraceCheckUtils]: 214: Hoare triple {44090#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {44090#false} is VALID [2018-11-23 12:15:06,451 INFO L273 TraceCheckUtils]: 215: Hoare triple {44090#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {44090#false} is VALID [2018-11-23 12:15:06,451 INFO L273 TraceCheckUtils]: 216: Hoare triple {44090#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {44090#false} is VALID [2018-11-23 12:15:06,451 INFO L273 TraceCheckUtils]: 217: Hoare triple {44090#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {44090#false} is VALID [2018-11-23 12:15:06,451 INFO L273 TraceCheckUtils]: 218: Hoare triple {44090#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {44090#false} is VALID [2018-11-23 12:15:06,451 INFO L273 TraceCheckUtils]: 219: Hoare triple {44090#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {44090#false} is VALID [2018-11-23 12:15:06,451 INFO L273 TraceCheckUtils]: 220: Hoare triple {44090#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {44090#false} is VALID [2018-11-23 12:15:06,452 INFO L273 TraceCheckUtils]: 221: Hoare triple {44090#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {44090#false} is VALID [2018-11-23 12:15:06,452 INFO L273 TraceCheckUtils]: 222: Hoare triple {44090#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {44090#false} is VALID [2018-11-23 12:15:06,452 INFO L273 TraceCheckUtils]: 223: Hoare triple {44090#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {44090#false} is VALID [2018-11-23 12:15:06,452 INFO L273 TraceCheckUtils]: 224: Hoare triple {44090#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {44090#false} is VALID [2018-11-23 12:15:06,452 INFO L273 TraceCheckUtils]: 225: Hoare triple {44090#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {44090#false} is VALID [2018-11-23 12:15:06,452 INFO L273 TraceCheckUtils]: 226: Hoare triple {44090#false} assume !(~i~2 < 39); {44090#false} is VALID [2018-11-23 12:15:06,452 INFO L273 TraceCheckUtils]: 227: Hoare triple {44090#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {44090#false} is VALID [2018-11-23 12:15:06,452 INFO L256 TraceCheckUtils]: 228: Hoare triple {44090#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {44090#false} is VALID [2018-11-23 12:15:06,452 INFO L273 TraceCheckUtils]: 229: Hoare triple {44090#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {44090#false} is VALID [2018-11-23 12:15:06,453 INFO L273 TraceCheckUtils]: 230: Hoare triple {44090#false} assume !!(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,453 INFO L273 TraceCheckUtils]: 231: Hoare triple {44090#false} assume !(~i~1 > 20); {44090#false} is VALID [2018-11-23 12:15:06,453 INFO L273 TraceCheckUtils]: 232: Hoare triple {44090#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44090#false} is VALID [2018-11-23 12:15:06,453 INFO L273 TraceCheckUtils]: 233: Hoare triple {44090#false} assume !!(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,453 INFO L273 TraceCheckUtils]: 234: Hoare triple {44090#false} assume !(~i~1 > 20); {44090#false} is VALID [2018-11-23 12:15:06,453 INFO L273 TraceCheckUtils]: 235: Hoare triple {44090#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44090#false} is VALID [2018-11-23 12:15:06,453 INFO L273 TraceCheckUtils]: 236: Hoare triple {44090#false} assume !!(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,453 INFO L273 TraceCheckUtils]: 237: Hoare triple {44090#false} assume !(~i~1 > 20); {44090#false} is VALID [2018-11-23 12:15:06,453 INFO L273 TraceCheckUtils]: 238: Hoare triple {44090#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44090#false} is VALID [2018-11-23 12:15:06,453 INFO L273 TraceCheckUtils]: 239: Hoare triple {44090#false} assume !!(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,454 INFO L273 TraceCheckUtils]: 240: Hoare triple {44090#false} assume !(~i~1 > 20); {44090#false} is VALID [2018-11-23 12:15:06,454 INFO L273 TraceCheckUtils]: 241: Hoare triple {44090#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44090#false} is VALID [2018-11-23 12:15:06,454 INFO L273 TraceCheckUtils]: 242: Hoare triple {44090#false} assume !!(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,454 INFO L273 TraceCheckUtils]: 243: Hoare triple {44090#false} assume !(~i~1 > 20); {44090#false} is VALID [2018-11-23 12:15:06,454 INFO L273 TraceCheckUtils]: 244: Hoare triple {44090#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44090#false} is VALID [2018-11-23 12:15:06,454 INFO L273 TraceCheckUtils]: 245: Hoare triple {44090#false} assume !!(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,454 INFO L273 TraceCheckUtils]: 246: Hoare triple {44090#false} assume !(~i~1 > 20); {44090#false} is VALID [2018-11-23 12:15:06,454 INFO L273 TraceCheckUtils]: 247: Hoare triple {44090#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44090#false} is VALID [2018-11-23 12:15:06,454 INFO L273 TraceCheckUtils]: 248: Hoare triple {44090#false} assume !!(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,454 INFO L273 TraceCheckUtils]: 249: Hoare triple {44090#false} assume !(~i~1 > 20); {44090#false} is VALID [2018-11-23 12:15:06,455 INFO L273 TraceCheckUtils]: 250: Hoare triple {44090#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44090#false} is VALID [2018-11-23 12:15:06,455 INFO L273 TraceCheckUtils]: 251: Hoare triple {44090#false} assume !!(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,455 INFO L273 TraceCheckUtils]: 252: Hoare triple {44090#false} assume !(~i~1 > 20); {44090#false} is VALID [2018-11-23 12:15:06,455 INFO L273 TraceCheckUtils]: 253: Hoare triple {44090#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44090#false} is VALID [2018-11-23 12:15:06,455 INFO L273 TraceCheckUtils]: 254: Hoare triple {44090#false} assume !!(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,455 INFO L273 TraceCheckUtils]: 255: Hoare triple {44090#false} assume !(~i~1 > 20); {44090#false} is VALID [2018-11-23 12:15:06,455 INFO L273 TraceCheckUtils]: 256: Hoare triple {44090#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44090#false} is VALID [2018-11-23 12:15:06,455 INFO L273 TraceCheckUtils]: 257: Hoare triple {44090#false} assume !!(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,455 INFO L273 TraceCheckUtils]: 258: Hoare triple {44090#false} assume !(~i~1 > 20); {44090#false} is VALID [2018-11-23 12:15:06,456 INFO L273 TraceCheckUtils]: 259: Hoare triple {44090#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44090#false} is VALID [2018-11-23 12:15:06,456 INFO L273 TraceCheckUtils]: 260: Hoare triple {44090#false} assume !!(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,456 INFO L273 TraceCheckUtils]: 261: Hoare triple {44090#false} assume !(~i~1 > 20); {44090#false} is VALID [2018-11-23 12:15:06,456 INFO L273 TraceCheckUtils]: 262: Hoare triple {44090#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44090#false} is VALID [2018-11-23 12:15:06,456 INFO L273 TraceCheckUtils]: 263: Hoare triple {44090#false} assume !!(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,456 INFO L273 TraceCheckUtils]: 264: Hoare triple {44090#false} assume !(~i~1 > 20); {44090#false} is VALID [2018-11-23 12:15:06,456 INFO L273 TraceCheckUtils]: 265: Hoare triple {44090#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44090#false} is VALID [2018-11-23 12:15:06,456 INFO L273 TraceCheckUtils]: 266: Hoare triple {44090#false} assume !!(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,456 INFO L273 TraceCheckUtils]: 267: Hoare triple {44090#false} assume !(~i~1 > 20); {44090#false} is VALID [2018-11-23 12:15:06,456 INFO L273 TraceCheckUtils]: 268: Hoare triple {44090#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44090#false} is VALID [2018-11-23 12:15:06,457 INFO L273 TraceCheckUtils]: 269: Hoare triple {44090#false} assume !!(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,457 INFO L273 TraceCheckUtils]: 270: Hoare triple {44090#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {44090#false} is VALID [2018-11-23 12:15:06,457 INFO L273 TraceCheckUtils]: 271: Hoare triple {44090#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44090#false} is VALID [2018-11-23 12:15:06,457 INFO L273 TraceCheckUtils]: 272: Hoare triple {44090#false} assume !!(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,457 INFO L273 TraceCheckUtils]: 273: Hoare triple {44090#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {44090#false} is VALID [2018-11-23 12:15:06,457 INFO L273 TraceCheckUtils]: 274: Hoare triple {44090#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44090#false} is VALID [2018-11-23 12:15:06,457 INFO L273 TraceCheckUtils]: 275: Hoare triple {44090#false} assume !!(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,457 INFO L273 TraceCheckUtils]: 276: Hoare triple {44090#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {44090#false} is VALID [2018-11-23 12:15:06,457 INFO L273 TraceCheckUtils]: 277: Hoare triple {44090#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44090#false} is VALID [2018-11-23 12:15:06,457 INFO L273 TraceCheckUtils]: 278: Hoare triple {44090#false} assume !!(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,458 INFO L273 TraceCheckUtils]: 279: Hoare triple {44090#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {44090#false} is VALID [2018-11-23 12:15:06,458 INFO L273 TraceCheckUtils]: 280: Hoare triple {44090#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44090#false} is VALID [2018-11-23 12:15:06,458 INFO L273 TraceCheckUtils]: 281: Hoare triple {44090#false} assume !!(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,458 INFO L273 TraceCheckUtils]: 282: Hoare triple {44090#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {44090#false} is VALID [2018-11-23 12:15:06,458 INFO L273 TraceCheckUtils]: 283: Hoare triple {44090#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44090#false} is VALID [2018-11-23 12:15:06,458 INFO L273 TraceCheckUtils]: 284: Hoare triple {44090#false} assume !!(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,458 INFO L273 TraceCheckUtils]: 285: Hoare triple {44090#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {44090#false} is VALID [2018-11-23 12:15:06,458 INFO L273 TraceCheckUtils]: 286: Hoare triple {44090#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44090#false} is VALID [2018-11-23 12:15:06,458 INFO L273 TraceCheckUtils]: 287: Hoare triple {44090#false} assume !!(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,458 INFO L273 TraceCheckUtils]: 288: Hoare triple {44090#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {44090#false} is VALID [2018-11-23 12:15:06,459 INFO L273 TraceCheckUtils]: 289: Hoare triple {44090#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44090#false} is VALID [2018-11-23 12:15:06,459 INFO L273 TraceCheckUtils]: 290: Hoare triple {44090#false} assume !!(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,459 INFO L273 TraceCheckUtils]: 291: Hoare triple {44090#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {44090#false} is VALID [2018-11-23 12:15:06,459 INFO L273 TraceCheckUtils]: 292: Hoare triple {44090#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44090#false} is VALID [2018-11-23 12:15:06,459 INFO L273 TraceCheckUtils]: 293: Hoare triple {44090#false} assume !!(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,459 INFO L273 TraceCheckUtils]: 294: Hoare triple {44090#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {44090#false} is VALID [2018-11-23 12:15:06,459 INFO L273 TraceCheckUtils]: 295: Hoare triple {44090#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44090#false} is VALID [2018-11-23 12:15:06,459 INFO L273 TraceCheckUtils]: 296: Hoare triple {44090#false} assume !!(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,459 INFO L273 TraceCheckUtils]: 297: Hoare triple {44090#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {44090#false} is VALID [2018-11-23 12:15:06,460 INFO L273 TraceCheckUtils]: 298: Hoare triple {44090#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44090#false} is VALID [2018-11-23 12:15:06,460 INFO L273 TraceCheckUtils]: 299: Hoare triple {44090#false} assume !!(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,460 INFO L273 TraceCheckUtils]: 300: Hoare triple {44090#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {44090#false} is VALID [2018-11-23 12:15:06,460 INFO L273 TraceCheckUtils]: 301: Hoare triple {44090#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {44090#false} is VALID [2018-11-23 12:15:06,460 INFO L273 TraceCheckUtils]: 302: Hoare triple {44090#false} assume !(~i~1 < 40); {44090#false} is VALID [2018-11-23 12:15:06,460 INFO L273 TraceCheckUtils]: 303: Hoare triple {44090#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {44090#false} is VALID [2018-11-23 12:15:06,460 INFO L273 TraceCheckUtils]: 304: Hoare triple {44090#false} assume true; {44090#false} is VALID [2018-11-23 12:15:06,460 INFO L268 TraceCheckUtils]: 305: Hoare quadruple {44090#false} {44090#false} #88#return; {44090#false} is VALID [2018-11-23 12:15:06,460 INFO L273 TraceCheckUtils]: 306: Hoare triple {44090#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {44090#false} is VALID [2018-11-23 12:15:06,460 INFO L273 TraceCheckUtils]: 307: Hoare triple {44090#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {44090#false} is VALID [2018-11-23 12:15:06,461 INFO L273 TraceCheckUtils]: 308: Hoare triple {44090#false} assume !false; {44090#false} is VALID [2018-11-23 12:15:06,494 INFO L134 CoverageAnalysis]: Checked inductivity of 8309 backedges. 3999 proven. 187 refuted. 0 times theorem prover too weak. 4123 trivial. 0 not checked. [2018-11-23 12:15:06,525 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:15:06,525 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [15] total 15 [2018-11-23 12:15:06,526 INFO L78 Accepts]: Start accepts. Automaton has 15 states. Word has length 309 [2018-11-23 12:15:06,526 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:15:06,526 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 15 states. [2018-11-23 12:15:06,662 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 77 edges. 77 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:15:06,662 INFO L459 AbstractCegarLoop]: Interpolant automaton has 15 states [2018-11-23 12:15:06,663 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2018-11-23 12:15:06,663 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=105, Invalid=105, Unknown=0, NotChecked=0, Total=210 [2018-11-23 12:15:06,663 INFO L87 Difference]: Start difference. First operand 156 states and 172 transitions. Second operand 15 states. [2018-11-23 12:15:07,010 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:07,010 INFO L93 Difference]: Finished difference Result 270 states and 306 transitions. [2018-11-23 12:15:07,010 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2018-11-23 12:15:07,010 INFO L78 Accepts]: Start accepts. Automaton has 15 states. Word has length 309 [2018-11-23 12:15:07,010 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:15:07,011 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 15 states. [2018-11-23 12:15:07,011 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 115 transitions. [2018-11-23 12:15:07,011 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 15 states. [2018-11-23 12:15:07,012 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 115 transitions. [2018-11-23 12:15:07,012 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 15 states and 115 transitions. [2018-11-23 12:15:07,112 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 115 edges. 115 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:15:07,115 INFO L225 Difference]: With dead ends: 270 [2018-11-23 12:15:07,115 INFO L226 Difference]: Without dead ends: 161 [2018-11-23 12:15:07,116 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 308 GetRequests, 295 SyntacticMatches, 0 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=105, Invalid=105, Unknown=0, NotChecked=0, Total=210 [2018-11-23 12:15:07,116 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 161 states. [2018-11-23 12:15:07,195 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 161 to 159. [2018-11-23 12:15:07,196 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:15:07,196 INFO L82 GeneralOperation]: Start isEquivalent. First operand 161 states. Second operand 159 states. [2018-11-23 12:15:07,196 INFO L74 IsIncluded]: Start isIncluded. First operand 161 states. Second operand 159 states. [2018-11-23 12:15:07,196 INFO L87 Difference]: Start difference. First operand 161 states. Second operand 159 states. [2018-11-23 12:15:07,199 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:07,199 INFO L93 Difference]: Finished difference Result 161 states and 179 transitions. [2018-11-23 12:15:07,200 INFO L276 IsEmpty]: Start isEmpty. Operand 161 states and 179 transitions. [2018-11-23 12:15:07,200 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:15:07,200 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:15:07,200 INFO L74 IsIncluded]: Start isIncluded. First operand 159 states. Second operand 161 states. [2018-11-23 12:15:07,200 INFO L87 Difference]: Start difference. First operand 159 states. Second operand 161 states. [2018-11-23 12:15:07,202 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:07,202 INFO L93 Difference]: Finished difference Result 161 states and 179 transitions. [2018-11-23 12:15:07,202 INFO L276 IsEmpty]: Start isEmpty. Operand 161 states and 179 transitions. [2018-11-23 12:15:07,203 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:15:07,203 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:15:07,203 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:15:07,203 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:15:07,203 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 159 states. [2018-11-23 12:15:07,205 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 159 states to 159 states and 176 transitions. [2018-11-23 12:15:07,205 INFO L78 Accepts]: Start accepts. Automaton has 159 states and 176 transitions. Word has length 309 [2018-11-23 12:15:07,205 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:15:07,205 INFO L480 AbstractCegarLoop]: Abstraction has 159 states and 176 transitions. [2018-11-23 12:15:07,206 INFO L481 AbstractCegarLoop]: Interpolant automaton has 15 states. [2018-11-23 12:15:07,206 INFO L276 IsEmpty]: Start isEmpty. Operand 159 states and 176 transitions. [2018-11-23 12:15:07,207 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 319 [2018-11-23 12:15:07,207 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:15:07,207 INFO L402 BasicCegarLoop]: trace histogram [75, 75, 39, 36, 17, 17, 11, 11, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:15:07,207 INFO L423 AbstractCegarLoop]: === Iteration 48 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:15:07,207 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:15:07,208 INFO L82 PathProgramCache]: Analyzing trace with hash 138669148, now seen corresponding path program 43 times [2018-11-23 12:15:07,208 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:15:07,208 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:15:07,209 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:15:07,209 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:15:07,209 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:15:07,221 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:15:07,222 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:15:07,222 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 49 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 49 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:15:07,238 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:15:07,344 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:15:07,395 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:15:07,396 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:15:07,866 INFO L256 TraceCheckUtils]: 0: Hoare triple {45953#true} call ULTIMATE.init(); {45953#true} is VALID [2018-11-23 12:15:07,867 INFO L273 TraceCheckUtils]: 1: Hoare triple {45953#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {45953#true} is VALID [2018-11-23 12:15:07,867 INFO L273 TraceCheckUtils]: 2: Hoare triple {45953#true} assume true; {45953#true} is VALID [2018-11-23 12:15:07,867 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {45953#true} {45953#true} #78#return; {45953#true} is VALID [2018-11-23 12:15:07,867 INFO L256 TraceCheckUtils]: 4: Hoare triple {45953#true} call #t~ret12 := main(); {45953#true} is VALID [2018-11-23 12:15:07,868 INFO L273 TraceCheckUtils]: 5: Hoare triple {45953#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {45953#true} is VALID [2018-11-23 12:15:07,868 INFO L256 TraceCheckUtils]: 6: Hoare triple {45953#true} call init_nondet(~#x~0.base, ~#x~0.offset); {45953#true} is VALID [2018-11-23 12:15:07,868 INFO L273 TraceCheckUtils]: 7: Hoare triple {45953#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {45979#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:15:07,869 INFO L273 TraceCheckUtils]: 8: Hoare triple {45979#(<= init_nondet_~i~0 0)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {45979#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:15:07,869 INFO L273 TraceCheckUtils]: 9: Hoare triple {45979#(<= init_nondet_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45986#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:15:07,869 INFO L273 TraceCheckUtils]: 10: Hoare triple {45986#(<= init_nondet_~i~0 1)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {45986#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:15:07,870 INFO L273 TraceCheckUtils]: 11: Hoare triple {45986#(<= init_nondet_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45993#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:15:07,870 INFO L273 TraceCheckUtils]: 12: Hoare triple {45993#(<= init_nondet_~i~0 2)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {45993#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:15:07,871 INFO L273 TraceCheckUtils]: 13: Hoare triple {45993#(<= init_nondet_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {46000#(<= init_nondet_~i~0 3)} is VALID [2018-11-23 12:15:07,871 INFO L273 TraceCheckUtils]: 14: Hoare triple {46000#(<= init_nondet_~i~0 3)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {46000#(<= init_nondet_~i~0 3)} is VALID [2018-11-23 12:15:07,872 INFO L273 TraceCheckUtils]: 15: Hoare triple {46000#(<= init_nondet_~i~0 3)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {46007#(<= init_nondet_~i~0 4)} is VALID [2018-11-23 12:15:07,873 INFO L273 TraceCheckUtils]: 16: Hoare triple {46007#(<= init_nondet_~i~0 4)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {46007#(<= init_nondet_~i~0 4)} is VALID [2018-11-23 12:15:07,873 INFO L273 TraceCheckUtils]: 17: Hoare triple {46007#(<= init_nondet_~i~0 4)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {46014#(<= init_nondet_~i~0 5)} is VALID [2018-11-23 12:15:07,874 INFO L273 TraceCheckUtils]: 18: Hoare triple {46014#(<= init_nondet_~i~0 5)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {46014#(<= init_nondet_~i~0 5)} is VALID [2018-11-23 12:15:07,874 INFO L273 TraceCheckUtils]: 19: Hoare triple {46014#(<= init_nondet_~i~0 5)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {46021#(<= init_nondet_~i~0 6)} is VALID [2018-11-23 12:15:07,875 INFO L273 TraceCheckUtils]: 20: Hoare triple {46021#(<= init_nondet_~i~0 6)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {46021#(<= init_nondet_~i~0 6)} is VALID [2018-11-23 12:15:07,876 INFO L273 TraceCheckUtils]: 21: Hoare triple {46021#(<= init_nondet_~i~0 6)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {46028#(<= init_nondet_~i~0 7)} is VALID [2018-11-23 12:15:07,876 INFO L273 TraceCheckUtils]: 22: Hoare triple {46028#(<= init_nondet_~i~0 7)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {46028#(<= init_nondet_~i~0 7)} is VALID [2018-11-23 12:15:07,877 INFO L273 TraceCheckUtils]: 23: Hoare triple {46028#(<= init_nondet_~i~0 7)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {46035#(<= init_nondet_~i~0 8)} is VALID [2018-11-23 12:15:07,877 INFO L273 TraceCheckUtils]: 24: Hoare triple {46035#(<= init_nondet_~i~0 8)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {46035#(<= init_nondet_~i~0 8)} is VALID [2018-11-23 12:15:07,878 INFO L273 TraceCheckUtils]: 25: Hoare triple {46035#(<= init_nondet_~i~0 8)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {46042#(<= init_nondet_~i~0 9)} is VALID [2018-11-23 12:15:07,878 INFO L273 TraceCheckUtils]: 26: Hoare triple {46042#(<= init_nondet_~i~0 9)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {46042#(<= init_nondet_~i~0 9)} is VALID [2018-11-23 12:15:07,879 INFO L273 TraceCheckUtils]: 27: Hoare triple {46042#(<= init_nondet_~i~0 9)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {46049#(<= init_nondet_~i~0 10)} is VALID [2018-11-23 12:15:07,880 INFO L273 TraceCheckUtils]: 28: Hoare triple {46049#(<= init_nondet_~i~0 10)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {46049#(<= init_nondet_~i~0 10)} is VALID [2018-11-23 12:15:07,880 INFO L273 TraceCheckUtils]: 29: Hoare triple {46049#(<= init_nondet_~i~0 10)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {46056#(<= init_nondet_~i~0 11)} is VALID [2018-11-23 12:15:07,881 INFO L273 TraceCheckUtils]: 30: Hoare triple {46056#(<= init_nondet_~i~0 11)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {46056#(<= init_nondet_~i~0 11)} is VALID [2018-11-23 12:15:07,881 INFO L273 TraceCheckUtils]: 31: Hoare triple {46056#(<= init_nondet_~i~0 11)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {46063#(<= init_nondet_~i~0 12)} is VALID [2018-11-23 12:15:07,882 INFO L273 TraceCheckUtils]: 32: Hoare triple {46063#(<= init_nondet_~i~0 12)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {46063#(<= init_nondet_~i~0 12)} is VALID [2018-11-23 12:15:07,883 INFO L273 TraceCheckUtils]: 33: Hoare triple {46063#(<= init_nondet_~i~0 12)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {46070#(<= init_nondet_~i~0 13)} is VALID [2018-11-23 12:15:07,883 INFO L273 TraceCheckUtils]: 34: Hoare triple {46070#(<= init_nondet_~i~0 13)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {46070#(<= init_nondet_~i~0 13)} is VALID [2018-11-23 12:15:07,884 INFO L273 TraceCheckUtils]: 35: Hoare triple {46070#(<= init_nondet_~i~0 13)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {46077#(<= init_nondet_~i~0 14)} is VALID [2018-11-23 12:15:07,884 INFO L273 TraceCheckUtils]: 36: Hoare triple {46077#(<= init_nondet_~i~0 14)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {46077#(<= init_nondet_~i~0 14)} is VALID [2018-11-23 12:15:07,885 INFO L273 TraceCheckUtils]: 37: Hoare triple {46077#(<= init_nondet_~i~0 14)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {46084#(<= init_nondet_~i~0 15)} is VALID [2018-11-23 12:15:07,885 INFO L273 TraceCheckUtils]: 38: Hoare triple {46084#(<= init_nondet_~i~0 15)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {46084#(<= init_nondet_~i~0 15)} is VALID [2018-11-23 12:15:07,886 INFO L273 TraceCheckUtils]: 39: Hoare triple {46084#(<= init_nondet_~i~0 15)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {46091#(<= init_nondet_~i~0 16)} is VALID [2018-11-23 12:15:07,887 INFO L273 TraceCheckUtils]: 40: Hoare triple {46091#(<= init_nondet_~i~0 16)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {46091#(<= init_nondet_~i~0 16)} is VALID [2018-11-23 12:15:07,887 INFO L273 TraceCheckUtils]: 41: Hoare triple {46091#(<= init_nondet_~i~0 16)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {46098#(<= init_nondet_~i~0 17)} is VALID [2018-11-23 12:15:07,888 INFO L273 TraceCheckUtils]: 42: Hoare triple {46098#(<= init_nondet_~i~0 17)} assume !(~i~0 < 40); {45954#false} is VALID [2018-11-23 12:15:07,888 INFO L273 TraceCheckUtils]: 43: Hoare triple {45954#false} assume true; {45954#false} is VALID [2018-11-23 12:15:07,888 INFO L268 TraceCheckUtils]: 44: Hoare quadruple {45954#false} {45953#true} #82#return; {45954#false} is VALID [2018-11-23 12:15:07,889 INFO L273 TraceCheckUtils]: 45: Hoare triple {45954#false} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {45954#false} is VALID [2018-11-23 12:15:07,889 INFO L256 TraceCheckUtils]: 46: Hoare triple {45954#false} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {45954#false} is VALID [2018-11-23 12:15:07,889 INFO L273 TraceCheckUtils]: 47: Hoare triple {45954#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {45954#false} is VALID [2018-11-23 12:15:07,889 INFO L273 TraceCheckUtils]: 48: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,889 INFO L273 TraceCheckUtils]: 49: Hoare triple {45954#false} assume !(~i~1 > 20); {45954#false} is VALID [2018-11-23 12:15:07,889 INFO L273 TraceCheckUtils]: 50: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,890 INFO L273 TraceCheckUtils]: 51: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,890 INFO L273 TraceCheckUtils]: 52: Hoare triple {45954#false} assume !(~i~1 > 20); {45954#false} is VALID [2018-11-23 12:15:07,890 INFO L273 TraceCheckUtils]: 53: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,890 INFO L273 TraceCheckUtils]: 54: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,890 INFO L273 TraceCheckUtils]: 55: Hoare triple {45954#false} assume !(~i~1 > 20); {45954#false} is VALID [2018-11-23 12:15:07,890 INFO L273 TraceCheckUtils]: 56: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,891 INFO L273 TraceCheckUtils]: 57: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,891 INFO L273 TraceCheckUtils]: 58: Hoare triple {45954#false} assume !(~i~1 > 20); {45954#false} is VALID [2018-11-23 12:15:07,891 INFO L273 TraceCheckUtils]: 59: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,891 INFO L273 TraceCheckUtils]: 60: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,891 INFO L273 TraceCheckUtils]: 61: Hoare triple {45954#false} assume !(~i~1 > 20); {45954#false} is VALID [2018-11-23 12:15:07,891 INFO L273 TraceCheckUtils]: 62: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,892 INFO L273 TraceCheckUtils]: 63: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,892 INFO L273 TraceCheckUtils]: 64: Hoare triple {45954#false} assume !(~i~1 > 20); {45954#false} is VALID [2018-11-23 12:15:07,892 INFO L273 TraceCheckUtils]: 65: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,892 INFO L273 TraceCheckUtils]: 66: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,892 INFO L273 TraceCheckUtils]: 67: Hoare triple {45954#false} assume !(~i~1 > 20); {45954#false} is VALID [2018-11-23 12:15:07,892 INFO L273 TraceCheckUtils]: 68: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,893 INFO L273 TraceCheckUtils]: 69: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,893 INFO L273 TraceCheckUtils]: 70: Hoare triple {45954#false} assume !(~i~1 > 20); {45954#false} is VALID [2018-11-23 12:15:07,893 INFO L273 TraceCheckUtils]: 71: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,893 INFO L273 TraceCheckUtils]: 72: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,893 INFO L273 TraceCheckUtils]: 73: Hoare triple {45954#false} assume !(~i~1 > 20); {45954#false} is VALID [2018-11-23 12:15:07,893 INFO L273 TraceCheckUtils]: 74: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,893 INFO L273 TraceCheckUtils]: 75: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,893 INFO L273 TraceCheckUtils]: 76: Hoare triple {45954#false} assume !(~i~1 > 20); {45954#false} is VALID [2018-11-23 12:15:07,893 INFO L273 TraceCheckUtils]: 77: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,893 INFO L273 TraceCheckUtils]: 78: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,894 INFO L273 TraceCheckUtils]: 79: Hoare triple {45954#false} assume !(~i~1 > 20); {45954#false} is VALID [2018-11-23 12:15:07,894 INFO L273 TraceCheckUtils]: 80: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,894 INFO L273 TraceCheckUtils]: 81: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,894 INFO L273 TraceCheckUtils]: 82: Hoare triple {45954#false} assume !(~i~1 > 20); {45954#false} is VALID [2018-11-23 12:15:07,894 INFO L273 TraceCheckUtils]: 83: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,894 INFO L273 TraceCheckUtils]: 84: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,894 INFO L273 TraceCheckUtils]: 85: Hoare triple {45954#false} assume !(~i~1 > 20); {45954#false} is VALID [2018-11-23 12:15:07,894 INFO L273 TraceCheckUtils]: 86: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,894 INFO L273 TraceCheckUtils]: 87: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,894 INFO L273 TraceCheckUtils]: 88: Hoare triple {45954#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {45954#false} is VALID [2018-11-23 12:15:07,895 INFO L273 TraceCheckUtils]: 89: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,895 INFO L273 TraceCheckUtils]: 90: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,895 INFO L273 TraceCheckUtils]: 91: Hoare triple {45954#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {45954#false} is VALID [2018-11-23 12:15:07,895 INFO L273 TraceCheckUtils]: 92: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,895 INFO L273 TraceCheckUtils]: 93: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,895 INFO L273 TraceCheckUtils]: 94: Hoare triple {45954#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {45954#false} is VALID [2018-11-23 12:15:07,895 INFO L273 TraceCheckUtils]: 95: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,895 INFO L273 TraceCheckUtils]: 96: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,895 INFO L273 TraceCheckUtils]: 97: Hoare triple {45954#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {45954#false} is VALID [2018-11-23 12:15:07,896 INFO L273 TraceCheckUtils]: 98: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,896 INFO L273 TraceCheckUtils]: 99: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,896 INFO L273 TraceCheckUtils]: 100: Hoare triple {45954#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {45954#false} is VALID [2018-11-23 12:15:07,896 INFO L273 TraceCheckUtils]: 101: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,896 INFO L273 TraceCheckUtils]: 102: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,896 INFO L273 TraceCheckUtils]: 103: Hoare triple {45954#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {45954#false} is VALID [2018-11-23 12:15:07,896 INFO L273 TraceCheckUtils]: 104: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,896 INFO L273 TraceCheckUtils]: 105: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,896 INFO L273 TraceCheckUtils]: 106: Hoare triple {45954#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {45954#false} is VALID [2018-11-23 12:15:07,896 INFO L273 TraceCheckUtils]: 107: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,897 INFO L273 TraceCheckUtils]: 108: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,897 INFO L273 TraceCheckUtils]: 109: Hoare triple {45954#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {45954#false} is VALID [2018-11-23 12:15:07,897 INFO L273 TraceCheckUtils]: 110: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,897 INFO L273 TraceCheckUtils]: 111: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,897 INFO L273 TraceCheckUtils]: 112: Hoare triple {45954#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {45954#false} is VALID [2018-11-23 12:15:07,897 INFO L273 TraceCheckUtils]: 113: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,897 INFO L273 TraceCheckUtils]: 114: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,897 INFO L273 TraceCheckUtils]: 115: Hoare triple {45954#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {45954#false} is VALID [2018-11-23 12:15:07,897 INFO L273 TraceCheckUtils]: 116: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,897 INFO L273 TraceCheckUtils]: 117: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,898 INFO L273 TraceCheckUtils]: 118: Hoare triple {45954#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {45954#false} is VALID [2018-11-23 12:15:07,898 INFO L273 TraceCheckUtils]: 119: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,898 INFO L273 TraceCheckUtils]: 120: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,898 INFO L273 TraceCheckUtils]: 121: Hoare triple {45954#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {45954#false} is VALID [2018-11-23 12:15:07,898 INFO L273 TraceCheckUtils]: 122: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,898 INFO L273 TraceCheckUtils]: 123: Hoare triple {45954#false} assume !(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,898 INFO L273 TraceCheckUtils]: 124: Hoare triple {45954#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {45954#false} is VALID [2018-11-23 12:15:07,898 INFO L273 TraceCheckUtils]: 125: Hoare triple {45954#false} assume true; {45954#false} is VALID [2018-11-23 12:15:07,898 INFO L268 TraceCheckUtils]: 126: Hoare quadruple {45954#false} {45954#false} #84#return; {45954#false} is VALID [2018-11-23 12:15:07,898 INFO L273 TraceCheckUtils]: 127: Hoare triple {45954#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {45954#false} is VALID [2018-11-23 12:15:07,899 INFO L256 TraceCheckUtils]: 128: Hoare triple {45954#false} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {45954#false} is VALID [2018-11-23 12:15:07,899 INFO L273 TraceCheckUtils]: 129: Hoare triple {45954#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {45954#false} is VALID [2018-11-23 12:15:07,899 INFO L273 TraceCheckUtils]: 130: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,899 INFO L273 TraceCheckUtils]: 131: Hoare triple {45954#false} assume !(~i~1 > 20); {45954#false} is VALID [2018-11-23 12:15:07,899 INFO L273 TraceCheckUtils]: 132: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,899 INFO L273 TraceCheckUtils]: 133: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,899 INFO L273 TraceCheckUtils]: 134: Hoare triple {45954#false} assume !(~i~1 > 20); {45954#false} is VALID [2018-11-23 12:15:07,899 INFO L273 TraceCheckUtils]: 135: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,899 INFO L273 TraceCheckUtils]: 136: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,900 INFO L273 TraceCheckUtils]: 137: Hoare triple {45954#false} assume !(~i~1 > 20); {45954#false} is VALID [2018-11-23 12:15:07,900 INFO L273 TraceCheckUtils]: 138: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,900 INFO L273 TraceCheckUtils]: 139: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,900 INFO L273 TraceCheckUtils]: 140: Hoare triple {45954#false} assume !(~i~1 > 20); {45954#false} is VALID [2018-11-23 12:15:07,900 INFO L273 TraceCheckUtils]: 141: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,900 INFO L273 TraceCheckUtils]: 142: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,900 INFO L273 TraceCheckUtils]: 143: Hoare triple {45954#false} assume !(~i~1 > 20); {45954#false} is VALID [2018-11-23 12:15:07,900 INFO L273 TraceCheckUtils]: 144: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,900 INFO L273 TraceCheckUtils]: 145: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,900 INFO L273 TraceCheckUtils]: 146: Hoare triple {45954#false} assume !(~i~1 > 20); {45954#false} is VALID [2018-11-23 12:15:07,901 INFO L273 TraceCheckUtils]: 147: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,901 INFO L273 TraceCheckUtils]: 148: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,901 INFO L273 TraceCheckUtils]: 149: Hoare triple {45954#false} assume !(~i~1 > 20); {45954#false} is VALID [2018-11-23 12:15:07,901 INFO L273 TraceCheckUtils]: 150: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,901 INFO L273 TraceCheckUtils]: 151: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,901 INFO L273 TraceCheckUtils]: 152: Hoare triple {45954#false} assume !(~i~1 > 20); {45954#false} is VALID [2018-11-23 12:15:07,901 INFO L273 TraceCheckUtils]: 153: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,901 INFO L273 TraceCheckUtils]: 154: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,901 INFO L273 TraceCheckUtils]: 155: Hoare triple {45954#false} assume !(~i~1 > 20); {45954#false} is VALID [2018-11-23 12:15:07,901 INFO L273 TraceCheckUtils]: 156: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,902 INFO L273 TraceCheckUtils]: 157: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,902 INFO L273 TraceCheckUtils]: 158: Hoare triple {45954#false} assume !(~i~1 > 20); {45954#false} is VALID [2018-11-23 12:15:07,902 INFO L273 TraceCheckUtils]: 159: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,902 INFO L273 TraceCheckUtils]: 160: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,902 INFO L273 TraceCheckUtils]: 161: Hoare triple {45954#false} assume !(~i~1 > 20); {45954#false} is VALID [2018-11-23 12:15:07,902 INFO L273 TraceCheckUtils]: 162: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,902 INFO L273 TraceCheckUtils]: 163: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,902 INFO L273 TraceCheckUtils]: 164: Hoare triple {45954#false} assume !(~i~1 > 20); {45954#false} is VALID [2018-11-23 12:15:07,902 INFO L273 TraceCheckUtils]: 165: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,903 INFO L273 TraceCheckUtils]: 166: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,903 INFO L273 TraceCheckUtils]: 167: Hoare triple {45954#false} assume !(~i~1 > 20); {45954#false} is VALID [2018-11-23 12:15:07,903 INFO L273 TraceCheckUtils]: 168: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,903 INFO L273 TraceCheckUtils]: 169: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,903 INFO L273 TraceCheckUtils]: 170: Hoare triple {45954#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {45954#false} is VALID [2018-11-23 12:15:07,903 INFO L273 TraceCheckUtils]: 171: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,903 INFO L273 TraceCheckUtils]: 172: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,903 INFO L273 TraceCheckUtils]: 173: Hoare triple {45954#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {45954#false} is VALID [2018-11-23 12:15:07,903 INFO L273 TraceCheckUtils]: 174: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,903 INFO L273 TraceCheckUtils]: 175: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,904 INFO L273 TraceCheckUtils]: 176: Hoare triple {45954#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {45954#false} is VALID [2018-11-23 12:15:07,904 INFO L273 TraceCheckUtils]: 177: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,904 INFO L273 TraceCheckUtils]: 178: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,904 INFO L273 TraceCheckUtils]: 179: Hoare triple {45954#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {45954#false} is VALID [2018-11-23 12:15:07,904 INFO L273 TraceCheckUtils]: 180: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,904 INFO L273 TraceCheckUtils]: 181: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,904 INFO L273 TraceCheckUtils]: 182: Hoare triple {45954#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {45954#false} is VALID [2018-11-23 12:15:07,904 INFO L273 TraceCheckUtils]: 183: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,904 INFO L273 TraceCheckUtils]: 184: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,904 INFO L273 TraceCheckUtils]: 185: Hoare triple {45954#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {45954#false} is VALID [2018-11-23 12:15:07,905 INFO L273 TraceCheckUtils]: 186: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,905 INFO L273 TraceCheckUtils]: 187: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,905 INFO L273 TraceCheckUtils]: 188: Hoare triple {45954#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {45954#false} is VALID [2018-11-23 12:15:07,905 INFO L273 TraceCheckUtils]: 189: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,905 INFO L273 TraceCheckUtils]: 190: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,905 INFO L273 TraceCheckUtils]: 191: Hoare triple {45954#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {45954#false} is VALID [2018-11-23 12:15:07,905 INFO L273 TraceCheckUtils]: 192: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,905 INFO L273 TraceCheckUtils]: 193: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,905 INFO L273 TraceCheckUtils]: 194: Hoare triple {45954#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {45954#false} is VALID [2018-11-23 12:15:07,905 INFO L273 TraceCheckUtils]: 195: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,906 INFO L273 TraceCheckUtils]: 196: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,906 INFO L273 TraceCheckUtils]: 197: Hoare triple {45954#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {45954#false} is VALID [2018-11-23 12:15:07,906 INFO L273 TraceCheckUtils]: 198: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,906 INFO L273 TraceCheckUtils]: 199: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,906 INFO L273 TraceCheckUtils]: 200: Hoare triple {45954#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {45954#false} is VALID [2018-11-23 12:15:07,906 INFO L273 TraceCheckUtils]: 201: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,906 INFO L273 TraceCheckUtils]: 202: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,906 INFO L273 TraceCheckUtils]: 203: Hoare triple {45954#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {45954#false} is VALID [2018-11-23 12:15:07,906 INFO L273 TraceCheckUtils]: 204: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,907 INFO L273 TraceCheckUtils]: 205: Hoare triple {45954#false} assume !(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,907 INFO L273 TraceCheckUtils]: 206: Hoare triple {45954#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {45954#false} is VALID [2018-11-23 12:15:07,907 INFO L273 TraceCheckUtils]: 207: Hoare triple {45954#false} assume true; {45954#false} is VALID [2018-11-23 12:15:07,907 INFO L268 TraceCheckUtils]: 208: Hoare quadruple {45954#false} {45954#false} #86#return; {45954#false} is VALID [2018-11-23 12:15:07,907 INFO L273 TraceCheckUtils]: 209: Hoare triple {45954#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {45954#false} is VALID [2018-11-23 12:15:07,907 INFO L273 TraceCheckUtils]: 210: Hoare triple {45954#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {45954#false} is VALID [2018-11-23 12:15:07,907 INFO L273 TraceCheckUtils]: 211: Hoare triple {45954#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {45954#false} is VALID [2018-11-23 12:15:07,907 INFO L273 TraceCheckUtils]: 212: Hoare triple {45954#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {45954#false} is VALID [2018-11-23 12:15:07,907 INFO L273 TraceCheckUtils]: 213: Hoare triple {45954#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {45954#false} is VALID [2018-11-23 12:15:07,907 INFO L273 TraceCheckUtils]: 214: Hoare triple {45954#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {45954#false} is VALID [2018-11-23 12:15:07,908 INFO L273 TraceCheckUtils]: 215: Hoare triple {45954#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {45954#false} is VALID [2018-11-23 12:15:07,908 INFO L273 TraceCheckUtils]: 216: Hoare triple {45954#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {45954#false} is VALID [2018-11-23 12:15:07,908 INFO L273 TraceCheckUtils]: 217: Hoare triple {45954#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {45954#false} is VALID [2018-11-23 12:15:07,908 INFO L273 TraceCheckUtils]: 218: Hoare triple {45954#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {45954#false} is VALID [2018-11-23 12:15:07,908 INFO L273 TraceCheckUtils]: 219: Hoare triple {45954#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {45954#false} is VALID [2018-11-23 12:15:07,908 INFO L273 TraceCheckUtils]: 220: Hoare triple {45954#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {45954#false} is VALID [2018-11-23 12:15:07,908 INFO L273 TraceCheckUtils]: 221: Hoare triple {45954#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {45954#false} is VALID [2018-11-23 12:15:07,908 INFO L273 TraceCheckUtils]: 222: Hoare triple {45954#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {45954#false} is VALID [2018-11-23 12:15:07,908 INFO L273 TraceCheckUtils]: 223: Hoare triple {45954#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {45954#false} is VALID [2018-11-23 12:15:07,908 INFO L273 TraceCheckUtils]: 224: Hoare triple {45954#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {45954#false} is VALID [2018-11-23 12:15:07,909 INFO L273 TraceCheckUtils]: 225: Hoare triple {45954#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {45954#false} is VALID [2018-11-23 12:15:07,909 INFO L273 TraceCheckUtils]: 226: Hoare triple {45954#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {45954#false} is VALID [2018-11-23 12:15:07,909 INFO L273 TraceCheckUtils]: 227: Hoare triple {45954#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {45954#false} is VALID [2018-11-23 12:15:07,909 INFO L273 TraceCheckUtils]: 228: Hoare triple {45954#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {45954#false} is VALID [2018-11-23 12:15:07,909 INFO L273 TraceCheckUtils]: 229: Hoare triple {45954#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {45954#false} is VALID [2018-11-23 12:15:07,909 INFO L273 TraceCheckUtils]: 230: Hoare triple {45954#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {45954#false} is VALID [2018-11-23 12:15:07,909 INFO L273 TraceCheckUtils]: 231: Hoare triple {45954#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {45954#false} is VALID [2018-11-23 12:15:07,909 INFO L273 TraceCheckUtils]: 232: Hoare triple {45954#false} assume !(~i~2 < 39); {45954#false} is VALID [2018-11-23 12:15:07,909 INFO L273 TraceCheckUtils]: 233: Hoare triple {45954#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {45954#false} is VALID [2018-11-23 12:15:07,910 INFO L256 TraceCheckUtils]: 234: Hoare triple {45954#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {45954#false} is VALID [2018-11-23 12:15:07,910 INFO L273 TraceCheckUtils]: 235: Hoare triple {45954#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {45954#false} is VALID [2018-11-23 12:15:07,910 INFO L273 TraceCheckUtils]: 236: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,910 INFO L273 TraceCheckUtils]: 237: Hoare triple {45954#false} assume !(~i~1 > 20); {45954#false} is VALID [2018-11-23 12:15:07,910 INFO L273 TraceCheckUtils]: 238: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,910 INFO L273 TraceCheckUtils]: 239: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,910 INFO L273 TraceCheckUtils]: 240: Hoare triple {45954#false} assume !(~i~1 > 20); {45954#false} is VALID [2018-11-23 12:15:07,910 INFO L273 TraceCheckUtils]: 241: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,910 INFO L273 TraceCheckUtils]: 242: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,910 INFO L273 TraceCheckUtils]: 243: Hoare triple {45954#false} assume !(~i~1 > 20); {45954#false} is VALID [2018-11-23 12:15:07,911 INFO L273 TraceCheckUtils]: 244: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,911 INFO L273 TraceCheckUtils]: 245: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,911 INFO L273 TraceCheckUtils]: 246: Hoare triple {45954#false} assume !(~i~1 > 20); {45954#false} is VALID [2018-11-23 12:15:07,911 INFO L273 TraceCheckUtils]: 247: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,911 INFO L273 TraceCheckUtils]: 248: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,911 INFO L273 TraceCheckUtils]: 249: Hoare triple {45954#false} assume !(~i~1 > 20); {45954#false} is VALID [2018-11-23 12:15:07,911 INFO L273 TraceCheckUtils]: 250: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,911 INFO L273 TraceCheckUtils]: 251: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,911 INFO L273 TraceCheckUtils]: 252: Hoare triple {45954#false} assume !(~i~1 > 20); {45954#false} is VALID [2018-11-23 12:15:07,911 INFO L273 TraceCheckUtils]: 253: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,912 INFO L273 TraceCheckUtils]: 254: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,912 INFO L273 TraceCheckUtils]: 255: Hoare triple {45954#false} assume !(~i~1 > 20); {45954#false} is VALID [2018-11-23 12:15:07,912 INFO L273 TraceCheckUtils]: 256: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,912 INFO L273 TraceCheckUtils]: 257: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,912 INFO L273 TraceCheckUtils]: 258: Hoare triple {45954#false} assume !(~i~1 > 20); {45954#false} is VALID [2018-11-23 12:15:07,912 INFO L273 TraceCheckUtils]: 259: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,912 INFO L273 TraceCheckUtils]: 260: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,912 INFO L273 TraceCheckUtils]: 261: Hoare triple {45954#false} assume !(~i~1 > 20); {45954#false} is VALID [2018-11-23 12:15:07,912 INFO L273 TraceCheckUtils]: 262: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,912 INFO L273 TraceCheckUtils]: 263: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,913 INFO L273 TraceCheckUtils]: 264: Hoare triple {45954#false} assume !(~i~1 > 20); {45954#false} is VALID [2018-11-23 12:15:07,913 INFO L273 TraceCheckUtils]: 265: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,913 INFO L273 TraceCheckUtils]: 266: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,913 INFO L273 TraceCheckUtils]: 267: Hoare triple {45954#false} assume !(~i~1 > 20); {45954#false} is VALID [2018-11-23 12:15:07,913 INFO L273 TraceCheckUtils]: 268: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,913 INFO L273 TraceCheckUtils]: 269: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,913 INFO L273 TraceCheckUtils]: 270: Hoare triple {45954#false} assume !(~i~1 > 20); {45954#false} is VALID [2018-11-23 12:15:07,913 INFO L273 TraceCheckUtils]: 271: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,913 INFO L273 TraceCheckUtils]: 272: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,913 INFO L273 TraceCheckUtils]: 273: Hoare triple {45954#false} assume !(~i~1 > 20); {45954#false} is VALID [2018-11-23 12:15:07,914 INFO L273 TraceCheckUtils]: 274: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,914 INFO L273 TraceCheckUtils]: 275: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,914 INFO L273 TraceCheckUtils]: 276: Hoare triple {45954#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {45954#false} is VALID [2018-11-23 12:15:07,914 INFO L273 TraceCheckUtils]: 277: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,914 INFO L273 TraceCheckUtils]: 278: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,914 INFO L273 TraceCheckUtils]: 279: Hoare triple {45954#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {45954#false} is VALID [2018-11-23 12:15:07,914 INFO L273 TraceCheckUtils]: 280: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,914 INFO L273 TraceCheckUtils]: 281: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,914 INFO L273 TraceCheckUtils]: 282: Hoare triple {45954#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {45954#false} is VALID [2018-11-23 12:15:07,914 INFO L273 TraceCheckUtils]: 283: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,915 INFO L273 TraceCheckUtils]: 284: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,915 INFO L273 TraceCheckUtils]: 285: Hoare triple {45954#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {45954#false} is VALID [2018-11-23 12:15:07,915 INFO L273 TraceCheckUtils]: 286: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,915 INFO L273 TraceCheckUtils]: 287: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,915 INFO L273 TraceCheckUtils]: 288: Hoare triple {45954#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {45954#false} is VALID [2018-11-23 12:15:07,915 INFO L273 TraceCheckUtils]: 289: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,915 INFO L273 TraceCheckUtils]: 290: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,915 INFO L273 TraceCheckUtils]: 291: Hoare triple {45954#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {45954#false} is VALID [2018-11-23 12:15:07,915 INFO L273 TraceCheckUtils]: 292: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,915 INFO L273 TraceCheckUtils]: 293: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,916 INFO L273 TraceCheckUtils]: 294: Hoare triple {45954#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {45954#false} is VALID [2018-11-23 12:15:07,916 INFO L273 TraceCheckUtils]: 295: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,916 INFO L273 TraceCheckUtils]: 296: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,916 INFO L273 TraceCheckUtils]: 297: Hoare triple {45954#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {45954#false} is VALID [2018-11-23 12:15:07,916 INFO L273 TraceCheckUtils]: 298: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,916 INFO L273 TraceCheckUtils]: 299: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,916 INFO L273 TraceCheckUtils]: 300: Hoare triple {45954#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {45954#false} is VALID [2018-11-23 12:15:07,916 INFO L273 TraceCheckUtils]: 301: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,916 INFO L273 TraceCheckUtils]: 302: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,916 INFO L273 TraceCheckUtils]: 303: Hoare triple {45954#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {45954#false} is VALID [2018-11-23 12:15:07,917 INFO L273 TraceCheckUtils]: 304: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,917 INFO L273 TraceCheckUtils]: 305: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,917 INFO L273 TraceCheckUtils]: 306: Hoare triple {45954#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {45954#false} is VALID [2018-11-23 12:15:07,917 INFO L273 TraceCheckUtils]: 307: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,917 INFO L273 TraceCheckUtils]: 308: Hoare triple {45954#false} assume !!(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,917 INFO L273 TraceCheckUtils]: 309: Hoare triple {45954#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {45954#false} is VALID [2018-11-23 12:15:07,917 INFO L273 TraceCheckUtils]: 310: Hoare triple {45954#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {45954#false} is VALID [2018-11-23 12:15:07,917 INFO L273 TraceCheckUtils]: 311: Hoare triple {45954#false} assume !(~i~1 < 40); {45954#false} is VALID [2018-11-23 12:15:07,917 INFO L273 TraceCheckUtils]: 312: Hoare triple {45954#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {45954#false} is VALID [2018-11-23 12:15:07,917 INFO L273 TraceCheckUtils]: 313: Hoare triple {45954#false} assume true; {45954#false} is VALID [2018-11-23 12:15:07,918 INFO L268 TraceCheckUtils]: 314: Hoare quadruple {45954#false} {45954#false} #88#return; {45954#false} is VALID [2018-11-23 12:15:07,918 INFO L273 TraceCheckUtils]: 315: Hoare triple {45954#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {45954#false} is VALID [2018-11-23 12:15:07,918 INFO L273 TraceCheckUtils]: 316: Hoare triple {45954#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {45954#false} is VALID [2018-11-23 12:15:07,918 INFO L273 TraceCheckUtils]: 317: Hoare triple {45954#false} assume !false; {45954#false} is VALID [2018-11-23 12:15:07,979 INFO L134 CoverageAnalysis]: Checked inductivity of 8975 backedges. 0 proven. 289 refuted. 0 times theorem prover too weak. 8686 trivial. 0 not checked. [2018-11-23 12:15:08,010 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:15:08,010 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [20] total 20 [2018-11-23 12:15:08,011 INFO L78 Accepts]: Start accepts. Automaton has 20 states. Word has length 318 [2018-11-23 12:15:08,011 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:15:08,011 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 20 states. [2018-11-23 12:15:08,158 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-23 12:15:08,159 INFO L459 AbstractCegarLoop]: Interpolant automaton has 20 states [2018-11-23 12:15:08,159 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2018-11-23 12:15:08,159 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=190, Invalid=190, Unknown=0, NotChecked=0, Total=380 [2018-11-23 12:15:08,160 INFO L87 Difference]: Start difference. First operand 159 states and 176 transitions. Second operand 20 states. [2018-11-23 12:15:08,474 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:08,474 INFO L93 Difference]: Finished difference Result 278 states and 312 transitions. [2018-11-23 12:15:08,474 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2018-11-23 12:15:08,474 INFO L78 Accepts]: Start accepts. Automaton has 20 states. Word has length 318 [2018-11-23 12:15:08,474 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:15:08,475 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 20 states. [2018-11-23 12:15:08,475 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 102 transitions. [2018-11-23 12:15:08,475 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 20 states. [2018-11-23 12:15:08,476 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 102 transitions. [2018-11-23 12:15:08,476 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 20 states and 102 transitions. [2018-11-23 12:15:08,569 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 102 edges. 102 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:15:08,572 INFO L225 Difference]: With dead ends: 278 [2018-11-23 12:15:08,572 INFO L226 Difference]: Without dead ends: 162 [2018-11-23 12:15:08,573 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 317 GetRequests, 299 SyntacticMatches, 0 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=190, Invalid=190, Unknown=0, NotChecked=0, Total=380 [2018-11-23 12:15:08,573 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 162 states. [2018-11-23 12:15:08,706 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 162 to 161. [2018-11-23 12:15:08,706 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:15:08,706 INFO L82 GeneralOperation]: Start isEquivalent. First operand 162 states. Second operand 161 states. [2018-11-23 12:15:08,707 INFO L74 IsIncluded]: Start isIncluded. First operand 162 states. Second operand 161 states. [2018-11-23 12:15:08,707 INFO L87 Difference]: Start difference. First operand 162 states. Second operand 161 states. [2018-11-23 12:15:08,710 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:08,710 INFO L93 Difference]: Finished difference Result 162 states and 179 transitions. [2018-11-23 12:15:08,710 INFO L276 IsEmpty]: Start isEmpty. Operand 162 states and 179 transitions. [2018-11-23 12:15:08,710 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:15:08,710 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:15:08,710 INFO L74 IsIncluded]: Start isIncluded. First operand 161 states. Second operand 162 states. [2018-11-23 12:15:08,710 INFO L87 Difference]: Start difference. First operand 161 states. Second operand 162 states. [2018-11-23 12:15:08,713 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:08,713 INFO L93 Difference]: Finished difference Result 162 states and 179 transitions. [2018-11-23 12:15:08,713 INFO L276 IsEmpty]: Start isEmpty. Operand 162 states and 179 transitions. [2018-11-23 12:15:08,713 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:15:08,713 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:15:08,713 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:15:08,713 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:15:08,713 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 161 states. [2018-11-23 12:15:08,715 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 161 states to 161 states and 178 transitions. [2018-11-23 12:15:08,716 INFO L78 Accepts]: Start accepts. Automaton has 161 states and 178 transitions. Word has length 318 [2018-11-23 12:15:08,716 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:15:08,716 INFO L480 AbstractCegarLoop]: Abstraction has 161 states and 178 transitions. [2018-11-23 12:15:08,716 INFO L481 AbstractCegarLoop]: Interpolant automaton has 20 states. [2018-11-23 12:15:08,716 INFO L276 IsEmpty]: Start isEmpty. Operand 161 states and 178 transitions. [2018-11-23 12:15:08,717 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 321 [2018-11-23 12:15:08,717 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:15:08,717 INFO L402 BasicCegarLoop]: trace histogram [75, 75, 39, 36, 18, 18, 11, 11, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:15:08,718 INFO L423 AbstractCegarLoop]: === Iteration 49 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:15:08,718 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:15:08,718 INFO L82 PathProgramCache]: Analyzing trace with hash 456791710, now seen corresponding path program 44 times [2018-11-23 12:15:08,718 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:15:08,718 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:15:08,719 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:15:08,719 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:15:08,719 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:15:08,732 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:15:08,733 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:15:08,733 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 50 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 50 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:15:08,747 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-23 12:15:08,858 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-23 12:15:08,858 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:15:08,905 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:15:08,908 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:15:09,403 INFO L256 TraceCheckUtils]: 0: Hoare triple {47865#true} call ULTIMATE.init(); {47865#true} is VALID [2018-11-23 12:15:09,404 INFO L273 TraceCheckUtils]: 1: Hoare triple {47865#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {47865#true} is VALID [2018-11-23 12:15:09,404 INFO L273 TraceCheckUtils]: 2: Hoare triple {47865#true} assume true; {47865#true} is VALID [2018-11-23 12:15:09,404 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {47865#true} {47865#true} #78#return; {47865#true} is VALID [2018-11-23 12:15:09,404 INFO L256 TraceCheckUtils]: 4: Hoare triple {47865#true} call #t~ret12 := main(); {47865#true} is VALID [2018-11-23 12:15:09,404 INFO L273 TraceCheckUtils]: 5: Hoare triple {47865#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {47865#true} is VALID [2018-11-23 12:15:09,405 INFO L256 TraceCheckUtils]: 6: Hoare triple {47865#true} call init_nondet(~#x~0.base, ~#x~0.offset); {47865#true} is VALID [2018-11-23 12:15:09,405 INFO L273 TraceCheckUtils]: 7: Hoare triple {47865#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {47891#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:15:09,406 INFO L273 TraceCheckUtils]: 8: Hoare triple {47891#(<= init_nondet_~i~0 0)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {47891#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:15:09,406 INFO L273 TraceCheckUtils]: 9: Hoare triple {47891#(<= init_nondet_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47898#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:15:09,407 INFO L273 TraceCheckUtils]: 10: Hoare triple {47898#(<= init_nondet_~i~0 1)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {47898#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:15:09,407 INFO L273 TraceCheckUtils]: 11: Hoare triple {47898#(<= init_nondet_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47905#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:15:09,408 INFO L273 TraceCheckUtils]: 12: Hoare triple {47905#(<= init_nondet_~i~0 2)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {47905#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:15:09,408 INFO L273 TraceCheckUtils]: 13: Hoare triple {47905#(<= init_nondet_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47912#(<= init_nondet_~i~0 3)} is VALID [2018-11-23 12:15:09,408 INFO L273 TraceCheckUtils]: 14: Hoare triple {47912#(<= init_nondet_~i~0 3)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {47912#(<= init_nondet_~i~0 3)} is VALID [2018-11-23 12:15:09,409 INFO L273 TraceCheckUtils]: 15: Hoare triple {47912#(<= init_nondet_~i~0 3)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47919#(<= init_nondet_~i~0 4)} is VALID [2018-11-23 12:15:09,409 INFO L273 TraceCheckUtils]: 16: Hoare triple {47919#(<= init_nondet_~i~0 4)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {47919#(<= init_nondet_~i~0 4)} is VALID [2018-11-23 12:15:09,410 INFO L273 TraceCheckUtils]: 17: Hoare triple {47919#(<= init_nondet_~i~0 4)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47926#(<= init_nondet_~i~0 5)} is VALID [2018-11-23 12:15:09,410 INFO L273 TraceCheckUtils]: 18: Hoare triple {47926#(<= init_nondet_~i~0 5)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {47926#(<= init_nondet_~i~0 5)} is VALID [2018-11-23 12:15:09,411 INFO L273 TraceCheckUtils]: 19: Hoare triple {47926#(<= init_nondet_~i~0 5)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47933#(<= init_nondet_~i~0 6)} is VALID [2018-11-23 12:15:09,412 INFO L273 TraceCheckUtils]: 20: Hoare triple {47933#(<= init_nondet_~i~0 6)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {47933#(<= init_nondet_~i~0 6)} is VALID [2018-11-23 12:15:09,412 INFO L273 TraceCheckUtils]: 21: Hoare triple {47933#(<= init_nondet_~i~0 6)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47940#(<= init_nondet_~i~0 7)} is VALID [2018-11-23 12:15:09,413 INFO L273 TraceCheckUtils]: 22: Hoare triple {47940#(<= init_nondet_~i~0 7)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {47940#(<= init_nondet_~i~0 7)} is VALID [2018-11-23 12:15:09,414 INFO L273 TraceCheckUtils]: 23: Hoare triple {47940#(<= init_nondet_~i~0 7)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47947#(<= init_nondet_~i~0 8)} is VALID [2018-11-23 12:15:09,414 INFO L273 TraceCheckUtils]: 24: Hoare triple {47947#(<= init_nondet_~i~0 8)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {47947#(<= init_nondet_~i~0 8)} is VALID [2018-11-23 12:15:09,415 INFO L273 TraceCheckUtils]: 25: Hoare triple {47947#(<= init_nondet_~i~0 8)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47954#(<= init_nondet_~i~0 9)} is VALID [2018-11-23 12:15:09,415 INFO L273 TraceCheckUtils]: 26: Hoare triple {47954#(<= init_nondet_~i~0 9)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {47954#(<= init_nondet_~i~0 9)} is VALID [2018-11-23 12:15:09,416 INFO L273 TraceCheckUtils]: 27: Hoare triple {47954#(<= init_nondet_~i~0 9)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47961#(<= init_nondet_~i~0 10)} is VALID [2018-11-23 12:15:09,417 INFO L273 TraceCheckUtils]: 28: Hoare triple {47961#(<= init_nondet_~i~0 10)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {47961#(<= init_nondet_~i~0 10)} is VALID [2018-11-23 12:15:09,418 INFO L273 TraceCheckUtils]: 29: Hoare triple {47961#(<= init_nondet_~i~0 10)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47968#(<= init_nondet_~i~0 11)} is VALID [2018-11-23 12:15:09,418 INFO L273 TraceCheckUtils]: 30: Hoare triple {47968#(<= init_nondet_~i~0 11)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {47968#(<= init_nondet_~i~0 11)} is VALID [2018-11-23 12:15:09,419 INFO L273 TraceCheckUtils]: 31: Hoare triple {47968#(<= init_nondet_~i~0 11)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47975#(<= init_nondet_~i~0 12)} is VALID [2018-11-23 12:15:09,419 INFO L273 TraceCheckUtils]: 32: Hoare triple {47975#(<= init_nondet_~i~0 12)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {47975#(<= init_nondet_~i~0 12)} is VALID [2018-11-23 12:15:09,420 INFO L273 TraceCheckUtils]: 33: Hoare triple {47975#(<= init_nondet_~i~0 12)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47982#(<= init_nondet_~i~0 13)} is VALID [2018-11-23 12:15:09,421 INFO L273 TraceCheckUtils]: 34: Hoare triple {47982#(<= init_nondet_~i~0 13)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {47982#(<= init_nondet_~i~0 13)} is VALID [2018-11-23 12:15:09,421 INFO L273 TraceCheckUtils]: 35: Hoare triple {47982#(<= init_nondet_~i~0 13)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47989#(<= init_nondet_~i~0 14)} is VALID [2018-11-23 12:15:09,422 INFO L273 TraceCheckUtils]: 36: Hoare triple {47989#(<= init_nondet_~i~0 14)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {47989#(<= init_nondet_~i~0 14)} is VALID [2018-11-23 12:15:09,423 INFO L273 TraceCheckUtils]: 37: Hoare triple {47989#(<= init_nondet_~i~0 14)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47996#(<= init_nondet_~i~0 15)} is VALID [2018-11-23 12:15:09,423 INFO L273 TraceCheckUtils]: 38: Hoare triple {47996#(<= init_nondet_~i~0 15)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {47996#(<= init_nondet_~i~0 15)} is VALID [2018-11-23 12:15:09,424 INFO L273 TraceCheckUtils]: 39: Hoare triple {47996#(<= init_nondet_~i~0 15)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {48003#(<= init_nondet_~i~0 16)} is VALID [2018-11-23 12:15:09,425 INFO L273 TraceCheckUtils]: 40: Hoare triple {48003#(<= init_nondet_~i~0 16)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {48003#(<= init_nondet_~i~0 16)} is VALID [2018-11-23 12:15:09,426 INFO L273 TraceCheckUtils]: 41: Hoare triple {48003#(<= init_nondet_~i~0 16)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {48010#(<= init_nondet_~i~0 17)} is VALID [2018-11-23 12:15:09,426 INFO L273 TraceCheckUtils]: 42: Hoare triple {48010#(<= init_nondet_~i~0 17)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {48010#(<= init_nondet_~i~0 17)} is VALID [2018-11-23 12:15:09,427 INFO L273 TraceCheckUtils]: 43: Hoare triple {48010#(<= init_nondet_~i~0 17)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {48017#(<= init_nondet_~i~0 18)} is VALID [2018-11-23 12:15:09,428 INFO L273 TraceCheckUtils]: 44: Hoare triple {48017#(<= init_nondet_~i~0 18)} assume !(~i~0 < 40); {47866#false} is VALID [2018-11-23 12:15:09,428 INFO L273 TraceCheckUtils]: 45: Hoare triple {47866#false} assume true; {47866#false} is VALID [2018-11-23 12:15:09,428 INFO L268 TraceCheckUtils]: 46: Hoare quadruple {47866#false} {47865#true} #82#return; {47866#false} is VALID [2018-11-23 12:15:09,428 INFO L273 TraceCheckUtils]: 47: Hoare triple {47866#false} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {47866#false} is VALID [2018-11-23 12:15:09,428 INFO L256 TraceCheckUtils]: 48: Hoare triple {47866#false} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {47866#false} is VALID [2018-11-23 12:15:09,429 INFO L273 TraceCheckUtils]: 49: Hoare triple {47866#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {47866#false} is VALID [2018-11-23 12:15:09,429 INFO L273 TraceCheckUtils]: 50: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,429 INFO L273 TraceCheckUtils]: 51: Hoare triple {47866#false} assume !(~i~1 > 20); {47866#false} is VALID [2018-11-23 12:15:09,429 INFO L273 TraceCheckUtils]: 52: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,429 INFO L273 TraceCheckUtils]: 53: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,430 INFO L273 TraceCheckUtils]: 54: Hoare triple {47866#false} assume !(~i~1 > 20); {47866#false} is VALID [2018-11-23 12:15:09,430 INFO L273 TraceCheckUtils]: 55: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,430 INFO L273 TraceCheckUtils]: 56: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,430 INFO L273 TraceCheckUtils]: 57: Hoare triple {47866#false} assume !(~i~1 > 20); {47866#false} is VALID [2018-11-23 12:15:09,430 INFO L273 TraceCheckUtils]: 58: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,430 INFO L273 TraceCheckUtils]: 59: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,430 INFO L273 TraceCheckUtils]: 60: Hoare triple {47866#false} assume !(~i~1 > 20); {47866#false} is VALID [2018-11-23 12:15:09,431 INFO L273 TraceCheckUtils]: 61: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,431 INFO L273 TraceCheckUtils]: 62: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,431 INFO L273 TraceCheckUtils]: 63: Hoare triple {47866#false} assume !(~i~1 > 20); {47866#false} is VALID [2018-11-23 12:15:09,431 INFO L273 TraceCheckUtils]: 64: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,431 INFO L273 TraceCheckUtils]: 65: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,431 INFO L273 TraceCheckUtils]: 66: Hoare triple {47866#false} assume !(~i~1 > 20); {47866#false} is VALID [2018-11-23 12:15:09,431 INFO L273 TraceCheckUtils]: 67: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,431 INFO L273 TraceCheckUtils]: 68: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,431 INFO L273 TraceCheckUtils]: 69: Hoare triple {47866#false} assume !(~i~1 > 20); {47866#false} is VALID [2018-11-23 12:15:09,432 INFO L273 TraceCheckUtils]: 70: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,432 INFO L273 TraceCheckUtils]: 71: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,432 INFO L273 TraceCheckUtils]: 72: Hoare triple {47866#false} assume !(~i~1 > 20); {47866#false} is VALID [2018-11-23 12:15:09,432 INFO L273 TraceCheckUtils]: 73: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,432 INFO L273 TraceCheckUtils]: 74: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,432 INFO L273 TraceCheckUtils]: 75: Hoare triple {47866#false} assume !(~i~1 > 20); {47866#false} is VALID [2018-11-23 12:15:09,432 INFO L273 TraceCheckUtils]: 76: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,432 INFO L273 TraceCheckUtils]: 77: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,432 INFO L273 TraceCheckUtils]: 78: Hoare triple {47866#false} assume !(~i~1 > 20); {47866#false} is VALID [2018-11-23 12:15:09,432 INFO L273 TraceCheckUtils]: 79: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,433 INFO L273 TraceCheckUtils]: 80: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,433 INFO L273 TraceCheckUtils]: 81: Hoare triple {47866#false} assume !(~i~1 > 20); {47866#false} is VALID [2018-11-23 12:15:09,433 INFO L273 TraceCheckUtils]: 82: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,433 INFO L273 TraceCheckUtils]: 83: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,433 INFO L273 TraceCheckUtils]: 84: Hoare triple {47866#false} assume !(~i~1 > 20); {47866#false} is VALID [2018-11-23 12:15:09,433 INFO L273 TraceCheckUtils]: 85: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,433 INFO L273 TraceCheckUtils]: 86: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,433 INFO L273 TraceCheckUtils]: 87: Hoare triple {47866#false} assume !(~i~1 > 20); {47866#false} is VALID [2018-11-23 12:15:09,433 INFO L273 TraceCheckUtils]: 88: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,433 INFO L273 TraceCheckUtils]: 89: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,434 INFO L273 TraceCheckUtils]: 90: Hoare triple {47866#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {47866#false} is VALID [2018-11-23 12:15:09,434 INFO L273 TraceCheckUtils]: 91: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,434 INFO L273 TraceCheckUtils]: 92: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,434 INFO L273 TraceCheckUtils]: 93: Hoare triple {47866#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {47866#false} is VALID [2018-11-23 12:15:09,434 INFO L273 TraceCheckUtils]: 94: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,434 INFO L273 TraceCheckUtils]: 95: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,434 INFO L273 TraceCheckUtils]: 96: Hoare triple {47866#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {47866#false} is VALID [2018-11-23 12:15:09,434 INFO L273 TraceCheckUtils]: 97: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,434 INFO L273 TraceCheckUtils]: 98: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,435 INFO L273 TraceCheckUtils]: 99: Hoare triple {47866#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {47866#false} is VALID [2018-11-23 12:15:09,435 INFO L273 TraceCheckUtils]: 100: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,435 INFO L273 TraceCheckUtils]: 101: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,435 INFO L273 TraceCheckUtils]: 102: Hoare triple {47866#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {47866#false} is VALID [2018-11-23 12:15:09,435 INFO L273 TraceCheckUtils]: 103: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,435 INFO L273 TraceCheckUtils]: 104: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,435 INFO L273 TraceCheckUtils]: 105: Hoare triple {47866#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {47866#false} is VALID [2018-11-23 12:15:09,435 INFO L273 TraceCheckUtils]: 106: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,435 INFO L273 TraceCheckUtils]: 107: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,435 INFO L273 TraceCheckUtils]: 108: Hoare triple {47866#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {47866#false} is VALID [2018-11-23 12:15:09,436 INFO L273 TraceCheckUtils]: 109: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,436 INFO L273 TraceCheckUtils]: 110: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,436 INFO L273 TraceCheckUtils]: 111: Hoare triple {47866#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {47866#false} is VALID [2018-11-23 12:15:09,436 INFO L273 TraceCheckUtils]: 112: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,436 INFO L273 TraceCheckUtils]: 113: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,436 INFO L273 TraceCheckUtils]: 114: Hoare triple {47866#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {47866#false} is VALID [2018-11-23 12:15:09,436 INFO L273 TraceCheckUtils]: 115: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,436 INFO L273 TraceCheckUtils]: 116: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,436 INFO L273 TraceCheckUtils]: 117: Hoare triple {47866#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {47866#false} is VALID [2018-11-23 12:15:09,436 INFO L273 TraceCheckUtils]: 118: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,437 INFO L273 TraceCheckUtils]: 119: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,437 INFO L273 TraceCheckUtils]: 120: Hoare triple {47866#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {47866#false} is VALID [2018-11-23 12:15:09,437 INFO L273 TraceCheckUtils]: 121: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,437 INFO L273 TraceCheckUtils]: 122: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,437 INFO L273 TraceCheckUtils]: 123: Hoare triple {47866#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {47866#false} is VALID [2018-11-23 12:15:09,437 INFO L273 TraceCheckUtils]: 124: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,437 INFO L273 TraceCheckUtils]: 125: Hoare triple {47866#false} assume !(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,437 INFO L273 TraceCheckUtils]: 126: Hoare triple {47866#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {47866#false} is VALID [2018-11-23 12:15:09,437 INFO L273 TraceCheckUtils]: 127: Hoare triple {47866#false} assume true; {47866#false} is VALID [2018-11-23 12:15:09,438 INFO L268 TraceCheckUtils]: 128: Hoare quadruple {47866#false} {47866#false} #84#return; {47866#false} is VALID [2018-11-23 12:15:09,438 INFO L273 TraceCheckUtils]: 129: Hoare triple {47866#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {47866#false} is VALID [2018-11-23 12:15:09,438 INFO L256 TraceCheckUtils]: 130: Hoare triple {47866#false} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {47866#false} is VALID [2018-11-23 12:15:09,438 INFO L273 TraceCheckUtils]: 131: Hoare triple {47866#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {47866#false} is VALID [2018-11-23 12:15:09,438 INFO L273 TraceCheckUtils]: 132: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,438 INFO L273 TraceCheckUtils]: 133: Hoare triple {47866#false} assume !(~i~1 > 20); {47866#false} is VALID [2018-11-23 12:15:09,438 INFO L273 TraceCheckUtils]: 134: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,438 INFO L273 TraceCheckUtils]: 135: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,438 INFO L273 TraceCheckUtils]: 136: Hoare triple {47866#false} assume !(~i~1 > 20); {47866#false} is VALID [2018-11-23 12:15:09,438 INFO L273 TraceCheckUtils]: 137: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,439 INFO L273 TraceCheckUtils]: 138: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,439 INFO L273 TraceCheckUtils]: 139: Hoare triple {47866#false} assume !(~i~1 > 20); {47866#false} is VALID [2018-11-23 12:15:09,439 INFO L273 TraceCheckUtils]: 140: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,439 INFO L273 TraceCheckUtils]: 141: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,439 INFO L273 TraceCheckUtils]: 142: Hoare triple {47866#false} assume !(~i~1 > 20); {47866#false} is VALID [2018-11-23 12:15:09,439 INFO L273 TraceCheckUtils]: 143: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,439 INFO L273 TraceCheckUtils]: 144: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,439 INFO L273 TraceCheckUtils]: 145: Hoare triple {47866#false} assume !(~i~1 > 20); {47866#false} is VALID [2018-11-23 12:15:09,439 INFO L273 TraceCheckUtils]: 146: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,439 INFO L273 TraceCheckUtils]: 147: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,440 INFO L273 TraceCheckUtils]: 148: Hoare triple {47866#false} assume !(~i~1 > 20); {47866#false} is VALID [2018-11-23 12:15:09,440 INFO L273 TraceCheckUtils]: 149: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,440 INFO L273 TraceCheckUtils]: 150: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,440 INFO L273 TraceCheckUtils]: 151: Hoare triple {47866#false} assume !(~i~1 > 20); {47866#false} is VALID [2018-11-23 12:15:09,440 INFO L273 TraceCheckUtils]: 152: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,440 INFO L273 TraceCheckUtils]: 153: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,440 INFO L273 TraceCheckUtils]: 154: Hoare triple {47866#false} assume !(~i~1 > 20); {47866#false} is VALID [2018-11-23 12:15:09,440 INFO L273 TraceCheckUtils]: 155: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,440 INFO L273 TraceCheckUtils]: 156: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,440 INFO L273 TraceCheckUtils]: 157: Hoare triple {47866#false} assume !(~i~1 > 20); {47866#false} is VALID [2018-11-23 12:15:09,441 INFO L273 TraceCheckUtils]: 158: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,441 INFO L273 TraceCheckUtils]: 159: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,441 INFO L273 TraceCheckUtils]: 160: Hoare triple {47866#false} assume !(~i~1 > 20); {47866#false} is VALID [2018-11-23 12:15:09,441 INFO L273 TraceCheckUtils]: 161: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,441 INFO L273 TraceCheckUtils]: 162: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,441 INFO L273 TraceCheckUtils]: 163: Hoare triple {47866#false} assume !(~i~1 > 20); {47866#false} is VALID [2018-11-23 12:15:09,441 INFO L273 TraceCheckUtils]: 164: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,441 INFO L273 TraceCheckUtils]: 165: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,441 INFO L273 TraceCheckUtils]: 166: Hoare triple {47866#false} assume !(~i~1 > 20); {47866#false} is VALID [2018-11-23 12:15:09,441 INFO L273 TraceCheckUtils]: 167: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,442 INFO L273 TraceCheckUtils]: 168: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,442 INFO L273 TraceCheckUtils]: 169: Hoare triple {47866#false} assume !(~i~1 > 20); {47866#false} is VALID [2018-11-23 12:15:09,442 INFO L273 TraceCheckUtils]: 170: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,442 INFO L273 TraceCheckUtils]: 171: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,442 INFO L273 TraceCheckUtils]: 172: Hoare triple {47866#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {47866#false} is VALID [2018-11-23 12:15:09,442 INFO L273 TraceCheckUtils]: 173: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,442 INFO L273 TraceCheckUtils]: 174: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,442 INFO L273 TraceCheckUtils]: 175: Hoare triple {47866#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {47866#false} is VALID [2018-11-23 12:15:09,442 INFO L273 TraceCheckUtils]: 176: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,443 INFO L273 TraceCheckUtils]: 177: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,443 INFO L273 TraceCheckUtils]: 178: Hoare triple {47866#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {47866#false} is VALID [2018-11-23 12:15:09,443 INFO L273 TraceCheckUtils]: 179: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,443 INFO L273 TraceCheckUtils]: 180: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,443 INFO L273 TraceCheckUtils]: 181: Hoare triple {47866#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {47866#false} is VALID [2018-11-23 12:15:09,443 INFO L273 TraceCheckUtils]: 182: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,443 INFO L273 TraceCheckUtils]: 183: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,443 INFO L273 TraceCheckUtils]: 184: Hoare triple {47866#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {47866#false} is VALID [2018-11-23 12:15:09,443 INFO L273 TraceCheckUtils]: 185: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,443 INFO L273 TraceCheckUtils]: 186: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,444 INFO L273 TraceCheckUtils]: 187: Hoare triple {47866#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {47866#false} is VALID [2018-11-23 12:15:09,444 INFO L273 TraceCheckUtils]: 188: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,444 INFO L273 TraceCheckUtils]: 189: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,444 INFO L273 TraceCheckUtils]: 190: Hoare triple {47866#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {47866#false} is VALID [2018-11-23 12:15:09,444 INFO L273 TraceCheckUtils]: 191: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,444 INFO L273 TraceCheckUtils]: 192: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,444 INFO L273 TraceCheckUtils]: 193: Hoare triple {47866#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {47866#false} is VALID [2018-11-23 12:15:09,444 INFO L273 TraceCheckUtils]: 194: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,444 INFO L273 TraceCheckUtils]: 195: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,444 INFO L273 TraceCheckUtils]: 196: Hoare triple {47866#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {47866#false} is VALID [2018-11-23 12:15:09,445 INFO L273 TraceCheckUtils]: 197: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,445 INFO L273 TraceCheckUtils]: 198: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,445 INFO L273 TraceCheckUtils]: 199: Hoare triple {47866#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {47866#false} is VALID [2018-11-23 12:15:09,445 INFO L273 TraceCheckUtils]: 200: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,445 INFO L273 TraceCheckUtils]: 201: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,445 INFO L273 TraceCheckUtils]: 202: Hoare triple {47866#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {47866#false} is VALID [2018-11-23 12:15:09,445 INFO L273 TraceCheckUtils]: 203: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,445 INFO L273 TraceCheckUtils]: 204: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,445 INFO L273 TraceCheckUtils]: 205: Hoare triple {47866#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {47866#false} is VALID [2018-11-23 12:15:09,445 INFO L273 TraceCheckUtils]: 206: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,446 INFO L273 TraceCheckUtils]: 207: Hoare triple {47866#false} assume !(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,446 INFO L273 TraceCheckUtils]: 208: Hoare triple {47866#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {47866#false} is VALID [2018-11-23 12:15:09,446 INFO L273 TraceCheckUtils]: 209: Hoare triple {47866#false} assume true; {47866#false} is VALID [2018-11-23 12:15:09,446 INFO L268 TraceCheckUtils]: 210: Hoare quadruple {47866#false} {47866#false} #86#return; {47866#false} is VALID [2018-11-23 12:15:09,446 INFO L273 TraceCheckUtils]: 211: Hoare triple {47866#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {47866#false} is VALID [2018-11-23 12:15:09,446 INFO L273 TraceCheckUtils]: 212: Hoare triple {47866#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {47866#false} is VALID [2018-11-23 12:15:09,446 INFO L273 TraceCheckUtils]: 213: Hoare triple {47866#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {47866#false} is VALID [2018-11-23 12:15:09,446 INFO L273 TraceCheckUtils]: 214: Hoare triple {47866#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {47866#false} is VALID [2018-11-23 12:15:09,446 INFO L273 TraceCheckUtils]: 215: Hoare triple {47866#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {47866#false} is VALID [2018-11-23 12:15:09,446 INFO L273 TraceCheckUtils]: 216: Hoare triple {47866#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {47866#false} is VALID [2018-11-23 12:15:09,447 INFO L273 TraceCheckUtils]: 217: Hoare triple {47866#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {47866#false} is VALID [2018-11-23 12:15:09,447 INFO L273 TraceCheckUtils]: 218: Hoare triple {47866#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {47866#false} is VALID [2018-11-23 12:15:09,447 INFO L273 TraceCheckUtils]: 219: Hoare triple {47866#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {47866#false} is VALID [2018-11-23 12:15:09,447 INFO L273 TraceCheckUtils]: 220: Hoare triple {47866#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {47866#false} is VALID [2018-11-23 12:15:09,447 INFO L273 TraceCheckUtils]: 221: Hoare triple {47866#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {47866#false} is VALID [2018-11-23 12:15:09,447 INFO L273 TraceCheckUtils]: 222: Hoare triple {47866#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {47866#false} is VALID [2018-11-23 12:15:09,447 INFO L273 TraceCheckUtils]: 223: Hoare triple {47866#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {47866#false} is VALID [2018-11-23 12:15:09,447 INFO L273 TraceCheckUtils]: 224: Hoare triple {47866#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {47866#false} is VALID [2018-11-23 12:15:09,447 INFO L273 TraceCheckUtils]: 225: Hoare triple {47866#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {47866#false} is VALID [2018-11-23 12:15:09,447 INFO L273 TraceCheckUtils]: 226: Hoare triple {47866#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {47866#false} is VALID [2018-11-23 12:15:09,448 INFO L273 TraceCheckUtils]: 227: Hoare triple {47866#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {47866#false} is VALID [2018-11-23 12:15:09,448 INFO L273 TraceCheckUtils]: 228: Hoare triple {47866#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {47866#false} is VALID [2018-11-23 12:15:09,448 INFO L273 TraceCheckUtils]: 229: Hoare triple {47866#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {47866#false} is VALID [2018-11-23 12:15:09,448 INFO L273 TraceCheckUtils]: 230: Hoare triple {47866#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {47866#false} is VALID [2018-11-23 12:15:09,448 INFO L273 TraceCheckUtils]: 231: Hoare triple {47866#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {47866#false} is VALID [2018-11-23 12:15:09,448 INFO L273 TraceCheckUtils]: 232: Hoare triple {47866#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {47866#false} is VALID [2018-11-23 12:15:09,448 INFO L273 TraceCheckUtils]: 233: Hoare triple {47866#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {47866#false} is VALID [2018-11-23 12:15:09,448 INFO L273 TraceCheckUtils]: 234: Hoare triple {47866#false} assume !(~i~2 < 39); {47866#false} is VALID [2018-11-23 12:15:09,448 INFO L273 TraceCheckUtils]: 235: Hoare triple {47866#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {47866#false} is VALID [2018-11-23 12:15:09,448 INFO L256 TraceCheckUtils]: 236: Hoare triple {47866#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {47866#false} is VALID [2018-11-23 12:15:09,449 INFO L273 TraceCheckUtils]: 237: Hoare triple {47866#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {47866#false} is VALID [2018-11-23 12:15:09,449 INFO L273 TraceCheckUtils]: 238: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,449 INFO L273 TraceCheckUtils]: 239: Hoare triple {47866#false} assume !(~i~1 > 20); {47866#false} is VALID [2018-11-23 12:15:09,449 INFO L273 TraceCheckUtils]: 240: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,449 INFO L273 TraceCheckUtils]: 241: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,449 INFO L273 TraceCheckUtils]: 242: Hoare triple {47866#false} assume !(~i~1 > 20); {47866#false} is VALID [2018-11-23 12:15:09,449 INFO L273 TraceCheckUtils]: 243: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,449 INFO L273 TraceCheckUtils]: 244: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,449 INFO L273 TraceCheckUtils]: 245: Hoare triple {47866#false} assume !(~i~1 > 20); {47866#false} is VALID [2018-11-23 12:15:09,449 INFO L273 TraceCheckUtils]: 246: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,450 INFO L273 TraceCheckUtils]: 247: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,450 INFO L273 TraceCheckUtils]: 248: Hoare triple {47866#false} assume !(~i~1 > 20); {47866#false} is VALID [2018-11-23 12:15:09,450 INFO L273 TraceCheckUtils]: 249: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,450 INFO L273 TraceCheckUtils]: 250: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,450 INFO L273 TraceCheckUtils]: 251: Hoare triple {47866#false} assume !(~i~1 > 20); {47866#false} is VALID [2018-11-23 12:15:09,450 INFO L273 TraceCheckUtils]: 252: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,450 INFO L273 TraceCheckUtils]: 253: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,450 INFO L273 TraceCheckUtils]: 254: Hoare triple {47866#false} assume !(~i~1 > 20); {47866#false} is VALID [2018-11-23 12:15:09,450 INFO L273 TraceCheckUtils]: 255: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,450 INFO L273 TraceCheckUtils]: 256: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,451 INFO L273 TraceCheckUtils]: 257: Hoare triple {47866#false} assume !(~i~1 > 20); {47866#false} is VALID [2018-11-23 12:15:09,451 INFO L273 TraceCheckUtils]: 258: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,451 INFO L273 TraceCheckUtils]: 259: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,451 INFO L273 TraceCheckUtils]: 260: Hoare triple {47866#false} assume !(~i~1 > 20); {47866#false} is VALID [2018-11-23 12:15:09,451 INFO L273 TraceCheckUtils]: 261: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,451 INFO L273 TraceCheckUtils]: 262: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,451 INFO L273 TraceCheckUtils]: 263: Hoare triple {47866#false} assume !(~i~1 > 20); {47866#false} is VALID [2018-11-23 12:15:09,451 INFO L273 TraceCheckUtils]: 264: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,451 INFO L273 TraceCheckUtils]: 265: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,451 INFO L273 TraceCheckUtils]: 266: Hoare triple {47866#false} assume !(~i~1 > 20); {47866#false} is VALID [2018-11-23 12:15:09,452 INFO L273 TraceCheckUtils]: 267: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,452 INFO L273 TraceCheckUtils]: 268: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,452 INFO L273 TraceCheckUtils]: 269: Hoare triple {47866#false} assume !(~i~1 > 20); {47866#false} is VALID [2018-11-23 12:15:09,452 INFO L273 TraceCheckUtils]: 270: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,452 INFO L273 TraceCheckUtils]: 271: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,452 INFO L273 TraceCheckUtils]: 272: Hoare triple {47866#false} assume !(~i~1 > 20); {47866#false} is VALID [2018-11-23 12:15:09,452 INFO L273 TraceCheckUtils]: 273: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,452 INFO L273 TraceCheckUtils]: 274: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,452 INFO L273 TraceCheckUtils]: 275: Hoare triple {47866#false} assume !(~i~1 > 20); {47866#false} is VALID [2018-11-23 12:15:09,452 INFO L273 TraceCheckUtils]: 276: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,453 INFO L273 TraceCheckUtils]: 277: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,453 INFO L273 TraceCheckUtils]: 278: Hoare triple {47866#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {47866#false} is VALID [2018-11-23 12:15:09,453 INFO L273 TraceCheckUtils]: 279: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,453 INFO L273 TraceCheckUtils]: 280: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,453 INFO L273 TraceCheckUtils]: 281: Hoare triple {47866#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {47866#false} is VALID [2018-11-23 12:15:09,453 INFO L273 TraceCheckUtils]: 282: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,453 INFO L273 TraceCheckUtils]: 283: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,453 INFO L273 TraceCheckUtils]: 284: Hoare triple {47866#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {47866#false} is VALID [2018-11-23 12:15:09,453 INFO L273 TraceCheckUtils]: 285: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,453 INFO L273 TraceCheckUtils]: 286: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,454 INFO L273 TraceCheckUtils]: 287: Hoare triple {47866#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {47866#false} is VALID [2018-11-23 12:15:09,454 INFO L273 TraceCheckUtils]: 288: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,454 INFO L273 TraceCheckUtils]: 289: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,454 INFO L273 TraceCheckUtils]: 290: Hoare triple {47866#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {47866#false} is VALID [2018-11-23 12:15:09,454 INFO L273 TraceCheckUtils]: 291: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,454 INFO L273 TraceCheckUtils]: 292: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,454 INFO L273 TraceCheckUtils]: 293: Hoare triple {47866#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {47866#false} is VALID [2018-11-23 12:15:09,454 INFO L273 TraceCheckUtils]: 294: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,454 INFO L273 TraceCheckUtils]: 295: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,454 INFO L273 TraceCheckUtils]: 296: Hoare triple {47866#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {47866#false} is VALID [2018-11-23 12:15:09,455 INFO L273 TraceCheckUtils]: 297: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,455 INFO L273 TraceCheckUtils]: 298: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,455 INFO L273 TraceCheckUtils]: 299: Hoare triple {47866#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {47866#false} is VALID [2018-11-23 12:15:09,455 INFO L273 TraceCheckUtils]: 300: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,455 INFO L273 TraceCheckUtils]: 301: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,455 INFO L273 TraceCheckUtils]: 302: Hoare triple {47866#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {47866#false} is VALID [2018-11-23 12:15:09,455 INFO L273 TraceCheckUtils]: 303: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,455 INFO L273 TraceCheckUtils]: 304: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,455 INFO L273 TraceCheckUtils]: 305: Hoare triple {47866#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {47866#false} is VALID [2018-11-23 12:15:09,455 INFO L273 TraceCheckUtils]: 306: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,456 INFO L273 TraceCheckUtils]: 307: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,456 INFO L273 TraceCheckUtils]: 308: Hoare triple {47866#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {47866#false} is VALID [2018-11-23 12:15:09,456 INFO L273 TraceCheckUtils]: 309: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,456 INFO L273 TraceCheckUtils]: 310: Hoare triple {47866#false} assume !!(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,456 INFO L273 TraceCheckUtils]: 311: Hoare triple {47866#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {47866#false} is VALID [2018-11-23 12:15:09,456 INFO L273 TraceCheckUtils]: 312: Hoare triple {47866#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {47866#false} is VALID [2018-11-23 12:15:09,456 INFO L273 TraceCheckUtils]: 313: Hoare triple {47866#false} assume !(~i~1 < 40); {47866#false} is VALID [2018-11-23 12:15:09,456 INFO L273 TraceCheckUtils]: 314: Hoare triple {47866#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {47866#false} is VALID [2018-11-23 12:15:09,456 INFO L273 TraceCheckUtils]: 315: Hoare triple {47866#false} assume true; {47866#false} is VALID [2018-11-23 12:15:09,456 INFO L268 TraceCheckUtils]: 316: Hoare quadruple {47866#false} {47866#false} #88#return; {47866#false} is VALID [2018-11-23 12:15:09,457 INFO L273 TraceCheckUtils]: 317: Hoare triple {47866#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {47866#false} is VALID [2018-11-23 12:15:09,457 INFO L273 TraceCheckUtils]: 318: Hoare triple {47866#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {47866#false} is VALID [2018-11-23 12:15:09,457 INFO L273 TraceCheckUtils]: 319: Hoare triple {47866#false} assume !false; {47866#false} is VALID [2018-11-23 12:15:09,492 INFO L134 CoverageAnalysis]: Checked inductivity of 9010 backedges. 0 proven. 324 refuted. 0 times theorem prover too weak. 8686 trivial. 0 not checked. [2018-11-23 12:15:09,512 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:15:09,513 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [21] total 21 [2018-11-23 12:15:09,513 INFO L78 Accepts]: Start accepts. Automaton has 21 states. Word has length 320 [2018-11-23 12:15:09,513 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:15:09,514 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 21 states. [2018-11-23 12:15:09,597 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 71 edges. 71 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:15:09,597 INFO L459 AbstractCegarLoop]: Interpolant automaton has 21 states [2018-11-23 12:15:09,598 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2018-11-23 12:15:09,598 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=210, Invalid=210, Unknown=0, NotChecked=0, Total=420 [2018-11-23 12:15:09,598 INFO L87 Difference]: Start difference. First operand 161 states and 178 transitions. Second operand 21 states. [2018-11-23 12:15:09,927 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:09,927 INFO L93 Difference]: Finished difference Result 280 states and 314 transitions. [2018-11-23 12:15:09,927 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 21 states. [2018-11-23 12:15:09,927 INFO L78 Accepts]: Start accepts. Automaton has 21 states. Word has length 320 [2018-11-23 12:15:09,927 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:15:09,927 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 21 states. [2018-11-23 12:15:09,928 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 104 transitions. [2018-11-23 12:15:09,928 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 21 states. [2018-11-23 12:15:09,929 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 104 transitions. [2018-11-23 12:15:09,929 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 21 states and 104 transitions. [2018-11-23 12:15:10,022 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-23 12:15:10,026 INFO L225 Difference]: With dead ends: 280 [2018-11-23 12:15:10,026 INFO L226 Difference]: Without dead ends: 164 [2018-11-23 12:15:10,027 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 319 GetRequests, 300 SyntacticMatches, 0 SemanticMatches, 19 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=210, Invalid=210, Unknown=0, NotChecked=0, Total=420 [2018-11-23 12:15:10,027 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 164 states. [2018-11-23 12:15:10,181 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 164 to 163. [2018-11-23 12:15:10,181 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:15:10,181 INFO L82 GeneralOperation]: Start isEquivalent. First operand 164 states. Second operand 163 states. [2018-11-23 12:15:10,181 INFO L74 IsIncluded]: Start isIncluded. First operand 164 states. Second operand 163 states. [2018-11-23 12:15:10,181 INFO L87 Difference]: Start difference. First operand 164 states. Second operand 163 states. [2018-11-23 12:15:10,184 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:10,184 INFO L93 Difference]: Finished difference Result 164 states and 181 transitions. [2018-11-23 12:15:10,184 INFO L276 IsEmpty]: Start isEmpty. Operand 164 states and 181 transitions. [2018-11-23 12:15:10,185 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:15:10,185 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:15:10,185 INFO L74 IsIncluded]: Start isIncluded. First operand 163 states. Second operand 164 states. [2018-11-23 12:15:10,185 INFO L87 Difference]: Start difference. First operand 163 states. Second operand 164 states. [2018-11-23 12:15:10,187 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:10,187 INFO L93 Difference]: Finished difference Result 164 states and 181 transitions. [2018-11-23 12:15:10,187 INFO L276 IsEmpty]: Start isEmpty. Operand 164 states and 181 transitions. [2018-11-23 12:15:10,188 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:15:10,188 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:15:10,188 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:15:10,188 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:15:10,188 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 163 states. [2018-11-23 12:15:10,190 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 163 states to 163 states and 180 transitions. [2018-11-23 12:15:10,191 INFO L78 Accepts]: Start accepts. Automaton has 163 states and 180 transitions. Word has length 320 [2018-11-23 12:15:10,191 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:15:10,191 INFO L480 AbstractCegarLoop]: Abstraction has 163 states and 180 transitions. [2018-11-23 12:15:10,191 INFO L481 AbstractCegarLoop]: Interpolant automaton has 21 states. [2018-11-23 12:15:10,191 INFO L276 IsEmpty]: Start isEmpty. Operand 163 states and 180 transitions. [2018-11-23 12:15:10,193 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 323 [2018-11-23 12:15:10,193 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:15:10,193 INFO L402 BasicCegarLoop]: trace histogram [75, 75, 39, 36, 19, 19, 11, 11, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:15:10,194 INFO L423 AbstractCegarLoop]: === Iteration 50 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:15:10,194 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:15:10,194 INFO L82 PathProgramCache]: Analyzing trace with hash 1229895776, now seen corresponding path program 45 times [2018-11-23 12:15:10,194 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:15:10,194 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:15:10,195 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:15:10,195 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:15:10,195 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:15:10,210 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:15:10,210 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:15:10,210 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 51 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 51 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:15:10,230 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-23 12:15:11,819 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 13 check-sat command(s) [2018-11-23 12:15:11,819 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:15:11,872 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:15:11,875 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:15:12,282 INFO L256 TraceCheckUtils]: 0: Hoare triple {49794#true} call ULTIMATE.init(); {49794#true} is VALID [2018-11-23 12:15:12,283 INFO L273 TraceCheckUtils]: 1: Hoare triple {49794#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {49794#true} is VALID [2018-11-23 12:15:12,283 INFO L273 TraceCheckUtils]: 2: Hoare triple {49794#true} assume true; {49794#true} is VALID [2018-11-23 12:15:12,283 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {49794#true} {49794#true} #78#return; {49794#true} is VALID [2018-11-23 12:15:12,283 INFO L256 TraceCheckUtils]: 4: Hoare triple {49794#true} call #t~ret12 := main(); {49794#true} is VALID [2018-11-23 12:15:12,285 INFO L273 TraceCheckUtils]: 5: Hoare triple {49794#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {49814#(= |main_~#x~0.offset| 0)} is VALID [2018-11-23 12:15:12,285 INFO L256 TraceCheckUtils]: 6: Hoare triple {49814#(= |main_~#x~0.offset| 0)} call init_nondet(~#x~0.base, ~#x~0.offset); {49794#true} is VALID [2018-11-23 12:15:12,285 INFO L273 TraceCheckUtils]: 7: Hoare triple {49794#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {49794#true} is VALID [2018-11-23 12:15:12,285 INFO L273 TraceCheckUtils]: 8: Hoare triple {49794#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {49794#true} is VALID [2018-11-23 12:15:12,285 INFO L273 TraceCheckUtils]: 9: Hoare triple {49794#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49794#true} is VALID [2018-11-23 12:15:12,285 INFO L273 TraceCheckUtils]: 10: Hoare triple {49794#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {49794#true} is VALID [2018-11-23 12:15:12,285 INFO L273 TraceCheckUtils]: 11: Hoare triple {49794#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49794#true} is VALID [2018-11-23 12:15:12,285 INFO L273 TraceCheckUtils]: 12: Hoare triple {49794#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {49794#true} is VALID [2018-11-23 12:15:12,286 INFO L273 TraceCheckUtils]: 13: Hoare triple {49794#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49794#true} is VALID [2018-11-23 12:15:12,286 INFO L273 TraceCheckUtils]: 14: Hoare triple {49794#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {49794#true} is VALID [2018-11-23 12:15:12,286 INFO L273 TraceCheckUtils]: 15: Hoare triple {49794#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49794#true} is VALID [2018-11-23 12:15:12,286 INFO L273 TraceCheckUtils]: 16: Hoare triple {49794#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {49794#true} is VALID [2018-11-23 12:15:12,286 INFO L273 TraceCheckUtils]: 17: Hoare triple {49794#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49794#true} is VALID [2018-11-23 12:15:12,286 INFO L273 TraceCheckUtils]: 18: Hoare triple {49794#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {49794#true} is VALID [2018-11-23 12:15:12,286 INFO L273 TraceCheckUtils]: 19: Hoare triple {49794#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49794#true} is VALID [2018-11-23 12:15:12,286 INFO L273 TraceCheckUtils]: 20: Hoare triple {49794#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {49794#true} is VALID [2018-11-23 12:15:12,286 INFO L273 TraceCheckUtils]: 21: Hoare triple {49794#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49794#true} is VALID [2018-11-23 12:15:12,286 INFO L273 TraceCheckUtils]: 22: Hoare triple {49794#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {49794#true} is VALID [2018-11-23 12:15:12,287 INFO L273 TraceCheckUtils]: 23: Hoare triple {49794#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49794#true} is VALID [2018-11-23 12:15:12,287 INFO L273 TraceCheckUtils]: 24: Hoare triple {49794#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {49794#true} is VALID [2018-11-23 12:15:12,287 INFO L273 TraceCheckUtils]: 25: Hoare triple {49794#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49794#true} is VALID [2018-11-23 12:15:12,287 INFO L273 TraceCheckUtils]: 26: Hoare triple {49794#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {49794#true} is VALID [2018-11-23 12:15:12,287 INFO L273 TraceCheckUtils]: 27: Hoare triple {49794#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49794#true} is VALID [2018-11-23 12:15:12,287 INFO L273 TraceCheckUtils]: 28: Hoare triple {49794#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {49794#true} is VALID [2018-11-23 12:15:12,287 INFO L273 TraceCheckUtils]: 29: Hoare triple {49794#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49794#true} is VALID [2018-11-23 12:15:12,287 INFO L273 TraceCheckUtils]: 30: Hoare triple {49794#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {49794#true} is VALID [2018-11-23 12:15:12,287 INFO L273 TraceCheckUtils]: 31: Hoare triple {49794#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49794#true} is VALID [2018-11-23 12:15:12,288 INFO L273 TraceCheckUtils]: 32: Hoare triple {49794#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {49794#true} is VALID [2018-11-23 12:15:12,288 INFO L273 TraceCheckUtils]: 33: Hoare triple {49794#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49794#true} is VALID [2018-11-23 12:15:12,288 INFO L273 TraceCheckUtils]: 34: Hoare triple {49794#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {49794#true} is VALID [2018-11-23 12:15:12,288 INFO L273 TraceCheckUtils]: 35: Hoare triple {49794#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49794#true} is VALID [2018-11-23 12:15:12,288 INFO L273 TraceCheckUtils]: 36: Hoare triple {49794#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {49794#true} is VALID [2018-11-23 12:15:12,288 INFO L273 TraceCheckUtils]: 37: Hoare triple {49794#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49794#true} is VALID [2018-11-23 12:15:12,288 INFO L273 TraceCheckUtils]: 38: Hoare triple {49794#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {49794#true} is VALID [2018-11-23 12:15:12,288 INFO L273 TraceCheckUtils]: 39: Hoare triple {49794#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49794#true} is VALID [2018-11-23 12:15:12,288 INFO L273 TraceCheckUtils]: 40: Hoare triple {49794#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {49794#true} is VALID [2018-11-23 12:15:12,288 INFO L273 TraceCheckUtils]: 41: Hoare triple {49794#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49794#true} is VALID [2018-11-23 12:15:12,289 INFO L273 TraceCheckUtils]: 42: Hoare triple {49794#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {49794#true} is VALID [2018-11-23 12:15:12,289 INFO L273 TraceCheckUtils]: 43: Hoare triple {49794#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49794#true} is VALID [2018-11-23 12:15:12,289 INFO L273 TraceCheckUtils]: 44: Hoare triple {49794#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {49794#true} is VALID [2018-11-23 12:15:12,289 INFO L273 TraceCheckUtils]: 45: Hoare triple {49794#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49794#true} is VALID [2018-11-23 12:15:12,289 INFO L273 TraceCheckUtils]: 46: Hoare triple {49794#true} assume !(~i~0 < 40); {49794#true} is VALID [2018-11-23 12:15:12,289 INFO L273 TraceCheckUtils]: 47: Hoare triple {49794#true} assume true; {49794#true} is VALID [2018-11-23 12:15:12,290 INFO L268 TraceCheckUtils]: 48: Hoare quadruple {49794#true} {49814#(= |main_~#x~0.offset| 0)} #82#return; {49814#(= |main_~#x~0.offset| 0)} is VALID [2018-11-23 12:15:12,290 INFO L273 TraceCheckUtils]: 49: Hoare triple {49814#(= |main_~#x~0.offset| 0)} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {49814#(= |main_~#x~0.offset| 0)} is VALID [2018-11-23 12:15:12,290 INFO L256 TraceCheckUtils]: 50: Hoare triple {49814#(= |main_~#x~0.offset| 0)} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {49794#true} is VALID [2018-11-23 12:15:12,290 INFO L273 TraceCheckUtils]: 51: Hoare triple {49794#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {49794#true} is VALID [2018-11-23 12:15:12,290 INFO L273 TraceCheckUtils]: 52: Hoare triple {49794#true} assume !!(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,290 INFO L273 TraceCheckUtils]: 53: Hoare triple {49794#true} assume !(~i~1 > 20); {49794#true} is VALID [2018-11-23 12:15:12,291 INFO L273 TraceCheckUtils]: 54: Hoare triple {49794#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49794#true} is VALID [2018-11-23 12:15:12,291 INFO L273 TraceCheckUtils]: 55: Hoare triple {49794#true} assume !!(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,291 INFO L273 TraceCheckUtils]: 56: Hoare triple {49794#true} assume !(~i~1 > 20); {49794#true} is VALID [2018-11-23 12:15:12,291 INFO L273 TraceCheckUtils]: 57: Hoare triple {49794#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49794#true} is VALID [2018-11-23 12:15:12,291 INFO L273 TraceCheckUtils]: 58: Hoare triple {49794#true} assume !!(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,291 INFO L273 TraceCheckUtils]: 59: Hoare triple {49794#true} assume !(~i~1 > 20); {49794#true} is VALID [2018-11-23 12:15:12,291 INFO L273 TraceCheckUtils]: 60: Hoare triple {49794#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49794#true} is VALID [2018-11-23 12:15:12,291 INFO L273 TraceCheckUtils]: 61: Hoare triple {49794#true} assume !!(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,291 INFO L273 TraceCheckUtils]: 62: Hoare triple {49794#true} assume !(~i~1 > 20); {49794#true} is VALID [2018-11-23 12:15:12,291 INFO L273 TraceCheckUtils]: 63: Hoare triple {49794#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49794#true} is VALID [2018-11-23 12:15:12,292 INFO L273 TraceCheckUtils]: 64: Hoare triple {49794#true} assume !!(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,292 INFO L273 TraceCheckUtils]: 65: Hoare triple {49794#true} assume !(~i~1 > 20); {49794#true} is VALID [2018-11-23 12:15:12,292 INFO L273 TraceCheckUtils]: 66: Hoare triple {49794#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49794#true} is VALID [2018-11-23 12:15:12,292 INFO L273 TraceCheckUtils]: 67: Hoare triple {49794#true} assume !!(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,292 INFO L273 TraceCheckUtils]: 68: Hoare triple {49794#true} assume !(~i~1 > 20); {49794#true} is VALID [2018-11-23 12:15:12,292 INFO L273 TraceCheckUtils]: 69: Hoare triple {49794#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49794#true} is VALID [2018-11-23 12:15:12,292 INFO L273 TraceCheckUtils]: 70: Hoare triple {49794#true} assume !!(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,292 INFO L273 TraceCheckUtils]: 71: Hoare triple {49794#true} assume !(~i~1 > 20); {49794#true} is VALID [2018-11-23 12:15:12,292 INFO L273 TraceCheckUtils]: 72: Hoare triple {49794#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49794#true} is VALID [2018-11-23 12:15:12,293 INFO L273 TraceCheckUtils]: 73: Hoare triple {49794#true} assume !!(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,293 INFO L273 TraceCheckUtils]: 74: Hoare triple {49794#true} assume !(~i~1 > 20); {49794#true} is VALID [2018-11-23 12:15:12,293 INFO L273 TraceCheckUtils]: 75: Hoare triple {49794#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49794#true} is VALID [2018-11-23 12:15:12,293 INFO L273 TraceCheckUtils]: 76: Hoare triple {49794#true} assume !!(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,293 INFO L273 TraceCheckUtils]: 77: Hoare triple {49794#true} assume !(~i~1 > 20); {49794#true} is VALID [2018-11-23 12:15:12,293 INFO L273 TraceCheckUtils]: 78: Hoare triple {49794#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49794#true} is VALID [2018-11-23 12:15:12,293 INFO L273 TraceCheckUtils]: 79: Hoare triple {49794#true} assume !!(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,293 INFO L273 TraceCheckUtils]: 80: Hoare triple {49794#true} assume !(~i~1 > 20); {49794#true} is VALID [2018-11-23 12:15:12,293 INFO L273 TraceCheckUtils]: 81: Hoare triple {49794#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49794#true} is VALID [2018-11-23 12:15:12,293 INFO L273 TraceCheckUtils]: 82: Hoare triple {49794#true} assume !!(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,294 INFO L273 TraceCheckUtils]: 83: Hoare triple {49794#true} assume !(~i~1 > 20); {49794#true} is VALID [2018-11-23 12:15:12,294 INFO L273 TraceCheckUtils]: 84: Hoare triple {49794#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49794#true} is VALID [2018-11-23 12:15:12,294 INFO L273 TraceCheckUtils]: 85: Hoare triple {49794#true} assume !!(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,294 INFO L273 TraceCheckUtils]: 86: Hoare triple {49794#true} assume !(~i~1 > 20); {49794#true} is VALID [2018-11-23 12:15:12,294 INFO L273 TraceCheckUtils]: 87: Hoare triple {49794#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49794#true} is VALID [2018-11-23 12:15:12,294 INFO L273 TraceCheckUtils]: 88: Hoare triple {49794#true} assume !!(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,294 INFO L273 TraceCheckUtils]: 89: Hoare triple {49794#true} assume !(~i~1 > 20); {49794#true} is VALID [2018-11-23 12:15:12,294 INFO L273 TraceCheckUtils]: 90: Hoare triple {49794#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49794#true} is VALID [2018-11-23 12:15:12,294 INFO L273 TraceCheckUtils]: 91: Hoare triple {49794#true} assume !!(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,294 INFO L273 TraceCheckUtils]: 92: Hoare triple {49794#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {49794#true} is VALID [2018-11-23 12:15:12,295 INFO L273 TraceCheckUtils]: 93: Hoare triple {49794#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49794#true} is VALID [2018-11-23 12:15:12,295 INFO L273 TraceCheckUtils]: 94: Hoare triple {49794#true} assume !!(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,295 INFO L273 TraceCheckUtils]: 95: Hoare triple {49794#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {49794#true} is VALID [2018-11-23 12:15:12,295 INFO L273 TraceCheckUtils]: 96: Hoare triple {49794#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49794#true} is VALID [2018-11-23 12:15:12,295 INFO L273 TraceCheckUtils]: 97: Hoare triple {49794#true} assume !!(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,295 INFO L273 TraceCheckUtils]: 98: Hoare triple {49794#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {49794#true} is VALID [2018-11-23 12:15:12,295 INFO L273 TraceCheckUtils]: 99: Hoare triple {49794#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49794#true} is VALID [2018-11-23 12:15:12,295 INFO L273 TraceCheckUtils]: 100: Hoare triple {49794#true} assume !!(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,295 INFO L273 TraceCheckUtils]: 101: Hoare triple {49794#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {49794#true} is VALID [2018-11-23 12:15:12,295 INFO L273 TraceCheckUtils]: 102: Hoare triple {49794#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49794#true} is VALID [2018-11-23 12:15:12,296 INFO L273 TraceCheckUtils]: 103: Hoare triple {49794#true} assume !!(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,296 INFO L273 TraceCheckUtils]: 104: Hoare triple {49794#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {49794#true} is VALID [2018-11-23 12:15:12,296 INFO L273 TraceCheckUtils]: 105: Hoare triple {49794#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49794#true} is VALID [2018-11-23 12:15:12,296 INFO L273 TraceCheckUtils]: 106: Hoare triple {49794#true} assume !!(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,296 INFO L273 TraceCheckUtils]: 107: Hoare triple {49794#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {49794#true} is VALID [2018-11-23 12:15:12,296 INFO L273 TraceCheckUtils]: 108: Hoare triple {49794#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49794#true} is VALID [2018-11-23 12:15:12,296 INFO L273 TraceCheckUtils]: 109: Hoare triple {49794#true} assume !!(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,296 INFO L273 TraceCheckUtils]: 110: Hoare triple {49794#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {49794#true} is VALID [2018-11-23 12:15:12,296 INFO L273 TraceCheckUtils]: 111: Hoare triple {49794#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49794#true} is VALID [2018-11-23 12:15:12,296 INFO L273 TraceCheckUtils]: 112: Hoare triple {49794#true} assume !!(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,297 INFO L273 TraceCheckUtils]: 113: Hoare triple {49794#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {49794#true} is VALID [2018-11-23 12:15:12,297 INFO L273 TraceCheckUtils]: 114: Hoare triple {49794#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49794#true} is VALID [2018-11-23 12:15:12,297 INFO L273 TraceCheckUtils]: 115: Hoare triple {49794#true} assume !!(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,297 INFO L273 TraceCheckUtils]: 116: Hoare triple {49794#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {49794#true} is VALID [2018-11-23 12:15:12,297 INFO L273 TraceCheckUtils]: 117: Hoare triple {49794#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49794#true} is VALID [2018-11-23 12:15:12,297 INFO L273 TraceCheckUtils]: 118: Hoare triple {49794#true} assume !!(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,297 INFO L273 TraceCheckUtils]: 119: Hoare triple {49794#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {49794#true} is VALID [2018-11-23 12:15:12,297 INFO L273 TraceCheckUtils]: 120: Hoare triple {49794#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49794#true} is VALID [2018-11-23 12:15:12,297 INFO L273 TraceCheckUtils]: 121: Hoare triple {49794#true} assume !!(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,297 INFO L273 TraceCheckUtils]: 122: Hoare triple {49794#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {49794#true} is VALID [2018-11-23 12:15:12,298 INFO L273 TraceCheckUtils]: 123: Hoare triple {49794#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49794#true} is VALID [2018-11-23 12:15:12,298 INFO L273 TraceCheckUtils]: 124: Hoare triple {49794#true} assume !!(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,298 INFO L273 TraceCheckUtils]: 125: Hoare triple {49794#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {49794#true} is VALID [2018-11-23 12:15:12,298 INFO L273 TraceCheckUtils]: 126: Hoare triple {49794#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49794#true} is VALID [2018-11-23 12:15:12,298 INFO L273 TraceCheckUtils]: 127: Hoare triple {49794#true} assume !(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,298 INFO L273 TraceCheckUtils]: 128: Hoare triple {49794#true} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {49794#true} is VALID [2018-11-23 12:15:12,298 INFO L273 TraceCheckUtils]: 129: Hoare triple {49794#true} assume true; {49794#true} is VALID [2018-11-23 12:15:12,299 INFO L268 TraceCheckUtils]: 130: Hoare quadruple {49794#true} {49814#(= |main_~#x~0.offset| 0)} #84#return; {49814#(= |main_~#x~0.offset| 0)} is VALID [2018-11-23 12:15:12,299 INFO L273 TraceCheckUtils]: 131: Hoare triple {49814#(= |main_~#x~0.offset| 0)} 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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {49814#(= |main_~#x~0.offset| 0)} is VALID [2018-11-23 12:15:12,299 INFO L256 TraceCheckUtils]: 132: Hoare triple {49814#(= |main_~#x~0.offset| 0)} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {49794#true} is VALID [2018-11-23 12:15:12,299 INFO L273 TraceCheckUtils]: 133: Hoare triple {49794#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {49794#true} is VALID [2018-11-23 12:15:12,299 INFO L273 TraceCheckUtils]: 134: Hoare triple {49794#true} assume !!(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,300 INFO L273 TraceCheckUtils]: 135: Hoare triple {49794#true} assume !(~i~1 > 20); {49794#true} is VALID [2018-11-23 12:15:12,300 INFO L273 TraceCheckUtils]: 136: Hoare triple {49794#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49794#true} is VALID [2018-11-23 12:15:12,300 INFO L273 TraceCheckUtils]: 137: Hoare triple {49794#true} assume !!(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,300 INFO L273 TraceCheckUtils]: 138: Hoare triple {49794#true} assume !(~i~1 > 20); {49794#true} is VALID [2018-11-23 12:15:12,300 INFO L273 TraceCheckUtils]: 139: Hoare triple {49794#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49794#true} is VALID [2018-11-23 12:15:12,300 INFO L273 TraceCheckUtils]: 140: Hoare triple {49794#true} assume !!(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,300 INFO L273 TraceCheckUtils]: 141: Hoare triple {49794#true} assume !(~i~1 > 20); {49794#true} is VALID [2018-11-23 12:15:12,300 INFO L273 TraceCheckUtils]: 142: Hoare triple {49794#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49794#true} is VALID [2018-11-23 12:15:12,300 INFO L273 TraceCheckUtils]: 143: Hoare triple {49794#true} assume !!(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,300 INFO L273 TraceCheckUtils]: 144: Hoare triple {49794#true} assume !(~i~1 > 20); {49794#true} is VALID [2018-11-23 12:15:12,301 INFO L273 TraceCheckUtils]: 145: Hoare triple {49794#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49794#true} is VALID [2018-11-23 12:15:12,301 INFO L273 TraceCheckUtils]: 146: Hoare triple {49794#true} assume !!(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,301 INFO L273 TraceCheckUtils]: 147: Hoare triple {49794#true} assume !(~i~1 > 20); {49794#true} is VALID [2018-11-23 12:15:12,301 INFO L273 TraceCheckUtils]: 148: Hoare triple {49794#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49794#true} is VALID [2018-11-23 12:15:12,301 INFO L273 TraceCheckUtils]: 149: Hoare triple {49794#true} assume !!(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,301 INFO L273 TraceCheckUtils]: 150: Hoare triple {49794#true} assume !(~i~1 > 20); {49794#true} is VALID [2018-11-23 12:15:12,301 INFO L273 TraceCheckUtils]: 151: Hoare triple {49794#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49794#true} is VALID [2018-11-23 12:15:12,301 INFO L273 TraceCheckUtils]: 152: Hoare triple {49794#true} assume !!(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,301 INFO L273 TraceCheckUtils]: 153: Hoare triple {49794#true} assume !(~i~1 > 20); {49794#true} is VALID [2018-11-23 12:15:12,301 INFO L273 TraceCheckUtils]: 154: Hoare triple {49794#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49794#true} is VALID [2018-11-23 12:15:12,302 INFO L273 TraceCheckUtils]: 155: Hoare triple {49794#true} assume !!(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,302 INFO L273 TraceCheckUtils]: 156: Hoare triple {49794#true} assume !(~i~1 > 20); {49794#true} is VALID [2018-11-23 12:15:12,302 INFO L273 TraceCheckUtils]: 157: Hoare triple {49794#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49794#true} is VALID [2018-11-23 12:15:12,302 INFO L273 TraceCheckUtils]: 158: Hoare triple {49794#true} assume !!(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,302 INFO L273 TraceCheckUtils]: 159: Hoare triple {49794#true} assume !(~i~1 > 20); {49794#true} is VALID [2018-11-23 12:15:12,302 INFO L273 TraceCheckUtils]: 160: Hoare triple {49794#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49794#true} is VALID [2018-11-23 12:15:12,302 INFO L273 TraceCheckUtils]: 161: Hoare triple {49794#true} assume !!(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,302 INFO L273 TraceCheckUtils]: 162: Hoare triple {49794#true} assume !(~i~1 > 20); {49794#true} is VALID [2018-11-23 12:15:12,302 INFO L273 TraceCheckUtils]: 163: Hoare triple {49794#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49794#true} is VALID [2018-11-23 12:15:12,303 INFO L273 TraceCheckUtils]: 164: Hoare triple {49794#true} assume !!(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,303 INFO L273 TraceCheckUtils]: 165: Hoare triple {49794#true} assume !(~i~1 > 20); {49794#true} is VALID [2018-11-23 12:15:12,303 INFO L273 TraceCheckUtils]: 166: Hoare triple {49794#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49794#true} is VALID [2018-11-23 12:15:12,303 INFO L273 TraceCheckUtils]: 167: Hoare triple {49794#true} assume !!(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,303 INFO L273 TraceCheckUtils]: 168: Hoare triple {49794#true} assume !(~i~1 > 20); {49794#true} is VALID [2018-11-23 12:15:12,303 INFO L273 TraceCheckUtils]: 169: Hoare triple {49794#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49794#true} is VALID [2018-11-23 12:15:12,303 INFO L273 TraceCheckUtils]: 170: Hoare triple {49794#true} assume !!(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,303 INFO L273 TraceCheckUtils]: 171: Hoare triple {49794#true} assume !(~i~1 > 20); {49794#true} is VALID [2018-11-23 12:15:12,303 INFO L273 TraceCheckUtils]: 172: Hoare triple {49794#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49794#true} is VALID [2018-11-23 12:15:12,303 INFO L273 TraceCheckUtils]: 173: Hoare triple {49794#true} assume !!(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,304 INFO L273 TraceCheckUtils]: 174: Hoare triple {49794#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {49794#true} is VALID [2018-11-23 12:15:12,304 INFO L273 TraceCheckUtils]: 175: Hoare triple {49794#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49794#true} is VALID [2018-11-23 12:15:12,304 INFO L273 TraceCheckUtils]: 176: Hoare triple {49794#true} assume !!(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,304 INFO L273 TraceCheckUtils]: 177: Hoare triple {49794#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {49794#true} is VALID [2018-11-23 12:15:12,304 INFO L273 TraceCheckUtils]: 178: Hoare triple {49794#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49794#true} is VALID [2018-11-23 12:15:12,304 INFO L273 TraceCheckUtils]: 179: Hoare triple {49794#true} assume !!(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,304 INFO L273 TraceCheckUtils]: 180: Hoare triple {49794#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {49794#true} is VALID [2018-11-23 12:15:12,304 INFO L273 TraceCheckUtils]: 181: Hoare triple {49794#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49794#true} is VALID [2018-11-23 12:15:12,304 INFO L273 TraceCheckUtils]: 182: Hoare triple {49794#true} assume !!(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,304 INFO L273 TraceCheckUtils]: 183: Hoare triple {49794#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {49794#true} is VALID [2018-11-23 12:15:12,305 INFO L273 TraceCheckUtils]: 184: Hoare triple {49794#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49794#true} is VALID [2018-11-23 12:15:12,305 INFO L273 TraceCheckUtils]: 185: Hoare triple {49794#true} assume !!(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,305 INFO L273 TraceCheckUtils]: 186: Hoare triple {49794#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {49794#true} is VALID [2018-11-23 12:15:12,305 INFO L273 TraceCheckUtils]: 187: Hoare triple {49794#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49794#true} is VALID [2018-11-23 12:15:12,305 INFO L273 TraceCheckUtils]: 188: Hoare triple {49794#true} assume !!(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,305 INFO L273 TraceCheckUtils]: 189: Hoare triple {49794#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {49794#true} is VALID [2018-11-23 12:15:12,305 INFO L273 TraceCheckUtils]: 190: Hoare triple {49794#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49794#true} is VALID [2018-11-23 12:15:12,305 INFO L273 TraceCheckUtils]: 191: Hoare triple {49794#true} assume !!(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,305 INFO L273 TraceCheckUtils]: 192: Hoare triple {49794#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {49794#true} is VALID [2018-11-23 12:15:12,305 INFO L273 TraceCheckUtils]: 193: Hoare triple {49794#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49794#true} is VALID [2018-11-23 12:15:12,306 INFO L273 TraceCheckUtils]: 194: Hoare triple {49794#true} assume !!(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,306 INFO L273 TraceCheckUtils]: 195: Hoare triple {49794#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {49794#true} is VALID [2018-11-23 12:15:12,306 INFO L273 TraceCheckUtils]: 196: Hoare triple {49794#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49794#true} is VALID [2018-11-23 12:15:12,306 INFO L273 TraceCheckUtils]: 197: Hoare triple {49794#true} assume !!(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,306 INFO L273 TraceCheckUtils]: 198: Hoare triple {49794#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {49794#true} is VALID [2018-11-23 12:15:12,306 INFO L273 TraceCheckUtils]: 199: Hoare triple {49794#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49794#true} is VALID [2018-11-23 12:15:12,306 INFO L273 TraceCheckUtils]: 200: Hoare triple {49794#true} assume !!(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,306 INFO L273 TraceCheckUtils]: 201: Hoare triple {49794#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {49794#true} is VALID [2018-11-23 12:15:12,306 INFO L273 TraceCheckUtils]: 202: Hoare triple {49794#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49794#true} is VALID [2018-11-23 12:15:12,306 INFO L273 TraceCheckUtils]: 203: Hoare triple {49794#true} assume !!(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,307 INFO L273 TraceCheckUtils]: 204: Hoare triple {49794#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {49794#true} is VALID [2018-11-23 12:15:12,307 INFO L273 TraceCheckUtils]: 205: Hoare triple {49794#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49794#true} is VALID [2018-11-23 12:15:12,307 INFO L273 TraceCheckUtils]: 206: Hoare triple {49794#true} assume !!(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,307 INFO L273 TraceCheckUtils]: 207: Hoare triple {49794#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {49794#true} is VALID [2018-11-23 12:15:12,307 INFO L273 TraceCheckUtils]: 208: Hoare triple {49794#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49794#true} is VALID [2018-11-23 12:15:12,307 INFO L273 TraceCheckUtils]: 209: Hoare triple {49794#true} assume !(~i~1 < 40); {49794#true} is VALID [2018-11-23 12:15:12,307 INFO L273 TraceCheckUtils]: 210: Hoare triple {49794#true} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {49794#true} is VALID [2018-11-23 12:15:12,307 INFO L273 TraceCheckUtils]: 211: Hoare triple {49794#true} assume true; {49794#true} is VALID [2018-11-23 12:15:12,308 INFO L268 TraceCheckUtils]: 212: Hoare quadruple {49794#true} {49814#(= |main_~#x~0.offset| 0)} #86#return; {49814#(= |main_~#x~0.offset| 0)} is VALID [2018-11-23 12:15:12,309 INFO L273 TraceCheckUtils]: 213: Hoare triple {49814#(= |main_~#x~0.offset| 0)} 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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {50439#(and (<= main_~i~2 0) (= |main_~#x~0.offset| 0))} is VALID [2018-11-23 12:15:12,309 INFO L273 TraceCheckUtils]: 214: Hoare triple {50439#(and (<= main_~i~2 0) (= |main_~#x~0.offset| 0))} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {50439#(and (<= main_~i~2 0) (= |main_~#x~0.offset| 0))} is VALID [2018-11-23 12:15:12,311 INFO L273 TraceCheckUtils]: 215: Hoare triple {50439#(and (<= main_~i~2 0) (= |main_~#x~0.offset| 0))} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {50446#(and (= |main_~#x~0.offset| 0) (<= main_~i~2 1))} is VALID [2018-11-23 12:15:12,311 INFO L273 TraceCheckUtils]: 216: Hoare triple {50446#(and (= |main_~#x~0.offset| 0) (<= main_~i~2 1))} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {50446#(and (= |main_~#x~0.offset| 0) (<= main_~i~2 1))} is VALID [2018-11-23 12:15:12,312 INFO L273 TraceCheckUtils]: 217: Hoare triple {50446#(and (= |main_~#x~0.offset| 0) (<= main_~i~2 1))} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {50453#(and (= |main_~#x~0.offset| 0) (<= main_~i~2 2))} is VALID [2018-11-23 12:15:12,312 INFO L273 TraceCheckUtils]: 218: Hoare triple {50453#(and (= |main_~#x~0.offset| 0) (<= main_~i~2 2))} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {50453#(and (= |main_~#x~0.offset| 0) (<= main_~i~2 2))} is VALID [2018-11-23 12:15:12,313 INFO L273 TraceCheckUtils]: 219: Hoare triple {50453#(and (= |main_~#x~0.offset| 0) (<= main_~i~2 2))} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {50460#(and (<= main_~i~2 3) (= |main_~#x~0.offset| 0))} is VALID [2018-11-23 12:15:12,313 INFO L273 TraceCheckUtils]: 220: Hoare triple {50460#(and (<= main_~i~2 3) (= |main_~#x~0.offset| 0))} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {50460#(and (<= main_~i~2 3) (= |main_~#x~0.offset| 0))} is VALID [2018-11-23 12:15:12,317 INFO L273 TraceCheckUtils]: 221: Hoare triple {50460#(and (<= main_~i~2 3) (= |main_~#x~0.offset| 0))} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {50467#(and (= |main_~#x~0.offset| 0) (<= main_~i~2 4))} is VALID [2018-11-23 12:15:12,318 INFO L273 TraceCheckUtils]: 222: Hoare triple {50467#(and (= |main_~#x~0.offset| 0) (<= main_~i~2 4))} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {50467#(and (= |main_~#x~0.offset| 0) (<= main_~i~2 4))} is VALID [2018-11-23 12:15:12,318 INFO L273 TraceCheckUtils]: 223: Hoare triple {50467#(and (= |main_~#x~0.offset| 0) (<= main_~i~2 4))} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {50474#(and (<= main_~i~2 5) (= |main_~#x~0.offset| 0))} is VALID [2018-11-23 12:15:12,319 INFO L273 TraceCheckUtils]: 224: Hoare triple {50474#(and (<= main_~i~2 5) (= |main_~#x~0.offset| 0))} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {50474#(and (<= main_~i~2 5) (= |main_~#x~0.offset| 0))} is VALID [2018-11-23 12:15:12,319 INFO L273 TraceCheckUtils]: 225: Hoare triple {50474#(and (<= main_~i~2 5) (= |main_~#x~0.offset| 0))} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {50481#(and (<= main_~i~2 6) (= |main_~#x~0.offset| 0))} is VALID [2018-11-23 12:15:12,320 INFO L273 TraceCheckUtils]: 226: Hoare triple {50481#(and (<= main_~i~2 6) (= |main_~#x~0.offset| 0))} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {50481#(and (<= main_~i~2 6) (= |main_~#x~0.offset| 0))} is VALID [2018-11-23 12:15:12,320 INFO L273 TraceCheckUtils]: 227: Hoare triple {50481#(and (<= main_~i~2 6) (= |main_~#x~0.offset| 0))} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {50488#(and (<= main_~i~2 7) (= |main_~#x~0.offset| 0))} is VALID [2018-11-23 12:15:12,321 INFO L273 TraceCheckUtils]: 228: Hoare triple {50488#(and (<= main_~i~2 7) (= |main_~#x~0.offset| 0))} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {50488#(and (<= main_~i~2 7) (= |main_~#x~0.offset| 0))} is VALID [2018-11-23 12:15:12,322 INFO L273 TraceCheckUtils]: 229: Hoare triple {50488#(and (<= main_~i~2 7) (= |main_~#x~0.offset| 0))} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {50495#(and (<= main_~i~2 8) (= |main_~#x~0.offset| 0))} is VALID [2018-11-23 12:15:12,322 INFO L273 TraceCheckUtils]: 230: Hoare triple {50495#(and (<= main_~i~2 8) (= |main_~#x~0.offset| 0))} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {50495#(and (<= main_~i~2 8) (= |main_~#x~0.offset| 0))} is VALID [2018-11-23 12:15:12,323 INFO L273 TraceCheckUtils]: 231: Hoare triple {50495#(and (<= main_~i~2 8) (= |main_~#x~0.offset| 0))} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {50502#(and (<= main_~i~2 9) (= |main_~#x~0.offset| 0))} is VALID [2018-11-23 12:15:12,324 INFO L273 TraceCheckUtils]: 232: Hoare triple {50502#(and (<= main_~i~2 9) (= |main_~#x~0.offset| 0))} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {50502#(and (<= main_~i~2 9) (= |main_~#x~0.offset| 0))} is VALID [2018-11-23 12:15:12,325 INFO L273 TraceCheckUtils]: 233: Hoare triple {50502#(and (<= main_~i~2 9) (= |main_~#x~0.offset| 0))} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {50509#(and (<= main_~i~2 10) (= |main_~#x~0.offset| 0))} is VALID [2018-11-23 12:15:12,326 INFO L273 TraceCheckUtils]: 234: Hoare triple {50509#(and (<= main_~i~2 10) (= |main_~#x~0.offset| 0))} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {50509#(and (<= main_~i~2 10) (= |main_~#x~0.offset| 0))} is VALID [2018-11-23 12:15:12,326 INFO L273 TraceCheckUtils]: 235: Hoare triple {50509#(and (<= main_~i~2 10) (= |main_~#x~0.offset| 0))} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {50516#(and (= |main_~#x~0.offset| 0) (<= main_~i~2 11))} is VALID [2018-11-23 12:15:12,327 INFO L273 TraceCheckUtils]: 236: Hoare triple {50516#(and (= |main_~#x~0.offset| 0) (<= main_~i~2 11))} assume !(~i~2 < 39); {49795#false} is VALID [2018-11-23 12:15:12,327 INFO L273 TraceCheckUtils]: 237: Hoare triple {49795#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {49795#false} is VALID [2018-11-23 12:15:12,327 INFO L256 TraceCheckUtils]: 238: Hoare triple {49795#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {49795#false} is VALID [2018-11-23 12:15:12,328 INFO L273 TraceCheckUtils]: 239: Hoare triple {49795#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {49795#false} is VALID [2018-11-23 12:15:12,328 INFO L273 TraceCheckUtils]: 240: Hoare triple {49795#false} assume !!(~i~1 < 40); {49795#false} is VALID [2018-11-23 12:15:12,328 INFO L273 TraceCheckUtils]: 241: Hoare triple {49795#false} assume !(~i~1 > 20); {49795#false} is VALID [2018-11-23 12:15:12,328 INFO L273 TraceCheckUtils]: 242: Hoare triple {49795#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49795#false} is VALID [2018-11-23 12:15:12,328 INFO L273 TraceCheckUtils]: 243: Hoare triple {49795#false} assume !!(~i~1 < 40); {49795#false} is VALID [2018-11-23 12:15:12,328 INFO L273 TraceCheckUtils]: 244: Hoare triple {49795#false} assume !(~i~1 > 20); {49795#false} is VALID [2018-11-23 12:15:12,329 INFO L273 TraceCheckUtils]: 245: Hoare triple {49795#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49795#false} is VALID [2018-11-23 12:15:12,329 INFO L273 TraceCheckUtils]: 246: Hoare triple {49795#false} assume !!(~i~1 < 40); {49795#false} is VALID [2018-11-23 12:15:12,329 INFO L273 TraceCheckUtils]: 247: Hoare triple {49795#false} assume !(~i~1 > 20); {49795#false} is VALID [2018-11-23 12:15:12,329 INFO L273 TraceCheckUtils]: 248: Hoare triple {49795#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49795#false} is VALID [2018-11-23 12:15:12,329 INFO L273 TraceCheckUtils]: 249: Hoare triple {49795#false} assume !!(~i~1 < 40); {49795#false} is VALID [2018-11-23 12:15:12,329 INFO L273 TraceCheckUtils]: 250: Hoare triple {49795#false} assume !(~i~1 > 20); {49795#false} is VALID [2018-11-23 12:15:12,330 INFO L273 TraceCheckUtils]: 251: Hoare triple {49795#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49795#false} is VALID [2018-11-23 12:15:12,330 INFO L273 TraceCheckUtils]: 252: Hoare triple {49795#false} assume !!(~i~1 < 40); {49795#false} is VALID [2018-11-23 12:15:12,330 INFO L273 TraceCheckUtils]: 253: Hoare triple {49795#false} assume !(~i~1 > 20); {49795#false} is VALID [2018-11-23 12:15:12,330 INFO L273 TraceCheckUtils]: 254: Hoare triple {49795#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49795#false} is VALID [2018-11-23 12:15:12,330 INFO L273 TraceCheckUtils]: 255: Hoare triple {49795#false} assume !!(~i~1 < 40); {49795#false} is VALID [2018-11-23 12:15:12,330 INFO L273 TraceCheckUtils]: 256: Hoare triple {49795#false} assume !(~i~1 > 20); {49795#false} is VALID [2018-11-23 12:15:12,330 INFO L273 TraceCheckUtils]: 257: Hoare triple {49795#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49795#false} is VALID [2018-11-23 12:15:12,330 INFO L273 TraceCheckUtils]: 258: Hoare triple {49795#false} assume !!(~i~1 < 40); {49795#false} is VALID [2018-11-23 12:15:12,330 INFO L273 TraceCheckUtils]: 259: Hoare triple {49795#false} assume !(~i~1 > 20); {49795#false} is VALID [2018-11-23 12:15:12,331 INFO L273 TraceCheckUtils]: 260: Hoare triple {49795#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49795#false} is VALID [2018-11-23 12:15:12,331 INFO L273 TraceCheckUtils]: 261: Hoare triple {49795#false} assume !!(~i~1 < 40); {49795#false} is VALID [2018-11-23 12:15:12,331 INFO L273 TraceCheckUtils]: 262: Hoare triple {49795#false} assume !(~i~1 > 20); {49795#false} is VALID [2018-11-23 12:15:12,331 INFO L273 TraceCheckUtils]: 263: Hoare triple {49795#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49795#false} is VALID [2018-11-23 12:15:12,331 INFO L273 TraceCheckUtils]: 264: Hoare triple {49795#false} assume !!(~i~1 < 40); {49795#false} is VALID [2018-11-23 12:15:12,331 INFO L273 TraceCheckUtils]: 265: Hoare triple {49795#false} assume !(~i~1 > 20); {49795#false} is VALID [2018-11-23 12:15:12,331 INFO L273 TraceCheckUtils]: 266: Hoare triple {49795#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49795#false} is VALID [2018-11-23 12:15:12,331 INFO L273 TraceCheckUtils]: 267: Hoare triple {49795#false} assume !!(~i~1 < 40); {49795#false} is VALID [2018-11-23 12:15:12,331 INFO L273 TraceCheckUtils]: 268: Hoare triple {49795#false} assume !(~i~1 > 20); {49795#false} is VALID [2018-11-23 12:15:12,332 INFO L273 TraceCheckUtils]: 269: Hoare triple {49795#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49795#false} is VALID [2018-11-23 12:15:12,332 INFO L273 TraceCheckUtils]: 270: Hoare triple {49795#false} assume !!(~i~1 < 40); {49795#false} is VALID [2018-11-23 12:15:12,332 INFO L273 TraceCheckUtils]: 271: Hoare triple {49795#false} assume !(~i~1 > 20); {49795#false} is VALID [2018-11-23 12:15:12,332 INFO L273 TraceCheckUtils]: 272: Hoare triple {49795#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49795#false} is VALID [2018-11-23 12:15:12,332 INFO L273 TraceCheckUtils]: 273: Hoare triple {49795#false} assume !!(~i~1 < 40); {49795#false} is VALID [2018-11-23 12:15:12,332 INFO L273 TraceCheckUtils]: 274: Hoare triple {49795#false} assume !(~i~1 > 20); {49795#false} is VALID [2018-11-23 12:15:12,332 INFO L273 TraceCheckUtils]: 275: Hoare triple {49795#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49795#false} is VALID [2018-11-23 12:15:12,332 INFO L273 TraceCheckUtils]: 276: Hoare triple {49795#false} assume !!(~i~1 < 40); {49795#false} is VALID [2018-11-23 12:15:12,332 INFO L273 TraceCheckUtils]: 277: Hoare triple {49795#false} assume !(~i~1 > 20); {49795#false} is VALID [2018-11-23 12:15:12,332 INFO L273 TraceCheckUtils]: 278: Hoare triple {49795#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49795#false} is VALID [2018-11-23 12:15:12,333 INFO L273 TraceCheckUtils]: 279: Hoare triple {49795#false} assume !!(~i~1 < 40); {49795#false} is VALID [2018-11-23 12:15:12,333 INFO L273 TraceCheckUtils]: 280: Hoare triple {49795#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {49795#false} is VALID [2018-11-23 12:15:12,333 INFO L273 TraceCheckUtils]: 281: Hoare triple {49795#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49795#false} is VALID [2018-11-23 12:15:12,333 INFO L273 TraceCheckUtils]: 282: Hoare triple {49795#false} assume !!(~i~1 < 40); {49795#false} is VALID [2018-11-23 12:15:12,333 INFO L273 TraceCheckUtils]: 283: Hoare triple {49795#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {49795#false} is VALID [2018-11-23 12:15:12,333 INFO L273 TraceCheckUtils]: 284: Hoare triple {49795#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49795#false} is VALID [2018-11-23 12:15:12,333 INFO L273 TraceCheckUtils]: 285: Hoare triple {49795#false} assume !!(~i~1 < 40); {49795#false} is VALID [2018-11-23 12:15:12,333 INFO L273 TraceCheckUtils]: 286: Hoare triple {49795#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {49795#false} is VALID [2018-11-23 12:15:12,333 INFO L273 TraceCheckUtils]: 287: Hoare triple {49795#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49795#false} is VALID [2018-11-23 12:15:12,333 INFO L273 TraceCheckUtils]: 288: Hoare triple {49795#false} assume !!(~i~1 < 40); {49795#false} is VALID [2018-11-23 12:15:12,334 INFO L273 TraceCheckUtils]: 289: Hoare triple {49795#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {49795#false} is VALID [2018-11-23 12:15:12,334 INFO L273 TraceCheckUtils]: 290: Hoare triple {49795#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49795#false} is VALID [2018-11-23 12:15:12,334 INFO L273 TraceCheckUtils]: 291: Hoare triple {49795#false} assume !!(~i~1 < 40); {49795#false} is VALID [2018-11-23 12:15:12,334 INFO L273 TraceCheckUtils]: 292: Hoare triple {49795#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {49795#false} is VALID [2018-11-23 12:15:12,334 INFO L273 TraceCheckUtils]: 293: Hoare triple {49795#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49795#false} is VALID [2018-11-23 12:15:12,334 INFO L273 TraceCheckUtils]: 294: Hoare triple {49795#false} assume !!(~i~1 < 40); {49795#false} is VALID [2018-11-23 12:15:12,334 INFO L273 TraceCheckUtils]: 295: Hoare triple {49795#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {49795#false} is VALID [2018-11-23 12:15:12,334 INFO L273 TraceCheckUtils]: 296: Hoare triple {49795#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49795#false} is VALID [2018-11-23 12:15:12,334 INFO L273 TraceCheckUtils]: 297: Hoare triple {49795#false} assume !!(~i~1 < 40); {49795#false} is VALID [2018-11-23 12:15:12,334 INFO L273 TraceCheckUtils]: 298: Hoare triple {49795#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {49795#false} is VALID [2018-11-23 12:15:12,335 INFO L273 TraceCheckUtils]: 299: Hoare triple {49795#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49795#false} is VALID [2018-11-23 12:15:12,335 INFO L273 TraceCheckUtils]: 300: Hoare triple {49795#false} assume !!(~i~1 < 40); {49795#false} is VALID [2018-11-23 12:15:12,335 INFO L273 TraceCheckUtils]: 301: Hoare triple {49795#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {49795#false} is VALID [2018-11-23 12:15:12,335 INFO L273 TraceCheckUtils]: 302: Hoare triple {49795#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49795#false} is VALID [2018-11-23 12:15:12,335 INFO L273 TraceCheckUtils]: 303: Hoare triple {49795#false} assume !!(~i~1 < 40); {49795#false} is VALID [2018-11-23 12:15:12,335 INFO L273 TraceCheckUtils]: 304: Hoare triple {49795#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {49795#false} is VALID [2018-11-23 12:15:12,335 INFO L273 TraceCheckUtils]: 305: Hoare triple {49795#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49795#false} is VALID [2018-11-23 12:15:12,335 INFO L273 TraceCheckUtils]: 306: Hoare triple {49795#false} assume !!(~i~1 < 40); {49795#false} is VALID [2018-11-23 12:15:12,335 INFO L273 TraceCheckUtils]: 307: Hoare triple {49795#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {49795#false} is VALID [2018-11-23 12:15:12,335 INFO L273 TraceCheckUtils]: 308: Hoare triple {49795#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49795#false} is VALID [2018-11-23 12:15:12,336 INFO L273 TraceCheckUtils]: 309: Hoare triple {49795#false} assume !!(~i~1 < 40); {49795#false} is VALID [2018-11-23 12:15:12,336 INFO L273 TraceCheckUtils]: 310: Hoare triple {49795#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {49795#false} is VALID [2018-11-23 12:15:12,336 INFO L273 TraceCheckUtils]: 311: Hoare triple {49795#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49795#false} is VALID [2018-11-23 12:15:12,336 INFO L273 TraceCheckUtils]: 312: Hoare triple {49795#false} assume !!(~i~1 < 40); {49795#false} is VALID [2018-11-23 12:15:12,336 INFO L273 TraceCheckUtils]: 313: Hoare triple {49795#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {49795#false} is VALID [2018-11-23 12:15:12,336 INFO L273 TraceCheckUtils]: 314: Hoare triple {49795#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {49795#false} is VALID [2018-11-23 12:15:12,336 INFO L273 TraceCheckUtils]: 315: Hoare triple {49795#false} assume !(~i~1 < 40); {49795#false} is VALID [2018-11-23 12:15:12,336 INFO L273 TraceCheckUtils]: 316: Hoare triple {49795#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {49795#false} is VALID [2018-11-23 12:15:12,336 INFO L273 TraceCheckUtils]: 317: Hoare triple {49795#false} assume true; {49795#false} is VALID [2018-11-23 12:15:12,336 INFO L268 TraceCheckUtils]: 318: Hoare quadruple {49795#false} {49795#false} #88#return; {49795#false} is VALID [2018-11-23 12:15:12,337 INFO L273 TraceCheckUtils]: 319: Hoare triple {49795#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {49795#false} is VALID [2018-11-23 12:15:12,337 INFO L273 TraceCheckUtils]: 320: Hoare triple {49795#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {49795#false} is VALID [2018-11-23 12:15:12,337 INFO L273 TraceCheckUtils]: 321: Hoare triple {49795#false} assume !false; {49795#false} is VALID [2018-11-23 12:15:12,378 INFO L134 CoverageAnalysis]: Checked inductivity of 9047 backedges. 3860 proven. 121 refuted. 0 times theorem prover too weak. 5066 trivial. 0 not checked. [2018-11-23 12:15:12,398 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:15:12,398 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [15] total 15 [2018-11-23 12:15:12,399 INFO L78 Accepts]: Start accepts. Automaton has 15 states. Word has length 322 [2018-11-23 12:15:12,399 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:15:12,399 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 15 states. [2018-11-23 12:15:12,474 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:15:12,474 INFO L459 AbstractCegarLoop]: Interpolant automaton has 15 states [2018-11-23 12:15:12,474 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2018-11-23 12:15:12,475 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=105, Invalid=105, Unknown=0, NotChecked=0, Total=210 [2018-11-23 12:15:12,475 INFO L87 Difference]: Start difference. First operand 163 states and 180 transitions. Second operand 15 states. [2018-11-23 12:15:12,881 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:12,881 INFO L93 Difference]: Finished difference Result 252 states and 283 transitions. [2018-11-23 12:15:12,881 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2018-11-23 12:15:12,881 INFO L78 Accepts]: Start accepts. Automaton has 15 states. Word has length 322 [2018-11-23 12:15:12,882 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:15:12,882 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 15 states. [2018-11-23 12:15:12,882 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 78 transitions. [2018-11-23 12:15:12,882 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 15 states. [2018-11-23 12:15:12,883 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 78 transitions. [2018-11-23 12:15:12,883 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 15 states and 78 transitions. [2018-11-23 12:15:12,963 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 78 edges. 78 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:15:12,966 INFO L225 Difference]: With dead ends: 252 [2018-11-23 12:15:12,967 INFO L226 Difference]: Without dead ends: 166 [2018-11-23 12:15:12,967 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 321 GetRequests, 308 SyntacticMatches, 0 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=105, Invalid=105, Unknown=0, NotChecked=0, Total=210 [2018-11-23 12:15:12,967 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 166 states. [2018-11-23 12:15:13,049 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 166 to 165. [2018-11-23 12:15:13,050 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:15:13,050 INFO L82 GeneralOperation]: Start isEquivalent. First operand 166 states. Second operand 165 states. [2018-11-23 12:15:13,050 INFO L74 IsIncluded]: Start isIncluded. First operand 166 states. Second operand 165 states. [2018-11-23 12:15:13,050 INFO L87 Difference]: Start difference. First operand 166 states. Second operand 165 states. [2018-11-23 12:15:13,053 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:13,053 INFO L93 Difference]: Finished difference Result 166 states and 183 transitions. [2018-11-23 12:15:13,053 INFO L276 IsEmpty]: Start isEmpty. Operand 166 states and 183 transitions. [2018-11-23 12:15:13,053 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:15:13,053 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:15:13,054 INFO L74 IsIncluded]: Start isIncluded. First operand 165 states. Second operand 166 states. [2018-11-23 12:15:13,054 INFO L87 Difference]: Start difference. First operand 165 states. Second operand 166 states. [2018-11-23 12:15:13,056 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:13,056 INFO L93 Difference]: Finished difference Result 166 states and 183 transitions. [2018-11-23 12:15:13,056 INFO L276 IsEmpty]: Start isEmpty. Operand 166 states and 183 transitions. [2018-11-23 12:15:13,057 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:15:13,057 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:15:13,057 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:15:13,057 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:15:13,057 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 165 states. [2018-11-23 12:15:13,059 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 165 states to 165 states and 182 transitions. [2018-11-23 12:15:13,059 INFO L78 Accepts]: Start accepts. Automaton has 165 states and 182 transitions. Word has length 322 [2018-11-23 12:15:13,060 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:15:13,060 INFO L480 AbstractCegarLoop]: Abstraction has 165 states and 182 transitions. [2018-11-23 12:15:13,060 INFO L481 AbstractCegarLoop]: Interpolant automaton has 15 states. [2018-11-23 12:15:13,060 INFO L276 IsEmpty]: Start isEmpty. Operand 165 states and 182 transitions. [2018-11-23 12:15:13,061 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 325 [2018-11-23 12:15:13,061 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:15:13,061 INFO L402 BasicCegarLoop]: trace histogram [75, 75, 39, 36, 19, 19, 12, 12, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:15:13,062 INFO L423 AbstractCegarLoop]: === Iteration 51 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:15:13,062 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:15:13,062 INFO L82 PathProgramCache]: Analyzing trace with hash 1434324866, now seen corresponding path program 46 times [2018-11-23 12:15:13,062 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:15:13,062 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:15:13,063 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:15:13,063 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:15:13,063 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:15:13,077 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:15:13,077 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:15:13,077 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 52 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 52 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:15:13,094 INFO L103 rtionOrderModulation]: Keeping assertion order TERMS_WITH_SMALL_CONSTANTS_FIRST [2018-11-23 12:15:13,204 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2018-11-23 12:15:13,204 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:15:13,263 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:15:13,265 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:15:13,847 INFO L256 TraceCheckUtils]: 0: Hoare triple {51689#true} call ULTIMATE.init(); {51689#true} is VALID [2018-11-23 12:15:13,848 INFO L273 TraceCheckUtils]: 1: Hoare triple {51689#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {51689#true} is VALID [2018-11-23 12:15:13,848 INFO L273 TraceCheckUtils]: 2: Hoare triple {51689#true} assume true; {51689#true} is VALID [2018-11-23 12:15:13,848 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {51689#true} {51689#true} #78#return; {51689#true} is VALID [2018-11-23 12:15:13,848 INFO L256 TraceCheckUtils]: 4: Hoare triple {51689#true} call #t~ret12 := main(); {51689#true} is VALID [2018-11-23 12:15:13,849 INFO L273 TraceCheckUtils]: 5: Hoare triple {51689#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {51689#true} is VALID [2018-11-23 12:15:13,849 INFO L256 TraceCheckUtils]: 6: Hoare triple {51689#true} call init_nondet(~#x~0.base, ~#x~0.offset); {51689#true} is VALID [2018-11-23 12:15:13,849 INFO L273 TraceCheckUtils]: 7: Hoare triple {51689#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {51689#true} is VALID [2018-11-23 12:15:13,849 INFO L273 TraceCheckUtils]: 8: Hoare triple {51689#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {51689#true} is VALID [2018-11-23 12:15:13,849 INFO L273 TraceCheckUtils]: 9: Hoare triple {51689#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {51689#true} is VALID [2018-11-23 12:15:13,849 INFO L273 TraceCheckUtils]: 10: Hoare triple {51689#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {51689#true} is VALID [2018-11-23 12:15:13,850 INFO L273 TraceCheckUtils]: 11: Hoare triple {51689#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {51689#true} is VALID [2018-11-23 12:15:13,850 INFO L273 TraceCheckUtils]: 12: Hoare triple {51689#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {51689#true} is VALID [2018-11-23 12:15:13,850 INFO L273 TraceCheckUtils]: 13: Hoare triple {51689#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {51689#true} is VALID [2018-11-23 12:15:13,850 INFO L273 TraceCheckUtils]: 14: Hoare triple {51689#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {51689#true} is VALID [2018-11-23 12:15:13,850 INFO L273 TraceCheckUtils]: 15: Hoare triple {51689#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {51689#true} is VALID [2018-11-23 12:15:13,850 INFO L273 TraceCheckUtils]: 16: Hoare triple {51689#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {51689#true} is VALID [2018-11-23 12:15:13,850 INFO L273 TraceCheckUtils]: 17: Hoare triple {51689#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {51689#true} is VALID [2018-11-23 12:15:13,850 INFO L273 TraceCheckUtils]: 18: Hoare triple {51689#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {51689#true} is VALID [2018-11-23 12:15:13,850 INFO L273 TraceCheckUtils]: 19: Hoare triple {51689#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {51689#true} is VALID [2018-11-23 12:15:13,850 INFO L273 TraceCheckUtils]: 20: Hoare triple {51689#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {51689#true} is VALID [2018-11-23 12:15:13,851 INFO L273 TraceCheckUtils]: 21: Hoare triple {51689#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {51689#true} is VALID [2018-11-23 12:15:13,851 INFO L273 TraceCheckUtils]: 22: Hoare triple {51689#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {51689#true} is VALID [2018-11-23 12:15:13,851 INFO L273 TraceCheckUtils]: 23: Hoare triple {51689#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {51689#true} is VALID [2018-11-23 12:15:13,851 INFO L273 TraceCheckUtils]: 24: Hoare triple {51689#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {51689#true} is VALID [2018-11-23 12:15:13,851 INFO L273 TraceCheckUtils]: 25: Hoare triple {51689#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {51689#true} is VALID [2018-11-23 12:15:13,851 INFO L273 TraceCheckUtils]: 26: Hoare triple {51689#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {51689#true} is VALID [2018-11-23 12:15:13,851 INFO L273 TraceCheckUtils]: 27: Hoare triple {51689#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {51689#true} is VALID [2018-11-23 12:15:13,851 INFO L273 TraceCheckUtils]: 28: Hoare triple {51689#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {51689#true} is VALID [2018-11-23 12:15:13,851 INFO L273 TraceCheckUtils]: 29: Hoare triple {51689#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {51689#true} is VALID [2018-11-23 12:15:13,852 INFO L273 TraceCheckUtils]: 30: Hoare triple {51689#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {51689#true} is VALID [2018-11-23 12:15:13,852 INFO L273 TraceCheckUtils]: 31: Hoare triple {51689#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {51689#true} is VALID [2018-11-23 12:15:13,852 INFO L273 TraceCheckUtils]: 32: Hoare triple {51689#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {51689#true} is VALID [2018-11-23 12:15:13,852 INFO L273 TraceCheckUtils]: 33: Hoare triple {51689#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {51689#true} is VALID [2018-11-23 12:15:13,852 INFO L273 TraceCheckUtils]: 34: Hoare triple {51689#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {51689#true} is VALID [2018-11-23 12:15:13,852 INFO L273 TraceCheckUtils]: 35: Hoare triple {51689#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {51689#true} is VALID [2018-11-23 12:15:13,852 INFO L273 TraceCheckUtils]: 36: Hoare triple {51689#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {51689#true} is VALID [2018-11-23 12:15:13,852 INFO L273 TraceCheckUtils]: 37: Hoare triple {51689#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {51689#true} is VALID [2018-11-23 12:15:13,852 INFO L273 TraceCheckUtils]: 38: Hoare triple {51689#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {51689#true} is VALID [2018-11-23 12:15:13,852 INFO L273 TraceCheckUtils]: 39: Hoare triple {51689#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {51689#true} is VALID [2018-11-23 12:15:13,853 INFO L273 TraceCheckUtils]: 40: Hoare triple {51689#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {51689#true} is VALID [2018-11-23 12:15:13,853 INFO L273 TraceCheckUtils]: 41: Hoare triple {51689#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {51689#true} is VALID [2018-11-23 12:15:13,853 INFO L273 TraceCheckUtils]: 42: Hoare triple {51689#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {51689#true} is VALID [2018-11-23 12:15:13,853 INFO L273 TraceCheckUtils]: 43: Hoare triple {51689#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {51689#true} is VALID [2018-11-23 12:15:13,853 INFO L273 TraceCheckUtils]: 44: Hoare triple {51689#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {51689#true} is VALID [2018-11-23 12:15:13,853 INFO L273 TraceCheckUtils]: 45: Hoare triple {51689#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {51689#true} is VALID [2018-11-23 12:15:13,853 INFO L273 TraceCheckUtils]: 46: Hoare triple {51689#true} assume !(~i~0 < 40); {51689#true} is VALID [2018-11-23 12:15:13,853 INFO L273 TraceCheckUtils]: 47: Hoare triple {51689#true} assume true; {51689#true} is VALID [2018-11-23 12:15:13,853 INFO L268 TraceCheckUtils]: 48: Hoare quadruple {51689#true} {51689#true} #82#return; {51689#true} is VALID [2018-11-23 12:15:13,853 INFO L273 TraceCheckUtils]: 49: Hoare triple {51689#true} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {51689#true} is VALID [2018-11-23 12:15:13,854 INFO L256 TraceCheckUtils]: 50: Hoare triple {51689#true} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {51689#true} is VALID [2018-11-23 12:15:13,854 INFO L273 TraceCheckUtils]: 51: Hoare triple {51689#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {51689#true} is VALID [2018-11-23 12:15:13,854 INFO L273 TraceCheckUtils]: 52: Hoare triple {51689#true} assume !!(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,854 INFO L273 TraceCheckUtils]: 53: Hoare triple {51689#true} assume !(~i~1 > 20); {51689#true} is VALID [2018-11-23 12:15:13,854 INFO L273 TraceCheckUtils]: 54: Hoare triple {51689#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51689#true} is VALID [2018-11-23 12:15:13,854 INFO L273 TraceCheckUtils]: 55: Hoare triple {51689#true} assume !!(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,854 INFO L273 TraceCheckUtils]: 56: Hoare triple {51689#true} assume !(~i~1 > 20); {51689#true} is VALID [2018-11-23 12:15:13,854 INFO L273 TraceCheckUtils]: 57: Hoare triple {51689#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51689#true} is VALID [2018-11-23 12:15:13,854 INFO L273 TraceCheckUtils]: 58: Hoare triple {51689#true} assume !!(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,854 INFO L273 TraceCheckUtils]: 59: Hoare triple {51689#true} assume !(~i~1 > 20); {51689#true} is VALID [2018-11-23 12:15:13,855 INFO L273 TraceCheckUtils]: 60: Hoare triple {51689#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51689#true} is VALID [2018-11-23 12:15:13,855 INFO L273 TraceCheckUtils]: 61: Hoare triple {51689#true} assume !!(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,855 INFO L273 TraceCheckUtils]: 62: Hoare triple {51689#true} assume !(~i~1 > 20); {51689#true} is VALID [2018-11-23 12:15:13,855 INFO L273 TraceCheckUtils]: 63: Hoare triple {51689#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51689#true} is VALID [2018-11-23 12:15:13,855 INFO L273 TraceCheckUtils]: 64: Hoare triple {51689#true} assume !!(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,855 INFO L273 TraceCheckUtils]: 65: Hoare triple {51689#true} assume !(~i~1 > 20); {51689#true} is VALID [2018-11-23 12:15:13,855 INFO L273 TraceCheckUtils]: 66: Hoare triple {51689#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51689#true} is VALID [2018-11-23 12:15:13,855 INFO L273 TraceCheckUtils]: 67: Hoare triple {51689#true} assume !!(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,855 INFO L273 TraceCheckUtils]: 68: Hoare triple {51689#true} assume !(~i~1 > 20); {51689#true} is VALID [2018-11-23 12:15:13,855 INFO L273 TraceCheckUtils]: 69: Hoare triple {51689#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51689#true} is VALID [2018-11-23 12:15:13,856 INFO L273 TraceCheckUtils]: 70: Hoare triple {51689#true} assume !!(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,856 INFO L273 TraceCheckUtils]: 71: Hoare triple {51689#true} assume !(~i~1 > 20); {51689#true} is VALID [2018-11-23 12:15:13,856 INFO L273 TraceCheckUtils]: 72: Hoare triple {51689#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51689#true} is VALID [2018-11-23 12:15:13,856 INFO L273 TraceCheckUtils]: 73: Hoare triple {51689#true} assume !!(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,856 INFO L273 TraceCheckUtils]: 74: Hoare triple {51689#true} assume !(~i~1 > 20); {51689#true} is VALID [2018-11-23 12:15:13,856 INFO L273 TraceCheckUtils]: 75: Hoare triple {51689#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51689#true} is VALID [2018-11-23 12:15:13,856 INFO L273 TraceCheckUtils]: 76: Hoare triple {51689#true} assume !!(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,856 INFO L273 TraceCheckUtils]: 77: Hoare triple {51689#true} assume !(~i~1 > 20); {51689#true} is VALID [2018-11-23 12:15:13,856 INFO L273 TraceCheckUtils]: 78: Hoare triple {51689#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51689#true} is VALID [2018-11-23 12:15:13,856 INFO L273 TraceCheckUtils]: 79: Hoare triple {51689#true} assume !!(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,857 INFO L273 TraceCheckUtils]: 80: Hoare triple {51689#true} assume !(~i~1 > 20); {51689#true} is VALID [2018-11-23 12:15:13,857 INFO L273 TraceCheckUtils]: 81: Hoare triple {51689#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51689#true} is VALID [2018-11-23 12:15:13,857 INFO L273 TraceCheckUtils]: 82: Hoare triple {51689#true} assume !!(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,857 INFO L273 TraceCheckUtils]: 83: Hoare triple {51689#true} assume !(~i~1 > 20); {51689#true} is VALID [2018-11-23 12:15:13,857 INFO L273 TraceCheckUtils]: 84: Hoare triple {51689#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51689#true} is VALID [2018-11-23 12:15:13,857 INFO L273 TraceCheckUtils]: 85: Hoare triple {51689#true} assume !!(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,857 INFO L273 TraceCheckUtils]: 86: Hoare triple {51689#true} assume !(~i~1 > 20); {51689#true} is VALID [2018-11-23 12:15:13,857 INFO L273 TraceCheckUtils]: 87: Hoare triple {51689#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51689#true} is VALID [2018-11-23 12:15:13,857 INFO L273 TraceCheckUtils]: 88: Hoare triple {51689#true} assume !!(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,857 INFO L273 TraceCheckUtils]: 89: Hoare triple {51689#true} assume !(~i~1 > 20); {51689#true} is VALID [2018-11-23 12:15:13,858 INFO L273 TraceCheckUtils]: 90: Hoare triple {51689#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51689#true} is VALID [2018-11-23 12:15:13,858 INFO L273 TraceCheckUtils]: 91: Hoare triple {51689#true} assume !!(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,858 INFO L273 TraceCheckUtils]: 92: Hoare triple {51689#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {51689#true} is VALID [2018-11-23 12:15:13,858 INFO L273 TraceCheckUtils]: 93: Hoare triple {51689#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51689#true} is VALID [2018-11-23 12:15:13,858 INFO L273 TraceCheckUtils]: 94: Hoare triple {51689#true} assume !!(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,858 INFO L273 TraceCheckUtils]: 95: Hoare triple {51689#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {51689#true} is VALID [2018-11-23 12:15:13,858 INFO L273 TraceCheckUtils]: 96: Hoare triple {51689#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51689#true} is VALID [2018-11-23 12:15:13,858 INFO L273 TraceCheckUtils]: 97: Hoare triple {51689#true} assume !!(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,858 INFO L273 TraceCheckUtils]: 98: Hoare triple {51689#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {51689#true} is VALID [2018-11-23 12:15:13,858 INFO L273 TraceCheckUtils]: 99: Hoare triple {51689#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51689#true} is VALID [2018-11-23 12:15:13,859 INFO L273 TraceCheckUtils]: 100: Hoare triple {51689#true} assume !!(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,859 INFO L273 TraceCheckUtils]: 101: Hoare triple {51689#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {51689#true} is VALID [2018-11-23 12:15:13,859 INFO L273 TraceCheckUtils]: 102: Hoare triple {51689#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51689#true} is VALID [2018-11-23 12:15:13,859 INFO L273 TraceCheckUtils]: 103: Hoare triple {51689#true} assume !!(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,859 INFO L273 TraceCheckUtils]: 104: Hoare triple {51689#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {51689#true} is VALID [2018-11-23 12:15:13,859 INFO L273 TraceCheckUtils]: 105: Hoare triple {51689#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51689#true} is VALID [2018-11-23 12:15:13,859 INFO L273 TraceCheckUtils]: 106: Hoare triple {51689#true} assume !!(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,859 INFO L273 TraceCheckUtils]: 107: Hoare triple {51689#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {51689#true} is VALID [2018-11-23 12:15:13,859 INFO L273 TraceCheckUtils]: 108: Hoare triple {51689#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51689#true} is VALID [2018-11-23 12:15:13,859 INFO L273 TraceCheckUtils]: 109: Hoare triple {51689#true} assume !!(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,860 INFO L273 TraceCheckUtils]: 110: Hoare triple {51689#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {51689#true} is VALID [2018-11-23 12:15:13,860 INFO L273 TraceCheckUtils]: 111: Hoare triple {51689#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51689#true} is VALID [2018-11-23 12:15:13,860 INFO L273 TraceCheckUtils]: 112: Hoare triple {51689#true} assume !!(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,860 INFO L273 TraceCheckUtils]: 113: Hoare triple {51689#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {51689#true} is VALID [2018-11-23 12:15:13,860 INFO L273 TraceCheckUtils]: 114: Hoare triple {51689#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51689#true} is VALID [2018-11-23 12:15:13,860 INFO L273 TraceCheckUtils]: 115: Hoare triple {51689#true} assume !!(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,860 INFO L273 TraceCheckUtils]: 116: Hoare triple {51689#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {51689#true} is VALID [2018-11-23 12:15:13,860 INFO L273 TraceCheckUtils]: 117: Hoare triple {51689#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51689#true} is VALID [2018-11-23 12:15:13,860 INFO L273 TraceCheckUtils]: 118: Hoare triple {51689#true} assume !!(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,860 INFO L273 TraceCheckUtils]: 119: Hoare triple {51689#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {51689#true} is VALID [2018-11-23 12:15:13,861 INFO L273 TraceCheckUtils]: 120: Hoare triple {51689#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51689#true} is VALID [2018-11-23 12:15:13,861 INFO L273 TraceCheckUtils]: 121: Hoare triple {51689#true} assume !!(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,861 INFO L273 TraceCheckUtils]: 122: Hoare triple {51689#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {51689#true} is VALID [2018-11-23 12:15:13,861 INFO L273 TraceCheckUtils]: 123: Hoare triple {51689#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51689#true} is VALID [2018-11-23 12:15:13,861 INFO L273 TraceCheckUtils]: 124: Hoare triple {51689#true} assume !!(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,861 INFO L273 TraceCheckUtils]: 125: Hoare triple {51689#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {51689#true} is VALID [2018-11-23 12:15:13,861 INFO L273 TraceCheckUtils]: 126: Hoare triple {51689#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51689#true} is VALID [2018-11-23 12:15:13,861 INFO L273 TraceCheckUtils]: 127: Hoare triple {51689#true} assume !(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,861 INFO L273 TraceCheckUtils]: 128: Hoare triple {51689#true} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {51689#true} is VALID [2018-11-23 12:15:13,861 INFO L273 TraceCheckUtils]: 129: Hoare triple {51689#true} assume true; {51689#true} is VALID [2018-11-23 12:15:13,862 INFO L268 TraceCheckUtils]: 130: Hoare quadruple {51689#true} {51689#true} #84#return; {51689#true} is VALID [2018-11-23 12:15:13,862 INFO L273 TraceCheckUtils]: 131: Hoare triple {51689#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {51689#true} is VALID [2018-11-23 12:15:13,862 INFO L256 TraceCheckUtils]: 132: Hoare triple {51689#true} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {51689#true} is VALID [2018-11-23 12:15:13,862 INFO L273 TraceCheckUtils]: 133: Hoare triple {51689#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {51689#true} is VALID [2018-11-23 12:15:13,862 INFO L273 TraceCheckUtils]: 134: Hoare triple {51689#true} assume !!(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,862 INFO L273 TraceCheckUtils]: 135: Hoare triple {51689#true} assume !(~i~1 > 20); {51689#true} is VALID [2018-11-23 12:15:13,862 INFO L273 TraceCheckUtils]: 136: Hoare triple {51689#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51689#true} is VALID [2018-11-23 12:15:13,862 INFO L273 TraceCheckUtils]: 137: Hoare triple {51689#true} assume !!(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,862 INFO L273 TraceCheckUtils]: 138: Hoare triple {51689#true} assume !(~i~1 > 20); {51689#true} is VALID [2018-11-23 12:15:13,862 INFO L273 TraceCheckUtils]: 139: Hoare triple {51689#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51689#true} is VALID [2018-11-23 12:15:13,863 INFO L273 TraceCheckUtils]: 140: Hoare triple {51689#true} assume !!(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,863 INFO L273 TraceCheckUtils]: 141: Hoare triple {51689#true} assume !(~i~1 > 20); {51689#true} is VALID [2018-11-23 12:15:13,863 INFO L273 TraceCheckUtils]: 142: Hoare triple {51689#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51689#true} is VALID [2018-11-23 12:15:13,863 INFO L273 TraceCheckUtils]: 143: Hoare triple {51689#true} assume !!(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,863 INFO L273 TraceCheckUtils]: 144: Hoare triple {51689#true} assume !(~i~1 > 20); {51689#true} is VALID [2018-11-23 12:15:13,863 INFO L273 TraceCheckUtils]: 145: Hoare triple {51689#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51689#true} is VALID [2018-11-23 12:15:13,863 INFO L273 TraceCheckUtils]: 146: Hoare triple {51689#true} assume !!(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,863 INFO L273 TraceCheckUtils]: 147: Hoare triple {51689#true} assume !(~i~1 > 20); {51689#true} is VALID [2018-11-23 12:15:13,863 INFO L273 TraceCheckUtils]: 148: Hoare triple {51689#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51689#true} is VALID [2018-11-23 12:15:13,863 INFO L273 TraceCheckUtils]: 149: Hoare triple {51689#true} assume !!(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,864 INFO L273 TraceCheckUtils]: 150: Hoare triple {51689#true} assume !(~i~1 > 20); {51689#true} is VALID [2018-11-23 12:15:13,864 INFO L273 TraceCheckUtils]: 151: Hoare triple {51689#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51689#true} is VALID [2018-11-23 12:15:13,864 INFO L273 TraceCheckUtils]: 152: Hoare triple {51689#true} assume !!(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,864 INFO L273 TraceCheckUtils]: 153: Hoare triple {51689#true} assume !(~i~1 > 20); {51689#true} is VALID [2018-11-23 12:15:13,864 INFO L273 TraceCheckUtils]: 154: Hoare triple {51689#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51689#true} is VALID [2018-11-23 12:15:13,864 INFO L273 TraceCheckUtils]: 155: Hoare triple {51689#true} assume !!(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,864 INFO L273 TraceCheckUtils]: 156: Hoare triple {51689#true} assume !(~i~1 > 20); {51689#true} is VALID [2018-11-23 12:15:13,864 INFO L273 TraceCheckUtils]: 157: Hoare triple {51689#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51689#true} is VALID [2018-11-23 12:15:13,864 INFO L273 TraceCheckUtils]: 158: Hoare triple {51689#true} assume !!(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,864 INFO L273 TraceCheckUtils]: 159: Hoare triple {51689#true} assume !(~i~1 > 20); {51689#true} is VALID [2018-11-23 12:15:13,865 INFO L273 TraceCheckUtils]: 160: Hoare triple {51689#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51689#true} is VALID [2018-11-23 12:15:13,865 INFO L273 TraceCheckUtils]: 161: Hoare triple {51689#true} assume !!(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,865 INFO L273 TraceCheckUtils]: 162: Hoare triple {51689#true} assume !(~i~1 > 20); {51689#true} is VALID [2018-11-23 12:15:13,865 INFO L273 TraceCheckUtils]: 163: Hoare triple {51689#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51689#true} is VALID [2018-11-23 12:15:13,865 INFO L273 TraceCheckUtils]: 164: Hoare triple {51689#true} assume !!(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,865 INFO L273 TraceCheckUtils]: 165: Hoare triple {51689#true} assume !(~i~1 > 20); {51689#true} is VALID [2018-11-23 12:15:13,865 INFO L273 TraceCheckUtils]: 166: Hoare triple {51689#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51689#true} is VALID [2018-11-23 12:15:13,865 INFO L273 TraceCheckUtils]: 167: Hoare triple {51689#true} assume !!(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,865 INFO L273 TraceCheckUtils]: 168: Hoare triple {51689#true} assume !(~i~1 > 20); {51689#true} is VALID [2018-11-23 12:15:13,865 INFO L273 TraceCheckUtils]: 169: Hoare triple {51689#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51689#true} is VALID [2018-11-23 12:15:13,866 INFO L273 TraceCheckUtils]: 170: Hoare triple {51689#true} assume !!(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,866 INFO L273 TraceCheckUtils]: 171: Hoare triple {51689#true} assume !(~i~1 > 20); {51689#true} is VALID [2018-11-23 12:15:13,866 INFO L273 TraceCheckUtils]: 172: Hoare triple {51689#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51689#true} is VALID [2018-11-23 12:15:13,866 INFO L273 TraceCheckUtils]: 173: Hoare triple {51689#true} assume !!(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,866 INFO L273 TraceCheckUtils]: 174: Hoare triple {51689#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {51689#true} is VALID [2018-11-23 12:15:13,866 INFO L273 TraceCheckUtils]: 175: Hoare triple {51689#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51689#true} is VALID [2018-11-23 12:15:13,866 INFO L273 TraceCheckUtils]: 176: Hoare triple {51689#true} assume !!(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,866 INFO L273 TraceCheckUtils]: 177: Hoare triple {51689#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {51689#true} is VALID [2018-11-23 12:15:13,866 INFO L273 TraceCheckUtils]: 178: Hoare triple {51689#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51689#true} is VALID [2018-11-23 12:15:13,866 INFO L273 TraceCheckUtils]: 179: Hoare triple {51689#true} assume !!(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,867 INFO L273 TraceCheckUtils]: 180: Hoare triple {51689#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {51689#true} is VALID [2018-11-23 12:15:13,867 INFO L273 TraceCheckUtils]: 181: Hoare triple {51689#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51689#true} is VALID [2018-11-23 12:15:13,867 INFO L273 TraceCheckUtils]: 182: Hoare triple {51689#true} assume !!(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,867 INFO L273 TraceCheckUtils]: 183: Hoare triple {51689#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {51689#true} is VALID [2018-11-23 12:15:13,867 INFO L273 TraceCheckUtils]: 184: Hoare triple {51689#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51689#true} is VALID [2018-11-23 12:15:13,867 INFO L273 TraceCheckUtils]: 185: Hoare triple {51689#true} assume !!(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,867 INFO L273 TraceCheckUtils]: 186: Hoare triple {51689#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {51689#true} is VALID [2018-11-23 12:15:13,867 INFO L273 TraceCheckUtils]: 187: Hoare triple {51689#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51689#true} is VALID [2018-11-23 12:15:13,867 INFO L273 TraceCheckUtils]: 188: Hoare triple {51689#true} assume !!(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,867 INFO L273 TraceCheckUtils]: 189: Hoare triple {51689#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {51689#true} is VALID [2018-11-23 12:15:13,868 INFO L273 TraceCheckUtils]: 190: Hoare triple {51689#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51689#true} is VALID [2018-11-23 12:15:13,868 INFO L273 TraceCheckUtils]: 191: Hoare triple {51689#true} assume !!(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,868 INFO L273 TraceCheckUtils]: 192: Hoare triple {51689#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {51689#true} is VALID [2018-11-23 12:15:13,868 INFO L273 TraceCheckUtils]: 193: Hoare triple {51689#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51689#true} is VALID [2018-11-23 12:15:13,868 INFO L273 TraceCheckUtils]: 194: Hoare triple {51689#true} assume !!(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,868 INFO L273 TraceCheckUtils]: 195: Hoare triple {51689#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {51689#true} is VALID [2018-11-23 12:15:13,868 INFO L273 TraceCheckUtils]: 196: Hoare triple {51689#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51689#true} is VALID [2018-11-23 12:15:13,868 INFO L273 TraceCheckUtils]: 197: Hoare triple {51689#true} assume !!(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,868 INFO L273 TraceCheckUtils]: 198: Hoare triple {51689#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {51689#true} is VALID [2018-11-23 12:15:13,868 INFO L273 TraceCheckUtils]: 199: Hoare triple {51689#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51689#true} is VALID [2018-11-23 12:15:13,869 INFO L273 TraceCheckUtils]: 200: Hoare triple {51689#true} assume !!(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,869 INFO L273 TraceCheckUtils]: 201: Hoare triple {51689#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {51689#true} is VALID [2018-11-23 12:15:13,869 INFO L273 TraceCheckUtils]: 202: Hoare triple {51689#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51689#true} is VALID [2018-11-23 12:15:13,869 INFO L273 TraceCheckUtils]: 203: Hoare triple {51689#true} assume !!(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,869 INFO L273 TraceCheckUtils]: 204: Hoare triple {51689#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {51689#true} is VALID [2018-11-23 12:15:13,869 INFO L273 TraceCheckUtils]: 205: Hoare triple {51689#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51689#true} is VALID [2018-11-23 12:15:13,869 INFO L273 TraceCheckUtils]: 206: Hoare triple {51689#true} assume !!(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,869 INFO L273 TraceCheckUtils]: 207: Hoare triple {51689#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {51689#true} is VALID [2018-11-23 12:15:13,869 INFO L273 TraceCheckUtils]: 208: Hoare triple {51689#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51689#true} is VALID [2018-11-23 12:15:13,869 INFO L273 TraceCheckUtils]: 209: Hoare triple {51689#true} assume !(~i~1 < 40); {51689#true} is VALID [2018-11-23 12:15:13,870 INFO L273 TraceCheckUtils]: 210: Hoare triple {51689#true} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {51689#true} is VALID [2018-11-23 12:15:13,870 INFO L273 TraceCheckUtils]: 211: Hoare triple {51689#true} assume true; {51689#true} is VALID [2018-11-23 12:15:13,870 INFO L268 TraceCheckUtils]: 212: Hoare quadruple {51689#true} {51689#true} #86#return; {51689#true} is VALID [2018-11-23 12:15:13,870 INFO L273 TraceCheckUtils]: 213: Hoare triple {51689#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {51689#true} is VALID [2018-11-23 12:15:13,870 INFO L273 TraceCheckUtils]: 214: Hoare triple {51689#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {51689#true} is VALID [2018-11-23 12:15:13,870 INFO L273 TraceCheckUtils]: 215: Hoare triple {51689#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {51689#true} is VALID [2018-11-23 12:15:13,870 INFO L273 TraceCheckUtils]: 216: Hoare triple {51689#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {51689#true} is VALID [2018-11-23 12:15:13,870 INFO L273 TraceCheckUtils]: 217: Hoare triple {51689#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {51689#true} is VALID [2018-11-23 12:15:13,870 INFO L273 TraceCheckUtils]: 218: Hoare triple {51689#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {51689#true} is VALID [2018-11-23 12:15:13,870 INFO L273 TraceCheckUtils]: 219: Hoare triple {51689#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {51689#true} is VALID [2018-11-23 12:15:13,871 INFO L273 TraceCheckUtils]: 220: Hoare triple {51689#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {51689#true} is VALID [2018-11-23 12:15:13,871 INFO L273 TraceCheckUtils]: 221: Hoare triple {51689#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {51689#true} is VALID [2018-11-23 12:15:13,871 INFO L273 TraceCheckUtils]: 222: Hoare triple {51689#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {51689#true} is VALID [2018-11-23 12:15:13,871 INFO L273 TraceCheckUtils]: 223: Hoare triple {51689#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {51689#true} is VALID [2018-11-23 12:15:13,871 INFO L273 TraceCheckUtils]: 224: Hoare triple {51689#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {51689#true} is VALID [2018-11-23 12:15:13,871 INFO L273 TraceCheckUtils]: 225: Hoare triple {51689#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {51689#true} is VALID [2018-11-23 12:15:13,871 INFO L273 TraceCheckUtils]: 226: Hoare triple {51689#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {51689#true} is VALID [2018-11-23 12:15:13,871 INFO L273 TraceCheckUtils]: 227: Hoare triple {51689#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {51689#true} is VALID [2018-11-23 12:15:13,871 INFO L273 TraceCheckUtils]: 228: Hoare triple {51689#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {51689#true} is VALID [2018-11-23 12:15:13,871 INFO L273 TraceCheckUtils]: 229: Hoare triple {51689#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {51689#true} is VALID [2018-11-23 12:15:13,872 INFO L273 TraceCheckUtils]: 230: Hoare triple {51689#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {51689#true} is VALID [2018-11-23 12:15:13,872 INFO L273 TraceCheckUtils]: 231: Hoare triple {51689#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {51689#true} is VALID [2018-11-23 12:15:13,872 INFO L273 TraceCheckUtils]: 232: Hoare triple {51689#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {51689#true} is VALID [2018-11-23 12:15:13,872 INFO L273 TraceCheckUtils]: 233: Hoare triple {51689#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {51689#true} is VALID [2018-11-23 12:15:13,872 INFO L273 TraceCheckUtils]: 234: Hoare triple {51689#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {51689#true} is VALID [2018-11-23 12:15:13,872 INFO L273 TraceCheckUtils]: 235: Hoare triple {51689#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {51689#true} is VALID [2018-11-23 12:15:13,872 INFO L273 TraceCheckUtils]: 236: Hoare triple {51689#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {51689#true} is VALID [2018-11-23 12:15:13,872 INFO L273 TraceCheckUtils]: 237: Hoare triple {51689#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {51689#true} is VALID [2018-11-23 12:15:13,872 INFO L273 TraceCheckUtils]: 238: Hoare triple {51689#true} assume !(~i~2 < 39); {51689#true} is VALID [2018-11-23 12:15:13,872 INFO L273 TraceCheckUtils]: 239: Hoare triple {51689#true} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {51689#true} is VALID [2018-11-23 12:15:13,873 INFO L256 TraceCheckUtils]: 240: Hoare triple {51689#true} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {51689#true} is VALID [2018-11-23 12:15:13,874 INFO L273 TraceCheckUtils]: 241: Hoare triple {51689#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {52417#(<= rangesum_~i~1 0)} is VALID [2018-11-23 12:15:13,875 INFO L273 TraceCheckUtils]: 242: Hoare triple {52417#(<= rangesum_~i~1 0)} assume !!(~i~1 < 40); {52417#(<= rangesum_~i~1 0)} is VALID [2018-11-23 12:15:13,877 INFO L273 TraceCheckUtils]: 243: Hoare triple {52417#(<= rangesum_~i~1 0)} assume !(~i~1 > 20); {52417#(<= rangesum_~i~1 0)} is VALID [2018-11-23 12:15:13,878 INFO L273 TraceCheckUtils]: 244: Hoare triple {52417#(<= rangesum_~i~1 0)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {52427#(<= rangesum_~i~1 1)} is VALID [2018-11-23 12:15:13,878 INFO L273 TraceCheckUtils]: 245: Hoare triple {52427#(<= rangesum_~i~1 1)} assume !!(~i~1 < 40); {52427#(<= rangesum_~i~1 1)} is VALID [2018-11-23 12:15:13,880 INFO L273 TraceCheckUtils]: 246: Hoare triple {52427#(<= rangesum_~i~1 1)} assume !(~i~1 > 20); {52427#(<= rangesum_~i~1 1)} is VALID [2018-11-23 12:15:13,880 INFO L273 TraceCheckUtils]: 247: Hoare triple {52427#(<= rangesum_~i~1 1)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {52437#(<= rangesum_~i~1 2)} is VALID [2018-11-23 12:15:13,881 INFO L273 TraceCheckUtils]: 248: Hoare triple {52437#(<= rangesum_~i~1 2)} assume !!(~i~1 < 40); {52437#(<= rangesum_~i~1 2)} is VALID [2018-11-23 12:15:13,881 INFO L273 TraceCheckUtils]: 249: Hoare triple {52437#(<= rangesum_~i~1 2)} assume !(~i~1 > 20); {52437#(<= rangesum_~i~1 2)} is VALID [2018-11-23 12:15:13,882 INFO L273 TraceCheckUtils]: 250: Hoare triple {52437#(<= rangesum_~i~1 2)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {52447#(<= rangesum_~i~1 3)} is VALID [2018-11-23 12:15:13,882 INFO L273 TraceCheckUtils]: 251: Hoare triple {52447#(<= rangesum_~i~1 3)} assume !!(~i~1 < 40); {52447#(<= rangesum_~i~1 3)} is VALID [2018-11-23 12:15:13,882 INFO L273 TraceCheckUtils]: 252: Hoare triple {52447#(<= rangesum_~i~1 3)} assume !(~i~1 > 20); {52447#(<= rangesum_~i~1 3)} is VALID [2018-11-23 12:15:13,883 INFO L273 TraceCheckUtils]: 253: Hoare triple {52447#(<= rangesum_~i~1 3)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {52457#(<= rangesum_~i~1 4)} is VALID [2018-11-23 12:15:13,883 INFO L273 TraceCheckUtils]: 254: Hoare triple {52457#(<= rangesum_~i~1 4)} assume !!(~i~1 < 40); {52457#(<= rangesum_~i~1 4)} is VALID [2018-11-23 12:15:13,883 INFO L273 TraceCheckUtils]: 255: Hoare triple {52457#(<= rangesum_~i~1 4)} assume !(~i~1 > 20); {52457#(<= rangesum_~i~1 4)} is VALID [2018-11-23 12:15:13,884 INFO L273 TraceCheckUtils]: 256: Hoare triple {52457#(<= rangesum_~i~1 4)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {52467#(<= rangesum_~i~1 5)} is VALID [2018-11-23 12:15:13,885 INFO L273 TraceCheckUtils]: 257: Hoare triple {52467#(<= rangesum_~i~1 5)} assume !!(~i~1 < 40); {52467#(<= rangesum_~i~1 5)} is VALID [2018-11-23 12:15:13,885 INFO L273 TraceCheckUtils]: 258: Hoare triple {52467#(<= rangesum_~i~1 5)} assume !(~i~1 > 20); {52467#(<= rangesum_~i~1 5)} is VALID [2018-11-23 12:15:13,886 INFO L273 TraceCheckUtils]: 259: Hoare triple {52467#(<= rangesum_~i~1 5)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {52477#(<= rangesum_~i~1 6)} is VALID [2018-11-23 12:15:13,886 INFO L273 TraceCheckUtils]: 260: Hoare triple {52477#(<= rangesum_~i~1 6)} assume !!(~i~1 < 40); {52477#(<= rangesum_~i~1 6)} is VALID [2018-11-23 12:15:13,887 INFO L273 TraceCheckUtils]: 261: Hoare triple {52477#(<= rangesum_~i~1 6)} assume !(~i~1 > 20); {52477#(<= rangesum_~i~1 6)} is VALID [2018-11-23 12:15:13,887 INFO L273 TraceCheckUtils]: 262: Hoare triple {52477#(<= rangesum_~i~1 6)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {52487#(<= rangesum_~i~1 7)} is VALID [2018-11-23 12:15:13,888 INFO L273 TraceCheckUtils]: 263: Hoare triple {52487#(<= rangesum_~i~1 7)} assume !!(~i~1 < 40); {52487#(<= rangesum_~i~1 7)} is VALID [2018-11-23 12:15:13,888 INFO L273 TraceCheckUtils]: 264: Hoare triple {52487#(<= rangesum_~i~1 7)} assume !(~i~1 > 20); {52487#(<= rangesum_~i~1 7)} is VALID [2018-11-23 12:15:13,889 INFO L273 TraceCheckUtils]: 265: Hoare triple {52487#(<= rangesum_~i~1 7)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {52497#(<= rangesum_~i~1 8)} is VALID [2018-11-23 12:15:13,889 INFO L273 TraceCheckUtils]: 266: Hoare triple {52497#(<= rangesum_~i~1 8)} assume !!(~i~1 < 40); {52497#(<= rangesum_~i~1 8)} is VALID [2018-11-23 12:15:13,890 INFO L273 TraceCheckUtils]: 267: Hoare triple {52497#(<= rangesum_~i~1 8)} assume !(~i~1 > 20); {52497#(<= rangesum_~i~1 8)} is VALID [2018-11-23 12:15:13,890 INFO L273 TraceCheckUtils]: 268: Hoare triple {52497#(<= rangesum_~i~1 8)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {52507#(<= rangesum_~i~1 9)} is VALID [2018-11-23 12:15:13,891 INFO L273 TraceCheckUtils]: 269: Hoare triple {52507#(<= rangesum_~i~1 9)} assume !!(~i~1 < 40); {52507#(<= rangesum_~i~1 9)} is VALID [2018-11-23 12:15:13,891 INFO L273 TraceCheckUtils]: 270: Hoare triple {52507#(<= rangesum_~i~1 9)} assume !(~i~1 > 20); {52507#(<= rangesum_~i~1 9)} is VALID [2018-11-23 12:15:13,892 INFO L273 TraceCheckUtils]: 271: Hoare triple {52507#(<= rangesum_~i~1 9)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {52517#(<= rangesum_~i~1 10)} is VALID [2018-11-23 12:15:13,893 INFO L273 TraceCheckUtils]: 272: Hoare triple {52517#(<= rangesum_~i~1 10)} assume !!(~i~1 < 40); {52517#(<= rangesum_~i~1 10)} is VALID [2018-11-23 12:15:13,893 INFO L273 TraceCheckUtils]: 273: Hoare triple {52517#(<= rangesum_~i~1 10)} assume !(~i~1 > 20); {52517#(<= rangesum_~i~1 10)} is VALID [2018-11-23 12:15:13,897 INFO L273 TraceCheckUtils]: 274: Hoare triple {52517#(<= rangesum_~i~1 10)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {52527#(<= rangesum_~i~1 11)} is VALID [2018-11-23 12:15:13,897 INFO L273 TraceCheckUtils]: 275: Hoare triple {52527#(<= rangesum_~i~1 11)} assume !!(~i~1 < 40); {52527#(<= rangesum_~i~1 11)} is VALID [2018-11-23 12:15:13,897 INFO L273 TraceCheckUtils]: 276: Hoare triple {52527#(<= rangesum_~i~1 11)} assume !(~i~1 > 20); {52527#(<= rangesum_~i~1 11)} is VALID [2018-11-23 12:15:13,898 INFO L273 TraceCheckUtils]: 277: Hoare triple {52527#(<= rangesum_~i~1 11)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {52537#(<= rangesum_~i~1 12)} is VALID [2018-11-23 12:15:13,898 INFO L273 TraceCheckUtils]: 278: Hoare triple {52537#(<= rangesum_~i~1 12)} assume !!(~i~1 < 40); {52537#(<= rangesum_~i~1 12)} is VALID [2018-11-23 12:15:13,898 INFO L273 TraceCheckUtils]: 279: Hoare triple {52537#(<= rangesum_~i~1 12)} assume !(~i~1 > 20); {52537#(<= rangesum_~i~1 12)} is VALID [2018-11-23 12:15:13,899 INFO L273 TraceCheckUtils]: 280: Hoare triple {52537#(<= rangesum_~i~1 12)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {52547#(<= rangesum_~i~1 13)} is VALID [2018-11-23 12:15:13,899 INFO L273 TraceCheckUtils]: 281: Hoare triple {52547#(<= rangesum_~i~1 13)} assume !!(~i~1 < 40); {52547#(<= rangesum_~i~1 13)} is VALID [2018-11-23 12:15:13,900 INFO L273 TraceCheckUtils]: 282: Hoare triple {52547#(<= rangesum_~i~1 13)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {51690#false} is VALID [2018-11-23 12:15:13,900 INFO L273 TraceCheckUtils]: 283: Hoare triple {51690#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51690#false} is VALID [2018-11-23 12:15:13,900 INFO L273 TraceCheckUtils]: 284: Hoare triple {51690#false} assume !!(~i~1 < 40); {51690#false} is VALID [2018-11-23 12:15:13,900 INFO L273 TraceCheckUtils]: 285: Hoare triple {51690#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {51690#false} is VALID [2018-11-23 12:15:13,900 INFO L273 TraceCheckUtils]: 286: Hoare triple {51690#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51690#false} is VALID [2018-11-23 12:15:13,900 INFO L273 TraceCheckUtils]: 287: Hoare triple {51690#false} assume !!(~i~1 < 40); {51690#false} is VALID [2018-11-23 12:15:13,900 INFO L273 TraceCheckUtils]: 288: Hoare triple {51690#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {51690#false} is VALID [2018-11-23 12:15:13,900 INFO L273 TraceCheckUtils]: 289: Hoare triple {51690#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51690#false} is VALID [2018-11-23 12:15:13,900 INFO L273 TraceCheckUtils]: 290: Hoare triple {51690#false} assume !!(~i~1 < 40); {51690#false} is VALID [2018-11-23 12:15:13,901 INFO L273 TraceCheckUtils]: 291: Hoare triple {51690#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {51690#false} is VALID [2018-11-23 12:15:13,901 INFO L273 TraceCheckUtils]: 292: Hoare triple {51690#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51690#false} is VALID [2018-11-23 12:15:13,901 INFO L273 TraceCheckUtils]: 293: Hoare triple {51690#false} assume !!(~i~1 < 40); {51690#false} is VALID [2018-11-23 12:15:13,901 INFO L273 TraceCheckUtils]: 294: Hoare triple {51690#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {51690#false} is VALID [2018-11-23 12:15:13,901 INFO L273 TraceCheckUtils]: 295: Hoare triple {51690#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51690#false} is VALID [2018-11-23 12:15:13,901 INFO L273 TraceCheckUtils]: 296: Hoare triple {51690#false} assume !!(~i~1 < 40); {51690#false} is VALID [2018-11-23 12:15:13,901 INFO L273 TraceCheckUtils]: 297: Hoare triple {51690#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {51690#false} is VALID [2018-11-23 12:15:13,901 INFO L273 TraceCheckUtils]: 298: Hoare triple {51690#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51690#false} is VALID [2018-11-23 12:15:13,901 INFO L273 TraceCheckUtils]: 299: Hoare triple {51690#false} assume !!(~i~1 < 40); {51690#false} is VALID [2018-11-23 12:15:13,902 INFO L273 TraceCheckUtils]: 300: Hoare triple {51690#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {51690#false} is VALID [2018-11-23 12:15:13,902 INFO L273 TraceCheckUtils]: 301: Hoare triple {51690#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51690#false} is VALID [2018-11-23 12:15:13,902 INFO L273 TraceCheckUtils]: 302: Hoare triple {51690#false} assume !!(~i~1 < 40); {51690#false} is VALID [2018-11-23 12:15:13,902 INFO L273 TraceCheckUtils]: 303: Hoare triple {51690#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {51690#false} is VALID [2018-11-23 12:15:13,902 INFO L273 TraceCheckUtils]: 304: Hoare triple {51690#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51690#false} is VALID [2018-11-23 12:15:13,902 INFO L273 TraceCheckUtils]: 305: Hoare triple {51690#false} assume !!(~i~1 < 40); {51690#false} is VALID [2018-11-23 12:15:13,902 INFO L273 TraceCheckUtils]: 306: Hoare triple {51690#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {51690#false} is VALID [2018-11-23 12:15:13,903 INFO L273 TraceCheckUtils]: 307: Hoare triple {51690#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51690#false} is VALID [2018-11-23 12:15:13,903 INFO L273 TraceCheckUtils]: 308: Hoare triple {51690#false} assume !!(~i~1 < 40); {51690#false} is VALID [2018-11-23 12:15:13,903 INFO L273 TraceCheckUtils]: 309: Hoare triple {51690#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {51690#false} is VALID [2018-11-23 12:15:13,903 INFO L273 TraceCheckUtils]: 310: Hoare triple {51690#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51690#false} is VALID [2018-11-23 12:15:13,903 INFO L273 TraceCheckUtils]: 311: Hoare triple {51690#false} assume !!(~i~1 < 40); {51690#false} is VALID [2018-11-23 12:15:13,903 INFO L273 TraceCheckUtils]: 312: Hoare triple {51690#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {51690#false} is VALID [2018-11-23 12:15:13,904 INFO L273 TraceCheckUtils]: 313: Hoare triple {51690#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51690#false} is VALID [2018-11-23 12:15:13,904 INFO L273 TraceCheckUtils]: 314: Hoare triple {51690#false} assume !!(~i~1 < 40); {51690#false} is VALID [2018-11-23 12:15:13,904 INFO L273 TraceCheckUtils]: 315: Hoare triple {51690#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {51690#false} is VALID [2018-11-23 12:15:13,904 INFO L273 TraceCheckUtils]: 316: Hoare triple {51690#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {51690#false} is VALID [2018-11-23 12:15:13,904 INFO L273 TraceCheckUtils]: 317: Hoare triple {51690#false} assume !(~i~1 < 40); {51690#false} is VALID [2018-11-23 12:15:13,904 INFO L273 TraceCheckUtils]: 318: Hoare triple {51690#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {51690#false} is VALID [2018-11-23 12:15:13,904 INFO L273 TraceCheckUtils]: 319: Hoare triple {51690#false} assume true; {51690#false} is VALID [2018-11-23 12:15:13,904 INFO L268 TraceCheckUtils]: 320: Hoare quadruple {51690#false} {51689#true} #88#return; {51690#false} is VALID [2018-11-23 12:15:13,904 INFO L273 TraceCheckUtils]: 321: Hoare triple {51690#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {51690#false} is VALID [2018-11-23 12:15:13,905 INFO L273 TraceCheckUtils]: 322: Hoare triple {51690#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {51690#false} is VALID [2018-11-23 12:15:13,905 INFO L273 TraceCheckUtils]: 323: Hoare triple {51690#false} assume !false; {51690#false} is VALID [2018-11-23 12:15:13,942 INFO L134 CoverageAnalysis]: Checked inductivity of 9070 backedges. 4336 proven. 260 refuted. 0 times theorem prover too weak. 4474 trivial. 0 not checked. [2018-11-23 12:15:13,960 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:15:13,960 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [16] total 16 [2018-11-23 12:15:13,960 INFO L78 Accepts]: Start accepts. Automaton has 16 states. Word has length 324 [2018-11-23 12:15:13,961 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:15:13,961 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states. [2018-11-23 12:15:14,042 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-23 12:15:14,042 INFO L459 AbstractCegarLoop]: Interpolant automaton has 16 states [2018-11-23 12:15:14,042 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2018-11-23 12:15:14,043 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=120, Invalid=120, Unknown=0, NotChecked=0, Total=240 [2018-11-23 12:15:14,043 INFO L87 Difference]: Start difference. First operand 165 states and 182 transitions. Second operand 16 states. [2018-11-23 12:15:14,471 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:14,471 INFO L93 Difference]: Finished difference Result 283 states and 319 transitions. [2018-11-23 12:15:14,471 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2018-11-23 12:15:14,471 INFO L78 Accepts]: Start accepts. Automaton has 16 states. Word has length 324 [2018-11-23 12:15:14,471 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:15:14,471 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2018-11-23 12:15:14,472 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 106 transitions. [2018-11-23 12:15:14,472 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2018-11-23 12:15:14,473 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 106 transitions. [2018-11-23 12:15:14,473 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states and 106 transitions. [2018-11-23 12:15:14,562 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 106 edges. 106 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:15:14,567 INFO L225 Difference]: With dead ends: 283 [2018-11-23 12:15:14,567 INFO L226 Difference]: Without dead ends: 169 [2018-11-23 12:15:14,568 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 323 GetRequests, 309 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=120, Invalid=120, Unknown=0, NotChecked=0, Total=240 [2018-11-23 12:15:14,568 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 169 states. [2018-11-23 12:15:14,671 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 169 to 168. [2018-11-23 12:15:14,671 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:15:14,671 INFO L82 GeneralOperation]: Start isEquivalent. First operand 169 states. Second operand 168 states. [2018-11-23 12:15:14,672 INFO L74 IsIncluded]: Start isIncluded. First operand 169 states. Second operand 168 states. [2018-11-23 12:15:14,672 INFO L87 Difference]: Start difference. First operand 169 states. Second operand 168 states. [2018-11-23 12:15:14,675 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:14,675 INFO L93 Difference]: Finished difference Result 169 states and 186 transitions. [2018-11-23 12:15:14,675 INFO L276 IsEmpty]: Start isEmpty. Operand 169 states and 186 transitions. [2018-11-23 12:15:14,676 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:15:14,676 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:15:14,676 INFO L74 IsIncluded]: Start isIncluded. First operand 168 states. Second operand 169 states. [2018-11-23 12:15:14,676 INFO L87 Difference]: Start difference. First operand 168 states. Second operand 169 states. [2018-11-23 12:15:14,678 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:14,678 INFO L93 Difference]: Finished difference Result 169 states and 186 transitions. [2018-11-23 12:15:14,679 INFO L276 IsEmpty]: Start isEmpty. Operand 169 states and 186 transitions. [2018-11-23 12:15:14,679 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:15:14,679 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:15:14,679 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:15:14,679 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:15:14,679 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 168 states. [2018-11-23 12:15:14,681 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 168 states to 168 states and 185 transitions. [2018-11-23 12:15:14,682 INFO L78 Accepts]: Start accepts. Automaton has 168 states and 185 transitions. Word has length 324 [2018-11-23 12:15:14,682 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:15:14,682 INFO L480 AbstractCegarLoop]: Abstraction has 168 states and 185 transitions. [2018-11-23 12:15:14,682 INFO L481 AbstractCegarLoop]: Interpolant automaton has 16 states. [2018-11-23 12:15:14,682 INFO L276 IsEmpty]: Start isEmpty. Operand 168 states and 185 transitions. [2018-11-23 12:15:14,684 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 334 [2018-11-23 12:15:14,684 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:15:14,684 INFO L402 BasicCegarLoop]: trace histogram [78, 78, 42, 36, 19, 19, 12, 12, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:15:14,684 INFO L423 AbstractCegarLoop]: === Iteration 52 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:15:14,684 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:15:14,684 INFO L82 PathProgramCache]: Analyzing trace with hash -1588736806, now seen corresponding path program 47 times [2018-11-23 12:15:14,685 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:15:14,685 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:15:14,685 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:15:14,685 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:15:14,685 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:15:14,699 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:15:14,699 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:15:14,699 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 53 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 53 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:15:14,716 INFO L103 rtionOrderModulation]: Keeping assertion order INSIDE_LOOP_FIRST1 [2018-11-23 12:15:14,765 INFO L249 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 13 check-sat command(s) [2018-11-23 12:15:14,766 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:15:14,809 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:15:14,811 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:15:15,208 INFO L256 TraceCheckUtils]: 0: Hoare triple {53647#true} call ULTIMATE.init(); {53647#true} is VALID [2018-11-23 12:15:15,208 INFO L273 TraceCheckUtils]: 1: Hoare triple {53647#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {53647#true} is VALID [2018-11-23 12:15:15,208 INFO L273 TraceCheckUtils]: 2: Hoare triple {53647#true} assume true; {53647#true} is VALID [2018-11-23 12:15:15,208 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {53647#true} {53647#true} #78#return; {53647#true} is VALID [2018-11-23 12:15:15,209 INFO L256 TraceCheckUtils]: 4: Hoare triple {53647#true} call #t~ret12 := main(); {53647#true} is VALID [2018-11-23 12:15:15,209 INFO L273 TraceCheckUtils]: 5: Hoare triple {53647#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {53647#true} is VALID [2018-11-23 12:15:15,209 INFO L256 TraceCheckUtils]: 6: Hoare triple {53647#true} call init_nondet(~#x~0.base, ~#x~0.offset); {53647#true} is VALID [2018-11-23 12:15:15,209 INFO L273 TraceCheckUtils]: 7: Hoare triple {53647#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {53647#true} is VALID [2018-11-23 12:15:15,209 INFO L273 TraceCheckUtils]: 8: Hoare triple {53647#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {53647#true} is VALID [2018-11-23 12:15:15,209 INFO L273 TraceCheckUtils]: 9: Hoare triple {53647#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {53647#true} is VALID [2018-11-23 12:15:15,210 INFO L273 TraceCheckUtils]: 10: Hoare triple {53647#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {53647#true} is VALID [2018-11-23 12:15:15,210 INFO L273 TraceCheckUtils]: 11: Hoare triple {53647#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {53647#true} is VALID [2018-11-23 12:15:15,210 INFO L273 TraceCheckUtils]: 12: Hoare triple {53647#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {53647#true} is VALID [2018-11-23 12:15:15,210 INFO L273 TraceCheckUtils]: 13: Hoare triple {53647#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {53647#true} is VALID [2018-11-23 12:15:15,210 INFO L273 TraceCheckUtils]: 14: Hoare triple {53647#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {53647#true} is VALID [2018-11-23 12:15:15,210 INFO L273 TraceCheckUtils]: 15: Hoare triple {53647#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {53647#true} is VALID [2018-11-23 12:15:15,210 INFO L273 TraceCheckUtils]: 16: Hoare triple {53647#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {53647#true} is VALID [2018-11-23 12:15:15,211 INFO L273 TraceCheckUtils]: 17: Hoare triple {53647#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {53647#true} is VALID [2018-11-23 12:15:15,211 INFO L273 TraceCheckUtils]: 18: Hoare triple {53647#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {53647#true} is VALID [2018-11-23 12:15:15,211 INFO L273 TraceCheckUtils]: 19: Hoare triple {53647#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {53647#true} is VALID [2018-11-23 12:15:15,211 INFO L273 TraceCheckUtils]: 20: Hoare triple {53647#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {53647#true} is VALID [2018-11-23 12:15:15,211 INFO L273 TraceCheckUtils]: 21: Hoare triple {53647#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {53647#true} is VALID [2018-11-23 12:15:15,211 INFO L273 TraceCheckUtils]: 22: Hoare triple {53647#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {53647#true} is VALID [2018-11-23 12:15:15,211 INFO L273 TraceCheckUtils]: 23: Hoare triple {53647#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {53647#true} is VALID [2018-11-23 12:15:15,211 INFO L273 TraceCheckUtils]: 24: Hoare triple {53647#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {53647#true} is VALID [2018-11-23 12:15:15,211 INFO L273 TraceCheckUtils]: 25: Hoare triple {53647#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {53647#true} is VALID [2018-11-23 12:15:15,211 INFO L273 TraceCheckUtils]: 26: Hoare triple {53647#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {53647#true} is VALID [2018-11-23 12:15:15,212 INFO L273 TraceCheckUtils]: 27: Hoare triple {53647#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {53647#true} is VALID [2018-11-23 12:15:15,212 INFO L273 TraceCheckUtils]: 28: Hoare triple {53647#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {53647#true} is VALID [2018-11-23 12:15:15,212 INFO L273 TraceCheckUtils]: 29: Hoare triple {53647#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {53647#true} is VALID [2018-11-23 12:15:15,212 INFO L273 TraceCheckUtils]: 30: Hoare triple {53647#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {53647#true} is VALID [2018-11-23 12:15:15,212 INFO L273 TraceCheckUtils]: 31: Hoare triple {53647#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {53647#true} is VALID [2018-11-23 12:15:15,212 INFO L273 TraceCheckUtils]: 32: Hoare triple {53647#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {53647#true} is VALID [2018-11-23 12:15:15,212 INFO L273 TraceCheckUtils]: 33: Hoare triple {53647#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {53647#true} is VALID [2018-11-23 12:15:15,212 INFO L273 TraceCheckUtils]: 34: Hoare triple {53647#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {53647#true} is VALID [2018-11-23 12:15:15,212 INFO L273 TraceCheckUtils]: 35: Hoare triple {53647#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {53647#true} is VALID [2018-11-23 12:15:15,212 INFO L273 TraceCheckUtils]: 36: Hoare triple {53647#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {53647#true} is VALID [2018-11-23 12:15:15,213 INFO L273 TraceCheckUtils]: 37: Hoare triple {53647#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {53647#true} is VALID [2018-11-23 12:15:15,213 INFO L273 TraceCheckUtils]: 38: Hoare triple {53647#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {53647#true} is VALID [2018-11-23 12:15:15,213 INFO L273 TraceCheckUtils]: 39: Hoare triple {53647#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {53647#true} is VALID [2018-11-23 12:15:15,213 INFO L273 TraceCheckUtils]: 40: Hoare triple {53647#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {53647#true} is VALID [2018-11-23 12:15:15,213 INFO L273 TraceCheckUtils]: 41: Hoare triple {53647#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {53647#true} is VALID [2018-11-23 12:15:15,213 INFO L273 TraceCheckUtils]: 42: Hoare triple {53647#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {53647#true} is VALID [2018-11-23 12:15:15,213 INFO L273 TraceCheckUtils]: 43: Hoare triple {53647#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {53647#true} is VALID [2018-11-23 12:15:15,213 INFO L273 TraceCheckUtils]: 44: Hoare triple {53647#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {53647#true} is VALID [2018-11-23 12:15:15,213 INFO L273 TraceCheckUtils]: 45: Hoare triple {53647#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {53647#true} is VALID [2018-11-23 12:15:15,213 INFO L273 TraceCheckUtils]: 46: Hoare triple {53647#true} assume !(~i~0 < 40); {53647#true} is VALID [2018-11-23 12:15:15,214 INFO L273 TraceCheckUtils]: 47: Hoare triple {53647#true} assume true; {53647#true} is VALID [2018-11-23 12:15:15,214 INFO L268 TraceCheckUtils]: 48: Hoare quadruple {53647#true} {53647#true} #82#return; {53647#true} is VALID [2018-11-23 12:15:15,214 INFO L273 TraceCheckUtils]: 49: Hoare triple {53647#true} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {53647#true} is VALID [2018-11-23 12:15:15,214 INFO L256 TraceCheckUtils]: 50: Hoare triple {53647#true} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {53647#true} is VALID [2018-11-23 12:15:15,214 INFO L273 TraceCheckUtils]: 51: Hoare triple {53647#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {53647#true} is VALID [2018-11-23 12:15:15,214 INFO L273 TraceCheckUtils]: 52: Hoare triple {53647#true} assume !!(~i~1 < 40); {53647#true} is VALID [2018-11-23 12:15:15,214 INFO L273 TraceCheckUtils]: 53: Hoare triple {53647#true} assume !(~i~1 > 20); {53647#true} is VALID [2018-11-23 12:15:15,214 INFO L273 TraceCheckUtils]: 54: Hoare triple {53647#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53647#true} is VALID [2018-11-23 12:15:15,214 INFO L273 TraceCheckUtils]: 55: Hoare triple {53647#true} assume !!(~i~1 < 40); {53647#true} is VALID [2018-11-23 12:15:15,214 INFO L273 TraceCheckUtils]: 56: Hoare triple {53647#true} assume !(~i~1 > 20); {53647#true} is VALID [2018-11-23 12:15:15,215 INFO L273 TraceCheckUtils]: 57: Hoare triple {53647#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53647#true} is VALID [2018-11-23 12:15:15,215 INFO L273 TraceCheckUtils]: 58: Hoare triple {53647#true} assume !!(~i~1 < 40); {53647#true} is VALID [2018-11-23 12:15:15,215 INFO L273 TraceCheckUtils]: 59: Hoare triple {53647#true} assume !(~i~1 > 20); {53647#true} is VALID [2018-11-23 12:15:15,215 INFO L273 TraceCheckUtils]: 60: Hoare triple {53647#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53647#true} is VALID [2018-11-23 12:15:15,215 INFO L273 TraceCheckUtils]: 61: Hoare triple {53647#true} assume !!(~i~1 < 40); {53647#true} is VALID [2018-11-23 12:15:15,215 INFO L273 TraceCheckUtils]: 62: Hoare triple {53647#true} assume !(~i~1 > 20); {53647#true} is VALID [2018-11-23 12:15:15,215 INFO L273 TraceCheckUtils]: 63: Hoare triple {53647#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53647#true} is VALID [2018-11-23 12:15:15,215 INFO L273 TraceCheckUtils]: 64: Hoare triple {53647#true} assume !!(~i~1 < 40); {53647#true} is VALID [2018-11-23 12:15:15,215 INFO L273 TraceCheckUtils]: 65: Hoare triple {53647#true} assume !(~i~1 > 20); {53647#true} is VALID [2018-11-23 12:15:15,216 INFO L273 TraceCheckUtils]: 66: Hoare triple {53647#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53647#true} is VALID [2018-11-23 12:15:15,216 INFO L273 TraceCheckUtils]: 67: Hoare triple {53647#true} assume !!(~i~1 < 40); {53647#true} is VALID [2018-11-23 12:15:15,216 INFO L273 TraceCheckUtils]: 68: Hoare triple {53647#true} assume !(~i~1 > 20); {53647#true} is VALID [2018-11-23 12:15:15,216 INFO L273 TraceCheckUtils]: 69: Hoare triple {53647#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53647#true} is VALID [2018-11-23 12:15:15,216 INFO L273 TraceCheckUtils]: 70: Hoare triple {53647#true} assume !!(~i~1 < 40); {53647#true} is VALID [2018-11-23 12:15:15,216 INFO L273 TraceCheckUtils]: 71: Hoare triple {53647#true} assume !(~i~1 > 20); {53647#true} is VALID [2018-11-23 12:15:15,216 INFO L273 TraceCheckUtils]: 72: Hoare triple {53647#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53647#true} is VALID [2018-11-23 12:15:15,216 INFO L273 TraceCheckUtils]: 73: Hoare triple {53647#true} assume !!(~i~1 < 40); {53647#true} is VALID [2018-11-23 12:15:15,216 INFO L273 TraceCheckUtils]: 74: Hoare triple {53647#true} assume !(~i~1 > 20); {53647#true} is VALID [2018-11-23 12:15:15,216 INFO L273 TraceCheckUtils]: 75: Hoare triple {53647#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53647#true} is VALID [2018-11-23 12:15:15,217 INFO L273 TraceCheckUtils]: 76: Hoare triple {53647#true} assume !!(~i~1 < 40); {53647#true} is VALID [2018-11-23 12:15:15,217 INFO L273 TraceCheckUtils]: 77: Hoare triple {53647#true} assume !(~i~1 > 20); {53647#true} is VALID [2018-11-23 12:15:15,217 INFO L273 TraceCheckUtils]: 78: Hoare triple {53647#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53647#true} is VALID [2018-11-23 12:15:15,217 INFO L273 TraceCheckUtils]: 79: Hoare triple {53647#true} assume !!(~i~1 < 40); {53647#true} is VALID [2018-11-23 12:15:15,217 INFO L273 TraceCheckUtils]: 80: Hoare triple {53647#true} assume !(~i~1 > 20); {53647#true} is VALID [2018-11-23 12:15:15,217 INFO L273 TraceCheckUtils]: 81: Hoare triple {53647#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53647#true} is VALID [2018-11-23 12:15:15,217 INFO L273 TraceCheckUtils]: 82: Hoare triple {53647#true} assume !!(~i~1 < 40); {53647#true} is VALID [2018-11-23 12:15:15,217 INFO L273 TraceCheckUtils]: 83: Hoare triple {53647#true} assume !(~i~1 > 20); {53647#true} is VALID [2018-11-23 12:15:15,217 INFO L273 TraceCheckUtils]: 84: Hoare triple {53647#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53647#true} is VALID [2018-11-23 12:15:15,217 INFO L273 TraceCheckUtils]: 85: Hoare triple {53647#true} assume !!(~i~1 < 40); {53647#true} is VALID [2018-11-23 12:15:15,218 INFO L273 TraceCheckUtils]: 86: Hoare triple {53647#true} assume !(~i~1 > 20); {53647#true} is VALID [2018-11-23 12:15:15,218 INFO L273 TraceCheckUtils]: 87: Hoare triple {53647#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53647#true} is VALID [2018-11-23 12:15:15,218 INFO L273 TraceCheckUtils]: 88: Hoare triple {53647#true} assume !!(~i~1 < 40); {53647#true} is VALID [2018-11-23 12:15:15,218 INFO L273 TraceCheckUtils]: 89: Hoare triple {53647#true} assume !(~i~1 > 20); {53647#true} is VALID [2018-11-23 12:15:15,218 INFO L273 TraceCheckUtils]: 90: Hoare triple {53647#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53647#true} is VALID [2018-11-23 12:15:15,218 INFO L273 TraceCheckUtils]: 91: Hoare triple {53647#true} assume !!(~i~1 < 40); {53647#true} is VALID [2018-11-23 12:15:15,218 INFO L273 TraceCheckUtils]: 92: Hoare triple {53647#true} assume !(~i~1 > 20); {53928#(<= rangesum_~i~1 20)} is VALID [2018-11-23 12:15:15,219 INFO L273 TraceCheckUtils]: 93: Hoare triple {53928#(<= rangesum_~i~1 20)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53932#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:15:15,219 INFO L273 TraceCheckUtils]: 94: Hoare triple {53932#(<= rangesum_~i~1 21)} assume !!(~i~1 < 40); {53932#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:15:15,220 INFO L273 TraceCheckUtils]: 95: Hoare triple {53932#(<= rangesum_~i~1 21)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {53932#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:15:15,220 INFO L273 TraceCheckUtils]: 96: Hoare triple {53932#(<= rangesum_~i~1 21)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53942#(<= rangesum_~i~1 22)} is VALID [2018-11-23 12:15:15,220 INFO L273 TraceCheckUtils]: 97: Hoare triple {53942#(<= rangesum_~i~1 22)} assume !!(~i~1 < 40); {53942#(<= rangesum_~i~1 22)} is VALID [2018-11-23 12:15:15,221 INFO L273 TraceCheckUtils]: 98: Hoare triple {53942#(<= rangesum_~i~1 22)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {53942#(<= rangesum_~i~1 22)} is VALID [2018-11-23 12:15:15,221 INFO L273 TraceCheckUtils]: 99: Hoare triple {53942#(<= rangesum_~i~1 22)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53952#(<= rangesum_~i~1 23)} is VALID [2018-11-23 12:15:15,221 INFO L273 TraceCheckUtils]: 100: Hoare triple {53952#(<= rangesum_~i~1 23)} assume !!(~i~1 < 40); {53952#(<= rangesum_~i~1 23)} is VALID [2018-11-23 12:15:15,222 INFO L273 TraceCheckUtils]: 101: Hoare triple {53952#(<= rangesum_~i~1 23)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {53952#(<= rangesum_~i~1 23)} is VALID [2018-11-23 12:15:15,222 INFO L273 TraceCheckUtils]: 102: Hoare triple {53952#(<= rangesum_~i~1 23)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53962#(<= rangesum_~i~1 24)} is VALID [2018-11-23 12:15:15,223 INFO L273 TraceCheckUtils]: 103: Hoare triple {53962#(<= rangesum_~i~1 24)} assume !!(~i~1 < 40); {53962#(<= rangesum_~i~1 24)} is VALID [2018-11-23 12:15:15,223 INFO L273 TraceCheckUtils]: 104: Hoare triple {53962#(<= rangesum_~i~1 24)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {53962#(<= rangesum_~i~1 24)} is VALID [2018-11-23 12:15:15,224 INFO L273 TraceCheckUtils]: 105: Hoare triple {53962#(<= rangesum_~i~1 24)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53972#(<= rangesum_~i~1 25)} is VALID [2018-11-23 12:15:15,225 INFO L273 TraceCheckUtils]: 106: Hoare triple {53972#(<= rangesum_~i~1 25)} assume !!(~i~1 < 40); {53972#(<= rangesum_~i~1 25)} is VALID [2018-11-23 12:15:15,225 INFO L273 TraceCheckUtils]: 107: Hoare triple {53972#(<= rangesum_~i~1 25)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {53972#(<= rangesum_~i~1 25)} is VALID [2018-11-23 12:15:15,226 INFO L273 TraceCheckUtils]: 108: Hoare triple {53972#(<= rangesum_~i~1 25)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53982#(<= rangesum_~i~1 26)} is VALID [2018-11-23 12:15:15,226 INFO L273 TraceCheckUtils]: 109: Hoare triple {53982#(<= rangesum_~i~1 26)} assume !!(~i~1 < 40); {53982#(<= rangesum_~i~1 26)} is VALID [2018-11-23 12:15:15,227 INFO L273 TraceCheckUtils]: 110: Hoare triple {53982#(<= rangesum_~i~1 26)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {53982#(<= rangesum_~i~1 26)} is VALID [2018-11-23 12:15:15,227 INFO L273 TraceCheckUtils]: 111: Hoare triple {53982#(<= rangesum_~i~1 26)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53992#(<= rangesum_~i~1 27)} is VALID [2018-11-23 12:15:15,228 INFO L273 TraceCheckUtils]: 112: Hoare triple {53992#(<= rangesum_~i~1 27)} assume !!(~i~1 < 40); {53992#(<= rangesum_~i~1 27)} is VALID [2018-11-23 12:15:15,228 INFO L273 TraceCheckUtils]: 113: Hoare triple {53992#(<= rangesum_~i~1 27)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {53992#(<= rangesum_~i~1 27)} is VALID [2018-11-23 12:15:15,229 INFO L273 TraceCheckUtils]: 114: Hoare triple {53992#(<= rangesum_~i~1 27)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {54002#(<= rangesum_~i~1 28)} is VALID [2018-11-23 12:15:15,229 INFO L273 TraceCheckUtils]: 115: Hoare triple {54002#(<= rangesum_~i~1 28)} assume !!(~i~1 < 40); {54002#(<= rangesum_~i~1 28)} is VALID [2018-11-23 12:15:15,230 INFO L273 TraceCheckUtils]: 116: Hoare triple {54002#(<= rangesum_~i~1 28)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {54002#(<= rangesum_~i~1 28)} is VALID [2018-11-23 12:15:15,231 INFO L273 TraceCheckUtils]: 117: Hoare triple {54002#(<= rangesum_~i~1 28)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {54012#(<= rangesum_~i~1 29)} is VALID [2018-11-23 12:15:15,231 INFO L273 TraceCheckUtils]: 118: Hoare triple {54012#(<= rangesum_~i~1 29)} assume !!(~i~1 < 40); {54012#(<= rangesum_~i~1 29)} is VALID [2018-11-23 12:15:15,232 INFO L273 TraceCheckUtils]: 119: Hoare triple {54012#(<= rangesum_~i~1 29)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {54012#(<= rangesum_~i~1 29)} is VALID [2018-11-23 12:15:15,232 INFO L273 TraceCheckUtils]: 120: Hoare triple {54012#(<= rangesum_~i~1 29)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {54022#(<= rangesum_~i~1 30)} is VALID [2018-11-23 12:15:15,233 INFO L273 TraceCheckUtils]: 121: Hoare triple {54022#(<= rangesum_~i~1 30)} assume !!(~i~1 < 40); {54022#(<= rangesum_~i~1 30)} is VALID [2018-11-23 12:15:15,233 INFO L273 TraceCheckUtils]: 122: Hoare triple {54022#(<= rangesum_~i~1 30)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {54022#(<= rangesum_~i~1 30)} is VALID [2018-11-23 12:15:15,234 INFO L273 TraceCheckUtils]: 123: Hoare triple {54022#(<= rangesum_~i~1 30)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {54032#(<= rangesum_~i~1 31)} is VALID [2018-11-23 12:15:15,234 INFO L273 TraceCheckUtils]: 124: Hoare triple {54032#(<= rangesum_~i~1 31)} assume !!(~i~1 < 40); {54032#(<= rangesum_~i~1 31)} is VALID [2018-11-23 12:15:15,235 INFO L273 TraceCheckUtils]: 125: Hoare triple {54032#(<= rangesum_~i~1 31)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {54032#(<= rangesum_~i~1 31)} is VALID [2018-11-23 12:15:15,236 INFO L273 TraceCheckUtils]: 126: Hoare triple {54032#(<= rangesum_~i~1 31)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {54042#(<= rangesum_~i~1 32)} is VALID [2018-11-23 12:15:15,236 INFO L273 TraceCheckUtils]: 127: Hoare triple {54042#(<= rangesum_~i~1 32)} assume !!(~i~1 < 40); {54042#(<= rangesum_~i~1 32)} is VALID [2018-11-23 12:15:15,236 INFO L273 TraceCheckUtils]: 128: Hoare triple {54042#(<= rangesum_~i~1 32)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {54042#(<= rangesum_~i~1 32)} is VALID [2018-11-23 12:15:15,237 INFO L273 TraceCheckUtils]: 129: Hoare triple {54042#(<= rangesum_~i~1 32)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {54052#(<= rangesum_~i~1 33)} is VALID [2018-11-23 12:15:15,238 INFO L273 TraceCheckUtils]: 130: Hoare triple {54052#(<= rangesum_~i~1 33)} assume !(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,238 INFO L273 TraceCheckUtils]: 131: Hoare triple {53648#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {53648#false} is VALID [2018-11-23 12:15:15,238 INFO L273 TraceCheckUtils]: 132: Hoare triple {53648#false} assume true; {53648#false} is VALID [2018-11-23 12:15:15,238 INFO L268 TraceCheckUtils]: 133: Hoare quadruple {53648#false} {53647#true} #84#return; {53648#false} is VALID [2018-11-23 12:15:15,238 INFO L273 TraceCheckUtils]: 134: Hoare triple {53648#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {53648#false} is VALID [2018-11-23 12:15:15,239 INFO L256 TraceCheckUtils]: 135: Hoare triple {53648#false} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {53648#false} is VALID [2018-11-23 12:15:15,239 INFO L273 TraceCheckUtils]: 136: Hoare triple {53648#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {53648#false} is VALID [2018-11-23 12:15:15,239 INFO L273 TraceCheckUtils]: 137: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,239 INFO L273 TraceCheckUtils]: 138: Hoare triple {53648#false} assume !(~i~1 > 20); {53648#false} is VALID [2018-11-23 12:15:15,239 INFO L273 TraceCheckUtils]: 139: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,239 INFO L273 TraceCheckUtils]: 140: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,240 INFO L273 TraceCheckUtils]: 141: Hoare triple {53648#false} assume !(~i~1 > 20); {53648#false} is VALID [2018-11-23 12:15:15,240 INFO L273 TraceCheckUtils]: 142: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,240 INFO L273 TraceCheckUtils]: 143: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,240 INFO L273 TraceCheckUtils]: 144: Hoare triple {53648#false} assume !(~i~1 > 20); {53648#false} is VALID [2018-11-23 12:15:15,240 INFO L273 TraceCheckUtils]: 145: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,240 INFO L273 TraceCheckUtils]: 146: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,241 INFO L273 TraceCheckUtils]: 147: Hoare triple {53648#false} assume !(~i~1 > 20); {53648#false} is VALID [2018-11-23 12:15:15,241 INFO L273 TraceCheckUtils]: 148: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,241 INFO L273 TraceCheckUtils]: 149: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,241 INFO L273 TraceCheckUtils]: 150: Hoare triple {53648#false} assume !(~i~1 > 20); {53648#false} is VALID [2018-11-23 12:15:15,241 INFO L273 TraceCheckUtils]: 151: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,241 INFO L273 TraceCheckUtils]: 152: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,241 INFO L273 TraceCheckUtils]: 153: Hoare triple {53648#false} assume !(~i~1 > 20); {53648#false} is VALID [2018-11-23 12:15:15,241 INFO L273 TraceCheckUtils]: 154: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,241 INFO L273 TraceCheckUtils]: 155: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,241 INFO L273 TraceCheckUtils]: 156: Hoare triple {53648#false} assume !(~i~1 > 20); {53648#false} is VALID [2018-11-23 12:15:15,242 INFO L273 TraceCheckUtils]: 157: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,242 INFO L273 TraceCheckUtils]: 158: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,242 INFO L273 TraceCheckUtils]: 159: Hoare triple {53648#false} assume !(~i~1 > 20); {53648#false} is VALID [2018-11-23 12:15:15,242 INFO L273 TraceCheckUtils]: 160: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,242 INFO L273 TraceCheckUtils]: 161: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,242 INFO L273 TraceCheckUtils]: 162: Hoare triple {53648#false} assume !(~i~1 > 20); {53648#false} is VALID [2018-11-23 12:15:15,242 INFO L273 TraceCheckUtils]: 163: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,242 INFO L273 TraceCheckUtils]: 164: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,242 INFO L273 TraceCheckUtils]: 165: Hoare triple {53648#false} assume !(~i~1 > 20); {53648#false} is VALID [2018-11-23 12:15:15,242 INFO L273 TraceCheckUtils]: 166: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,243 INFO L273 TraceCheckUtils]: 167: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,243 INFO L273 TraceCheckUtils]: 168: Hoare triple {53648#false} assume !(~i~1 > 20); {53648#false} is VALID [2018-11-23 12:15:15,243 INFO L273 TraceCheckUtils]: 169: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,243 INFO L273 TraceCheckUtils]: 170: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,243 INFO L273 TraceCheckUtils]: 171: Hoare triple {53648#false} assume !(~i~1 > 20); {53648#false} is VALID [2018-11-23 12:15:15,243 INFO L273 TraceCheckUtils]: 172: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,243 INFO L273 TraceCheckUtils]: 173: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,243 INFO L273 TraceCheckUtils]: 174: Hoare triple {53648#false} assume !(~i~1 > 20); {53648#false} is VALID [2018-11-23 12:15:15,243 INFO L273 TraceCheckUtils]: 175: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,244 INFO L273 TraceCheckUtils]: 176: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,244 INFO L273 TraceCheckUtils]: 177: Hoare triple {53648#false} assume !(~i~1 > 20); {53648#false} is VALID [2018-11-23 12:15:15,244 INFO L273 TraceCheckUtils]: 178: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,244 INFO L273 TraceCheckUtils]: 179: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,244 INFO L273 TraceCheckUtils]: 180: Hoare triple {53648#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {53648#false} is VALID [2018-11-23 12:15:15,244 INFO L273 TraceCheckUtils]: 181: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,244 INFO L273 TraceCheckUtils]: 182: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,244 INFO L273 TraceCheckUtils]: 183: Hoare triple {53648#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {53648#false} is VALID [2018-11-23 12:15:15,244 INFO L273 TraceCheckUtils]: 184: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,244 INFO L273 TraceCheckUtils]: 185: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,245 INFO L273 TraceCheckUtils]: 186: Hoare triple {53648#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {53648#false} is VALID [2018-11-23 12:15:15,245 INFO L273 TraceCheckUtils]: 187: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,245 INFO L273 TraceCheckUtils]: 188: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,245 INFO L273 TraceCheckUtils]: 189: Hoare triple {53648#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {53648#false} is VALID [2018-11-23 12:15:15,245 INFO L273 TraceCheckUtils]: 190: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,245 INFO L273 TraceCheckUtils]: 191: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,245 INFO L273 TraceCheckUtils]: 192: Hoare triple {53648#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {53648#false} is VALID [2018-11-23 12:15:15,245 INFO L273 TraceCheckUtils]: 193: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,245 INFO L273 TraceCheckUtils]: 194: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,245 INFO L273 TraceCheckUtils]: 195: Hoare triple {53648#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {53648#false} is VALID [2018-11-23 12:15:15,246 INFO L273 TraceCheckUtils]: 196: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,246 INFO L273 TraceCheckUtils]: 197: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,246 INFO L273 TraceCheckUtils]: 198: Hoare triple {53648#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {53648#false} is VALID [2018-11-23 12:15:15,246 INFO L273 TraceCheckUtils]: 199: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,246 INFO L273 TraceCheckUtils]: 200: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,246 INFO L273 TraceCheckUtils]: 201: Hoare triple {53648#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {53648#false} is VALID [2018-11-23 12:15:15,246 INFO L273 TraceCheckUtils]: 202: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,246 INFO L273 TraceCheckUtils]: 203: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,246 INFO L273 TraceCheckUtils]: 204: Hoare triple {53648#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {53648#false} is VALID [2018-11-23 12:15:15,246 INFO L273 TraceCheckUtils]: 205: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,247 INFO L273 TraceCheckUtils]: 206: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,247 INFO L273 TraceCheckUtils]: 207: Hoare triple {53648#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {53648#false} is VALID [2018-11-23 12:15:15,247 INFO L273 TraceCheckUtils]: 208: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,247 INFO L273 TraceCheckUtils]: 209: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,247 INFO L273 TraceCheckUtils]: 210: Hoare triple {53648#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {53648#false} is VALID [2018-11-23 12:15:15,247 INFO L273 TraceCheckUtils]: 211: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,247 INFO L273 TraceCheckUtils]: 212: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,247 INFO L273 TraceCheckUtils]: 213: Hoare triple {53648#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {53648#false} is VALID [2018-11-23 12:15:15,247 INFO L273 TraceCheckUtils]: 214: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,248 INFO L273 TraceCheckUtils]: 215: Hoare triple {53648#false} assume !(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,248 INFO L273 TraceCheckUtils]: 216: Hoare triple {53648#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {53648#false} is VALID [2018-11-23 12:15:15,248 INFO L273 TraceCheckUtils]: 217: Hoare triple {53648#false} assume true; {53648#false} is VALID [2018-11-23 12:15:15,248 INFO L268 TraceCheckUtils]: 218: Hoare quadruple {53648#false} {53648#false} #86#return; {53648#false} is VALID [2018-11-23 12:15:15,248 INFO L273 TraceCheckUtils]: 219: Hoare triple {53648#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {53648#false} is VALID [2018-11-23 12:15:15,248 INFO L273 TraceCheckUtils]: 220: Hoare triple {53648#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {53648#false} is VALID [2018-11-23 12:15:15,248 INFO L273 TraceCheckUtils]: 221: Hoare triple {53648#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {53648#false} is VALID [2018-11-23 12:15:15,248 INFO L273 TraceCheckUtils]: 222: Hoare triple {53648#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {53648#false} is VALID [2018-11-23 12:15:15,248 INFO L273 TraceCheckUtils]: 223: Hoare triple {53648#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {53648#false} is VALID [2018-11-23 12:15:15,248 INFO L273 TraceCheckUtils]: 224: Hoare triple {53648#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {53648#false} is VALID [2018-11-23 12:15:15,249 INFO L273 TraceCheckUtils]: 225: Hoare triple {53648#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {53648#false} is VALID [2018-11-23 12:15:15,249 INFO L273 TraceCheckUtils]: 226: Hoare triple {53648#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {53648#false} is VALID [2018-11-23 12:15:15,249 INFO L273 TraceCheckUtils]: 227: Hoare triple {53648#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {53648#false} is VALID [2018-11-23 12:15:15,249 INFO L273 TraceCheckUtils]: 228: Hoare triple {53648#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {53648#false} is VALID [2018-11-23 12:15:15,249 INFO L273 TraceCheckUtils]: 229: Hoare triple {53648#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {53648#false} is VALID [2018-11-23 12:15:15,249 INFO L273 TraceCheckUtils]: 230: Hoare triple {53648#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {53648#false} is VALID [2018-11-23 12:15:15,249 INFO L273 TraceCheckUtils]: 231: Hoare triple {53648#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {53648#false} is VALID [2018-11-23 12:15:15,249 INFO L273 TraceCheckUtils]: 232: Hoare triple {53648#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {53648#false} is VALID [2018-11-23 12:15:15,249 INFO L273 TraceCheckUtils]: 233: Hoare triple {53648#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {53648#false} is VALID [2018-11-23 12:15:15,249 INFO L273 TraceCheckUtils]: 234: Hoare triple {53648#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {53648#false} is VALID [2018-11-23 12:15:15,250 INFO L273 TraceCheckUtils]: 235: Hoare triple {53648#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {53648#false} is VALID [2018-11-23 12:15:15,250 INFO L273 TraceCheckUtils]: 236: Hoare triple {53648#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {53648#false} is VALID [2018-11-23 12:15:15,250 INFO L273 TraceCheckUtils]: 237: Hoare triple {53648#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {53648#false} is VALID [2018-11-23 12:15:15,250 INFO L273 TraceCheckUtils]: 238: Hoare triple {53648#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {53648#false} is VALID [2018-11-23 12:15:15,250 INFO L273 TraceCheckUtils]: 239: Hoare triple {53648#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {53648#false} is VALID [2018-11-23 12:15:15,250 INFO L273 TraceCheckUtils]: 240: Hoare triple {53648#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {53648#false} is VALID [2018-11-23 12:15:15,250 INFO L273 TraceCheckUtils]: 241: Hoare triple {53648#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {53648#false} is VALID [2018-11-23 12:15:15,250 INFO L273 TraceCheckUtils]: 242: Hoare triple {53648#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {53648#false} is VALID [2018-11-23 12:15:15,250 INFO L273 TraceCheckUtils]: 243: Hoare triple {53648#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {53648#false} is VALID [2018-11-23 12:15:15,251 INFO L273 TraceCheckUtils]: 244: Hoare triple {53648#false} assume !(~i~2 < 39); {53648#false} is VALID [2018-11-23 12:15:15,251 INFO L273 TraceCheckUtils]: 245: Hoare triple {53648#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {53648#false} is VALID [2018-11-23 12:15:15,251 INFO L256 TraceCheckUtils]: 246: Hoare triple {53648#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {53648#false} is VALID [2018-11-23 12:15:15,251 INFO L273 TraceCheckUtils]: 247: Hoare triple {53648#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {53648#false} is VALID [2018-11-23 12:15:15,251 INFO L273 TraceCheckUtils]: 248: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,251 INFO L273 TraceCheckUtils]: 249: Hoare triple {53648#false} assume !(~i~1 > 20); {53648#false} is VALID [2018-11-23 12:15:15,251 INFO L273 TraceCheckUtils]: 250: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,251 INFO L273 TraceCheckUtils]: 251: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,251 INFO L273 TraceCheckUtils]: 252: Hoare triple {53648#false} assume !(~i~1 > 20); {53648#false} is VALID [2018-11-23 12:15:15,251 INFO L273 TraceCheckUtils]: 253: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,252 INFO L273 TraceCheckUtils]: 254: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,252 INFO L273 TraceCheckUtils]: 255: Hoare triple {53648#false} assume !(~i~1 > 20); {53648#false} is VALID [2018-11-23 12:15:15,252 INFO L273 TraceCheckUtils]: 256: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,252 INFO L273 TraceCheckUtils]: 257: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,252 INFO L273 TraceCheckUtils]: 258: Hoare triple {53648#false} assume !(~i~1 > 20); {53648#false} is VALID [2018-11-23 12:15:15,252 INFO L273 TraceCheckUtils]: 259: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,252 INFO L273 TraceCheckUtils]: 260: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,252 INFO L273 TraceCheckUtils]: 261: Hoare triple {53648#false} assume !(~i~1 > 20); {53648#false} is VALID [2018-11-23 12:15:15,252 INFO L273 TraceCheckUtils]: 262: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,252 INFO L273 TraceCheckUtils]: 263: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,253 INFO L273 TraceCheckUtils]: 264: Hoare triple {53648#false} assume !(~i~1 > 20); {53648#false} is VALID [2018-11-23 12:15:15,253 INFO L273 TraceCheckUtils]: 265: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,253 INFO L273 TraceCheckUtils]: 266: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,253 INFO L273 TraceCheckUtils]: 267: Hoare triple {53648#false} assume !(~i~1 > 20); {53648#false} is VALID [2018-11-23 12:15:15,253 INFO L273 TraceCheckUtils]: 268: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,253 INFO L273 TraceCheckUtils]: 269: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,253 INFO L273 TraceCheckUtils]: 270: Hoare triple {53648#false} assume !(~i~1 > 20); {53648#false} is VALID [2018-11-23 12:15:15,253 INFO L273 TraceCheckUtils]: 271: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,253 INFO L273 TraceCheckUtils]: 272: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,253 INFO L273 TraceCheckUtils]: 273: Hoare triple {53648#false} assume !(~i~1 > 20); {53648#false} is VALID [2018-11-23 12:15:15,254 INFO L273 TraceCheckUtils]: 274: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,254 INFO L273 TraceCheckUtils]: 275: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,254 INFO L273 TraceCheckUtils]: 276: Hoare triple {53648#false} assume !(~i~1 > 20); {53648#false} is VALID [2018-11-23 12:15:15,254 INFO L273 TraceCheckUtils]: 277: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,254 INFO L273 TraceCheckUtils]: 278: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,254 INFO L273 TraceCheckUtils]: 279: Hoare triple {53648#false} assume !(~i~1 > 20); {53648#false} is VALID [2018-11-23 12:15:15,254 INFO L273 TraceCheckUtils]: 280: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,254 INFO L273 TraceCheckUtils]: 281: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,254 INFO L273 TraceCheckUtils]: 282: Hoare triple {53648#false} assume !(~i~1 > 20); {53648#false} is VALID [2018-11-23 12:15:15,255 INFO L273 TraceCheckUtils]: 283: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,255 INFO L273 TraceCheckUtils]: 284: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,255 INFO L273 TraceCheckUtils]: 285: Hoare triple {53648#false} assume !(~i~1 > 20); {53648#false} is VALID [2018-11-23 12:15:15,255 INFO L273 TraceCheckUtils]: 286: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,255 INFO L273 TraceCheckUtils]: 287: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,255 INFO L273 TraceCheckUtils]: 288: Hoare triple {53648#false} assume !(~i~1 > 20); {53648#false} is VALID [2018-11-23 12:15:15,255 INFO L273 TraceCheckUtils]: 289: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,255 INFO L273 TraceCheckUtils]: 290: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,255 INFO L273 TraceCheckUtils]: 291: Hoare triple {53648#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {53648#false} is VALID [2018-11-23 12:15:15,255 INFO L273 TraceCheckUtils]: 292: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,256 INFO L273 TraceCheckUtils]: 293: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,256 INFO L273 TraceCheckUtils]: 294: Hoare triple {53648#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {53648#false} is VALID [2018-11-23 12:15:15,256 INFO L273 TraceCheckUtils]: 295: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,256 INFO L273 TraceCheckUtils]: 296: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,256 INFO L273 TraceCheckUtils]: 297: Hoare triple {53648#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {53648#false} is VALID [2018-11-23 12:15:15,256 INFO L273 TraceCheckUtils]: 298: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,256 INFO L273 TraceCheckUtils]: 299: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,256 INFO L273 TraceCheckUtils]: 300: Hoare triple {53648#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {53648#false} is VALID [2018-11-23 12:15:15,256 INFO L273 TraceCheckUtils]: 301: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,256 INFO L273 TraceCheckUtils]: 302: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,257 INFO L273 TraceCheckUtils]: 303: Hoare triple {53648#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {53648#false} is VALID [2018-11-23 12:15:15,257 INFO L273 TraceCheckUtils]: 304: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,257 INFO L273 TraceCheckUtils]: 305: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,257 INFO L273 TraceCheckUtils]: 306: Hoare triple {53648#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {53648#false} is VALID [2018-11-23 12:15:15,257 INFO L273 TraceCheckUtils]: 307: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,257 INFO L273 TraceCheckUtils]: 308: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,257 INFO L273 TraceCheckUtils]: 309: Hoare triple {53648#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {53648#false} is VALID [2018-11-23 12:15:15,257 INFO L273 TraceCheckUtils]: 310: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,257 INFO L273 TraceCheckUtils]: 311: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,257 INFO L273 TraceCheckUtils]: 312: Hoare triple {53648#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {53648#false} is VALID [2018-11-23 12:15:15,258 INFO L273 TraceCheckUtils]: 313: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,258 INFO L273 TraceCheckUtils]: 314: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,258 INFO L273 TraceCheckUtils]: 315: Hoare triple {53648#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {53648#false} is VALID [2018-11-23 12:15:15,258 INFO L273 TraceCheckUtils]: 316: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,258 INFO L273 TraceCheckUtils]: 317: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,258 INFO L273 TraceCheckUtils]: 318: Hoare triple {53648#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {53648#false} is VALID [2018-11-23 12:15:15,258 INFO L273 TraceCheckUtils]: 319: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,258 INFO L273 TraceCheckUtils]: 320: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,258 INFO L273 TraceCheckUtils]: 321: Hoare triple {53648#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {53648#false} is VALID [2018-11-23 12:15:15,259 INFO L273 TraceCheckUtils]: 322: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,259 INFO L273 TraceCheckUtils]: 323: Hoare triple {53648#false} assume !!(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,259 INFO L273 TraceCheckUtils]: 324: Hoare triple {53648#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {53648#false} is VALID [2018-11-23 12:15:15,259 INFO L273 TraceCheckUtils]: 325: Hoare triple {53648#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {53648#false} is VALID [2018-11-23 12:15:15,259 INFO L273 TraceCheckUtils]: 326: Hoare triple {53648#false} assume !(~i~1 < 40); {53648#false} is VALID [2018-11-23 12:15:15,259 INFO L273 TraceCheckUtils]: 327: Hoare triple {53648#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {53648#false} is VALID [2018-11-23 12:15:15,259 INFO L273 TraceCheckUtils]: 328: Hoare triple {53648#false} assume true; {53648#false} is VALID [2018-11-23 12:15:15,259 INFO L268 TraceCheckUtils]: 329: Hoare quadruple {53648#false} {53648#false} #88#return; {53648#false} is VALID [2018-11-23 12:15:15,259 INFO L273 TraceCheckUtils]: 330: Hoare triple {53648#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {53648#false} is VALID [2018-11-23 12:15:15,259 INFO L273 TraceCheckUtils]: 331: Hoare triple {53648#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {53648#false} is VALID [2018-11-23 12:15:15,260 INFO L273 TraceCheckUtils]: 332: Hoare triple {53648#false} assume !false; {53648#false} is VALID [2018-11-23 12:15:15,295 INFO L134 CoverageAnalysis]: Checked inductivity of 9763 backedges. 4683 proven. 222 refuted. 0 times theorem prover too weak. 4858 trivial. 0 not checked. [2018-11-23 12:15:15,314 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:15:15,314 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [16] total 16 [2018-11-23 12:15:15,314 INFO L78 Accepts]: Start accepts. Automaton has 16 states. Word has length 333 [2018-11-23 12:15:15,314 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:15:15,315 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states. [2018-11-23 12:15:15,394 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 80 edges. 80 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:15:15,395 INFO L459 AbstractCegarLoop]: Interpolant automaton has 16 states [2018-11-23 12:15:15,395 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2018-11-23 12:15:15,395 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=120, Invalid=120, Unknown=0, NotChecked=0, Total=240 [2018-11-23 12:15:15,395 INFO L87 Difference]: Start difference. First operand 168 states and 185 transitions. Second operand 16 states. [2018-11-23 12:15:16,164 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:16,164 INFO L93 Difference]: Finished difference Result 290 states and 328 transitions. [2018-11-23 12:15:16,164 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2018-11-23 12:15:16,164 INFO L78 Accepts]: Start accepts. Automaton has 16 states. Word has length 333 [2018-11-23 12:15:16,164 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:15:16,164 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2018-11-23 12:15:16,165 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 119 transitions. [2018-11-23 12:15:16,165 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2018-11-23 12:15:16,166 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 119 transitions. [2018-11-23 12:15:16,166 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states and 119 transitions. [2018-11-23 12:15:16,270 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 119 edges. 119 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:15:16,274 INFO L225 Difference]: With dead ends: 290 [2018-11-23 12:15:16,274 INFO L226 Difference]: Without dead ends: 173 [2018-11-23 12:15:16,275 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 332 GetRequests, 318 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=120, Invalid=120, Unknown=0, NotChecked=0, Total=240 [2018-11-23 12:15:16,275 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 173 states. [2018-11-23 12:15:16,365 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 173 to 171. [2018-11-23 12:15:16,366 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:15:16,366 INFO L82 GeneralOperation]: Start isEquivalent. First operand 173 states. Second operand 171 states. [2018-11-23 12:15:16,366 INFO L74 IsIncluded]: Start isIncluded. First operand 173 states. Second operand 171 states. [2018-11-23 12:15:16,366 INFO L87 Difference]: Start difference. First operand 173 states. Second operand 171 states. [2018-11-23 12:15:16,369 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:16,370 INFO L93 Difference]: Finished difference Result 173 states and 192 transitions. [2018-11-23 12:15:16,370 INFO L276 IsEmpty]: Start isEmpty. Operand 173 states and 192 transitions. [2018-11-23 12:15:16,370 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:15:16,370 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:15:16,370 INFO L74 IsIncluded]: Start isIncluded. First operand 171 states. Second operand 173 states. [2018-11-23 12:15:16,370 INFO L87 Difference]: Start difference. First operand 171 states. Second operand 173 states. [2018-11-23 12:15:16,373 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:16,373 INFO L93 Difference]: Finished difference Result 173 states and 192 transitions. [2018-11-23 12:15:16,373 INFO L276 IsEmpty]: Start isEmpty. Operand 173 states and 192 transitions. [2018-11-23 12:15:16,373 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:15:16,373 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:15:16,373 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:15:16,374 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:15:16,374 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 171 states. [2018-11-23 12:15:16,376 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 171 states to 171 states and 189 transitions. [2018-11-23 12:15:16,376 INFO L78 Accepts]: Start accepts. Automaton has 171 states and 189 transitions. Word has length 333 [2018-11-23 12:15:16,376 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:15:16,376 INFO L480 AbstractCegarLoop]: Abstraction has 171 states and 189 transitions. [2018-11-23 12:15:16,376 INFO L481 AbstractCegarLoop]: Interpolant automaton has 16 states. [2018-11-23 12:15:16,376 INFO L276 IsEmpty]: Start isEmpty. Operand 171 states and 189 transitions. [2018-11-23 12:15:16,378 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 343 [2018-11-23 12:15:16,378 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:15:16,378 INFO L402 BasicCegarLoop]: trace histogram [81, 81, 42, 39, 19, 19, 12, 12, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:15:16,378 INFO L423 AbstractCegarLoop]: === Iteration 53 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:15:16,379 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:15:16,379 INFO L82 PathProgramCache]: Analyzing trace with hash 1426685820, now seen corresponding path program 48 times [2018-11-23 12:15:16,379 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:15:16,379 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:15:16,379 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:15:16,380 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:15:16,380 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:15:16,393 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:15:16,394 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:15:16,394 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 54 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 54 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:15:16,413 INFO L103 rtionOrderModulation]: Keeping assertion order MIX_INSIDE_OUTSIDE [2018-11-23 12:15:26,142 INFO L249 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 27 check-sat command(s) [2018-11-23 12:15:26,143 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:15:26,198 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:15:26,200 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:15:26,608 INFO L256 TraceCheckUtils]: 0: Hoare triple {55653#true} call ULTIMATE.init(); {55653#true} is VALID [2018-11-23 12:15:26,608 INFO L273 TraceCheckUtils]: 1: Hoare triple {55653#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {55653#true} is VALID [2018-11-23 12:15:26,609 INFO L273 TraceCheckUtils]: 2: Hoare triple {55653#true} assume true; {55653#true} is VALID [2018-11-23 12:15:26,609 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {55653#true} {55653#true} #78#return; {55653#true} is VALID [2018-11-23 12:15:26,609 INFO L256 TraceCheckUtils]: 4: Hoare triple {55653#true} call #t~ret12 := main(); {55653#true} is VALID [2018-11-23 12:15:26,609 INFO L273 TraceCheckUtils]: 5: Hoare triple {55653#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {55653#true} is VALID [2018-11-23 12:15:26,609 INFO L256 TraceCheckUtils]: 6: Hoare triple {55653#true} call init_nondet(~#x~0.base, ~#x~0.offset); {55653#true} is VALID [2018-11-23 12:15:26,609 INFO L273 TraceCheckUtils]: 7: Hoare triple {55653#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {55653#true} is VALID [2018-11-23 12:15:26,610 INFO L273 TraceCheckUtils]: 8: Hoare triple {55653#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {55653#true} is VALID [2018-11-23 12:15:26,610 INFO L273 TraceCheckUtils]: 9: Hoare triple {55653#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {55653#true} is VALID [2018-11-23 12:15:26,610 INFO L273 TraceCheckUtils]: 10: Hoare triple {55653#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {55653#true} is VALID [2018-11-23 12:15:26,610 INFO L273 TraceCheckUtils]: 11: Hoare triple {55653#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {55653#true} is VALID [2018-11-23 12:15:26,610 INFO L273 TraceCheckUtils]: 12: Hoare triple {55653#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {55653#true} is VALID [2018-11-23 12:15:26,610 INFO L273 TraceCheckUtils]: 13: Hoare triple {55653#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {55653#true} is VALID [2018-11-23 12:15:26,611 INFO L273 TraceCheckUtils]: 14: Hoare triple {55653#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {55653#true} is VALID [2018-11-23 12:15:26,611 INFO L273 TraceCheckUtils]: 15: Hoare triple {55653#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {55653#true} is VALID [2018-11-23 12:15:26,611 INFO L273 TraceCheckUtils]: 16: Hoare triple {55653#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {55653#true} is VALID [2018-11-23 12:15:26,611 INFO L273 TraceCheckUtils]: 17: Hoare triple {55653#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {55653#true} is VALID [2018-11-23 12:15:26,611 INFO L273 TraceCheckUtils]: 18: Hoare triple {55653#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {55653#true} is VALID [2018-11-23 12:15:26,611 INFO L273 TraceCheckUtils]: 19: Hoare triple {55653#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {55653#true} is VALID [2018-11-23 12:15:26,612 INFO L273 TraceCheckUtils]: 20: Hoare triple {55653#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {55653#true} is VALID [2018-11-23 12:15:26,612 INFO L273 TraceCheckUtils]: 21: Hoare triple {55653#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {55653#true} is VALID [2018-11-23 12:15:26,612 INFO L273 TraceCheckUtils]: 22: Hoare triple {55653#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {55653#true} is VALID [2018-11-23 12:15:26,612 INFO L273 TraceCheckUtils]: 23: Hoare triple {55653#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {55653#true} is VALID [2018-11-23 12:15:26,612 INFO L273 TraceCheckUtils]: 24: Hoare triple {55653#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {55653#true} is VALID [2018-11-23 12:15:26,612 INFO L273 TraceCheckUtils]: 25: Hoare triple {55653#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {55653#true} is VALID [2018-11-23 12:15:26,612 INFO L273 TraceCheckUtils]: 26: Hoare triple {55653#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {55653#true} is VALID [2018-11-23 12:15:26,612 INFO L273 TraceCheckUtils]: 27: Hoare triple {55653#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {55653#true} is VALID [2018-11-23 12:15:26,612 INFO L273 TraceCheckUtils]: 28: Hoare triple {55653#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {55653#true} is VALID [2018-11-23 12:15:26,613 INFO L273 TraceCheckUtils]: 29: Hoare triple {55653#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {55653#true} is VALID [2018-11-23 12:15:26,613 INFO L273 TraceCheckUtils]: 30: Hoare triple {55653#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {55653#true} is VALID [2018-11-23 12:15:26,613 INFO L273 TraceCheckUtils]: 31: Hoare triple {55653#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {55653#true} is VALID [2018-11-23 12:15:26,613 INFO L273 TraceCheckUtils]: 32: Hoare triple {55653#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {55653#true} is VALID [2018-11-23 12:15:26,613 INFO L273 TraceCheckUtils]: 33: Hoare triple {55653#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {55653#true} is VALID [2018-11-23 12:15:26,613 INFO L273 TraceCheckUtils]: 34: Hoare triple {55653#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {55653#true} is VALID [2018-11-23 12:15:26,613 INFO L273 TraceCheckUtils]: 35: Hoare triple {55653#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {55653#true} is VALID [2018-11-23 12:15:26,613 INFO L273 TraceCheckUtils]: 36: Hoare triple {55653#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {55653#true} is VALID [2018-11-23 12:15:26,613 INFO L273 TraceCheckUtils]: 37: Hoare triple {55653#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {55653#true} is VALID [2018-11-23 12:15:26,613 INFO L273 TraceCheckUtils]: 38: Hoare triple {55653#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {55653#true} is VALID [2018-11-23 12:15:26,614 INFO L273 TraceCheckUtils]: 39: Hoare triple {55653#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {55653#true} is VALID [2018-11-23 12:15:26,614 INFO L273 TraceCheckUtils]: 40: Hoare triple {55653#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {55653#true} is VALID [2018-11-23 12:15:26,614 INFO L273 TraceCheckUtils]: 41: Hoare triple {55653#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {55653#true} is VALID [2018-11-23 12:15:26,614 INFO L273 TraceCheckUtils]: 42: Hoare triple {55653#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {55653#true} is VALID [2018-11-23 12:15:26,614 INFO L273 TraceCheckUtils]: 43: Hoare triple {55653#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {55653#true} is VALID [2018-11-23 12:15:26,614 INFO L273 TraceCheckUtils]: 44: Hoare triple {55653#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {55653#true} is VALID [2018-11-23 12:15:26,614 INFO L273 TraceCheckUtils]: 45: Hoare triple {55653#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {55653#true} is VALID [2018-11-23 12:15:26,614 INFO L273 TraceCheckUtils]: 46: Hoare triple {55653#true} assume !(~i~0 < 40); {55653#true} is VALID [2018-11-23 12:15:26,614 INFO L273 TraceCheckUtils]: 47: Hoare triple {55653#true} assume true; {55653#true} is VALID [2018-11-23 12:15:26,614 INFO L268 TraceCheckUtils]: 48: Hoare quadruple {55653#true} {55653#true} #82#return; {55653#true} is VALID [2018-11-23 12:15:26,615 INFO L273 TraceCheckUtils]: 49: Hoare triple {55653#true} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {55653#true} is VALID [2018-11-23 12:15:26,615 INFO L256 TraceCheckUtils]: 50: Hoare triple {55653#true} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {55653#true} is VALID [2018-11-23 12:15:26,615 INFO L273 TraceCheckUtils]: 51: Hoare triple {55653#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {55653#true} is VALID [2018-11-23 12:15:26,615 INFO L273 TraceCheckUtils]: 52: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,615 INFO L273 TraceCheckUtils]: 53: Hoare triple {55653#true} assume !(~i~1 > 20); {55653#true} is VALID [2018-11-23 12:15:26,615 INFO L273 TraceCheckUtils]: 54: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,615 INFO L273 TraceCheckUtils]: 55: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,615 INFO L273 TraceCheckUtils]: 56: Hoare triple {55653#true} assume !(~i~1 > 20); {55653#true} is VALID [2018-11-23 12:15:26,615 INFO L273 TraceCheckUtils]: 57: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,615 INFO L273 TraceCheckUtils]: 58: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,616 INFO L273 TraceCheckUtils]: 59: Hoare triple {55653#true} assume !(~i~1 > 20); {55653#true} is VALID [2018-11-23 12:15:26,616 INFO L273 TraceCheckUtils]: 60: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,616 INFO L273 TraceCheckUtils]: 61: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,616 INFO L273 TraceCheckUtils]: 62: Hoare triple {55653#true} assume !(~i~1 > 20); {55653#true} is VALID [2018-11-23 12:15:26,616 INFO L273 TraceCheckUtils]: 63: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,616 INFO L273 TraceCheckUtils]: 64: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,616 INFO L273 TraceCheckUtils]: 65: Hoare triple {55653#true} assume !(~i~1 > 20); {55653#true} is VALID [2018-11-23 12:15:26,616 INFO L273 TraceCheckUtils]: 66: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,616 INFO L273 TraceCheckUtils]: 67: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,616 INFO L273 TraceCheckUtils]: 68: Hoare triple {55653#true} assume !(~i~1 > 20); {55653#true} is VALID [2018-11-23 12:15:26,617 INFO L273 TraceCheckUtils]: 69: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,617 INFO L273 TraceCheckUtils]: 70: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,617 INFO L273 TraceCheckUtils]: 71: Hoare triple {55653#true} assume !(~i~1 > 20); {55653#true} is VALID [2018-11-23 12:15:26,617 INFO L273 TraceCheckUtils]: 72: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,617 INFO L273 TraceCheckUtils]: 73: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,617 INFO L273 TraceCheckUtils]: 74: Hoare triple {55653#true} assume !(~i~1 > 20); {55653#true} is VALID [2018-11-23 12:15:26,617 INFO L273 TraceCheckUtils]: 75: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,617 INFO L273 TraceCheckUtils]: 76: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,617 INFO L273 TraceCheckUtils]: 77: Hoare triple {55653#true} assume !(~i~1 > 20); {55653#true} is VALID [2018-11-23 12:15:26,617 INFO L273 TraceCheckUtils]: 78: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,618 INFO L273 TraceCheckUtils]: 79: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,618 INFO L273 TraceCheckUtils]: 80: Hoare triple {55653#true} assume !(~i~1 > 20); {55653#true} is VALID [2018-11-23 12:15:26,618 INFO L273 TraceCheckUtils]: 81: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,618 INFO L273 TraceCheckUtils]: 82: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,618 INFO L273 TraceCheckUtils]: 83: Hoare triple {55653#true} assume !(~i~1 > 20); {55653#true} is VALID [2018-11-23 12:15:26,618 INFO L273 TraceCheckUtils]: 84: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,618 INFO L273 TraceCheckUtils]: 85: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,618 INFO L273 TraceCheckUtils]: 86: Hoare triple {55653#true} assume !(~i~1 > 20); {55653#true} is VALID [2018-11-23 12:15:26,618 INFO L273 TraceCheckUtils]: 87: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,618 INFO L273 TraceCheckUtils]: 88: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,619 INFO L273 TraceCheckUtils]: 89: Hoare triple {55653#true} assume !(~i~1 > 20); {55653#true} is VALID [2018-11-23 12:15:26,619 INFO L273 TraceCheckUtils]: 90: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,619 INFO L273 TraceCheckUtils]: 91: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,619 INFO L273 TraceCheckUtils]: 92: Hoare triple {55653#true} assume !(~i~1 > 20); {55653#true} is VALID [2018-11-23 12:15:26,619 INFO L273 TraceCheckUtils]: 93: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,619 INFO L273 TraceCheckUtils]: 94: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,619 INFO L273 TraceCheckUtils]: 95: Hoare triple {55653#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {55653#true} is VALID [2018-11-23 12:15:26,619 INFO L273 TraceCheckUtils]: 96: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,619 INFO L273 TraceCheckUtils]: 97: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,619 INFO L273 TraceCheckUtils]: 98: Hoare triple {55653#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {55653#true} is VALID [2018-11-23 12:15:26,620 INFO L273 TraceCheckUtils]: 99: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,620 INFO L273 TraceCheckUtils]: 100: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,620 INFO L273 TraceCheckUtils]: 101: Hoare triple {55653#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {55653#true} is VALID [2018-11-23 12:15:26,620 INFO L273 TraceCheckUtils]: 102: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,620 INFO L273 TraceCheckUtils]: 103: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,620 INFO L273 TraceCheckUtils]: 104: Hoare triple {55653#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {55653#true} is VALID [2018-11-23 12:15:26,620 INFO L273 TraceCheckUtils]: 105: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,620 INFO L273 TraceCheckUtils]: 106: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,620 INFO L273 TraceCheckUtils]: 107: Hoare triple {55653#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {55653#true} is VALID [2018-11-23 12:15:26,620 INFO L273 TraceCheckUtils]: 108: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,621 INFO L273 TraceCheckUtils]: 109: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,621 INFO L273 TraceCheckUtils]: 110: Hoare triple {55653#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {55653#true} is VALID [2018-11-23 12:15:26,621 INFO L273 TraceCheckUtils]: 111: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,621 INFO L273 TraceCheckUtils]: 112: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,621 INFO L273 TraceCheckUtils]: 113: Hoare triple {55653#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {55653#true} is VALID [2018-11-23 12:15:26,621 INFO L273 TraceCheckUtils]: 114: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,621 INFO L273 TraceCheckUtils]: 115: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,621 INFO L273 TraceCheckUtils]: 116: Hoare triple {55653#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {55653#true} is VALID [2018-11-23 12:15:26,621 INFO L273 TraceCheckUtils]: 117: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,621 INFO L273 TraceCheckUtils]: 118: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,622 INFO L273 TraceCheckUtils]: 119: Hoare triple {55653#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {55653#true} is VALID [2018-11-23 12:15:26,622 INFO L273 TraceCheckUtils]: 120: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,622 INFO L273 TraceCheckUtils]: 121: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,622 INFO L273 TraceCheckUtils]: 122: Hoare triple {55653#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {55653#true} is VALID [2018-11-23 12:15:26,622 INFO L273 TraceCheckUtils]: 123: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,622 INFO L273 TraceCheckUtils]: 124: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,622 INFO L273 TraceCheckUtils]: 125: Hoare triple {55653#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {55653#true} is VALID [2018-11-23 12:15:26,622 INFO L273 TraceCheckUtils]: 126: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,622 INFO L273 TraceCheckUtils]: 127: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,623 INFO L273 TraceCheckUtils]: 128: Hoare triple {55653#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {55653#true} is VALID [2018-11-23 12:15:26,623 INFO L273 TraceCheckUtils]: 129: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,623 INFO L273 TraceCheckUtils]: 130: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,623 INFO L273 TraceCheckUtils]: 131: Hoare triple {55653#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {55653#true} is VALID [2018-11-23 12:15:26,623 INFO L273 TraceCheckUtils]: 132: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,623 INFO L273 TraceCheckUtils]: 133: Hoare triple {55653#true} assume !(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,623 INFO L273 TraceCheckUtils]: 134: Hoare triple {55653#true} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {55653#true} is VALID [2018-11-23 12:15:26,623 INFO L273 TraceCheckUtils]: 135: Hoare triple {55653#true} assume true; {55653#true} is VALID [2018-11-23 12:15:26,623 INFO L268 TraceCheckUtils]: 136: Hoare quadruple {55653#true} {55653#true} #84#return; {55653#true} is VALID [2018-11-23 12:15:26,623 INFO L273 TraceCheckUtils]: 137: Hoare triple {55653#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {55653#true} is VALID [2018-11-23 12:15:26,624 INFO L256 TraceCheckUtils]: 138: Hoare triple {55653#true} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {55653#true} is VALID [2018-11-23 12:15:26,624 INFO L273 TraceCheckUtils]: 139: Hoare triple {55653#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {55653#true} is VALID [2018-11-23 12:15:26,624 INFO L273 TraceCheckUtils]: 140: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,624 INFO L273 TraceCheckUtils]: 141: Hoare triple {55653#true} assume !(~i~1 > 20); {55653#true} is VALID [2018-11-23 12:15:26,624 INFO L273 TraceCheckUtils]: 142: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,624 INFO L273 TraceCheckUtils]: 143: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,624 INFO L273 TraceCheckUtils]: 144: Hoare triple {55653#true} assume !(~i~1 > 20); {55653#true} is VALID [2018-11-23 12:15:26,624 INFO L273 TraceCheckUtils]: 145: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,624 INFO L273 TraceCheckUtils]: 146: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,624 INFO L273 TraceCheckUtils]: 147: Hoare triple {55653#true} assume !(~i~1 > 20); {55653#true} is VALID [2018-11-23 12:15:26,625 INFO L273 TraceCheckUtils]: 148: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,625 INFO L273 TraceCheckUtils]: 149: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,625 INFO L273 TraceCheckUtils]: 150: Hoare triple {55653#true} assume !(~i~1 > 20); {55653#true} is VALID [2018-11-23 12:15:26,625 INFO L273 TraceCheckUtils]: 151: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,625 INFO L273 TraceCheckUtils]: 152: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,625 INFO L273 TraceCheckUtils]: 153: Hoare triple {55653#true} assume !(~i~1 > 20); {55653#true} is VALID [2018-11-23 12:15:26,625 INFO L273 TraceCheckUtils]: 154: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,625 INFO L273 TraceCheckUtils]: 155: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,625 INFO L273 TraceCheckUtils]: 156: Hoare triple {55653#true} assume !(~i~1 > 20); {55653#true} is VALID [2018-11-23 12:15:26,625 INFO L273 TraceCheckUtils]: 157: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,626 INFO L273 TraceCheckUtils]: 158: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,626 INFO L273 TraceCheckUtils]: 159: Hoare triple {55653#true} assume !(~i~1 > 20); {55653#true} is VALID [2018-11-23 12:15:26,626 INFO L273 TraceCheckUtils]: 160: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,626 INFO L273 TraceCheckUtils]: 161: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,626 INFO L273 TraceCheckUtils]: 162: Hoare triple {55653#true} assume !(~i~1 > 20); {55653#true} is VALID [2018-11-23 12:15:26,626 INFO L273 TraceCheckUtils]: 163: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,626 INFO L273 TraceCheckUtils]: 164: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,626 INFO L273 TraceCheckUtils]: 165: Hoare triple {55653#true} assume !(~i~1 > 20); {55653#true} is VALID [2018-11-23 12:15:26,626 INFO L273 TraceCheckUtils]: 166: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,626 INFO L273 TraceCheckUtils]: 167: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,627 INFO L273 TraceCheckUtils]: 168: Hoare triple {55653#true} assume !(~i~1 > 20); {55653#true} is VALID [2018-11-23 12:15:26,627 INFO L273 TraceCheckUtils]: 169: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,627 INFO L273 TraceCheckUtils]: 170: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,627 INFO L273 TraceCheckUtils]: 171: Hoare triple {55653#true} assume !(~i~1 > 20); {55653#true} is VALID [2018-11-23 12:15:26,627 INFO L273 TraceCheckUtils]: 172: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,627 INFO L273 TraceCheckUtils]: 173: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,627 INFO L273 TraceCheckUtils]: 174: Hoare triple {55653#true} assume !(~i~1 > 20); {55653#true} is VALID [2018-11-23 12:15:26,627 INFO L273 TraceCheckUtils]: 175: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,627 INFO L273 TraceCheckUtils]: 176: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,627 INFO L273 TraceCheckUtils]: 177: Hoare triple {55653#true} assume !(~i~1 > 20); {55653#true} is VALID [2018-11-23 12:15:26,628 INFO L273 TraceCheckUtils]: 178: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,628 INFO L273 TraceCheckUtils]: 179: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,628 INFO L273 TraceCheckUtils]: 180: Hoare triple {55653#true} assume !(~i~1 > 20); {55653#true} is VALID [2018-11-23 12:15:26,628 INFO L273 TraceCheckUtils]: 181: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,628 INFO L273 TraceCheckUtils]: 182: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,628 INFO L273 TraceCheckUtils]: 183: Hoare triple {55653#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {55653#true} is VALID [2018-11-23 12:15:26,628 INFO L273 TraceCheckUtils]: 184: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,628 INFO L273 TraceCheckUtils]: 185: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,628 INFO L273 TraceCheckUtils]: 186: Hoare triple {55653#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {55653#true} is VALID [2018-11-23 12:15:26,628 INFO L273 TraceCheckUtils]: 187: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,629 INFO L273 TraceCheckUtils]: 188: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,629 INFO L273 TraceCheckUtils]: 189: Hoare triple {55653#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {55653#true} is VALID [2018-11-23 12:15:26,629 INFO L273 TraceCheckUtils]: 190: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,629 INFO L273 TraceCheckUtils]: 191: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,629 INFO L273 TraceCheckUtils]: 192: Hoare triple {55653#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {55653#true} is VALID [2018-11-23 12:15:26,629 INFO L273 TraceCheckUtils]: 193: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,629 INFO L273 TraceCheckUtils]: 194: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,629 INFO L273 TraceCheckUtils]: 195: Hoare triple {55653#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {55653#true} is VALID [2018-11-23 12:15:26,629 INFO L273 TraceCheckUtils]: 196: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,629 INFO L273 TraceCheckUtils]: 197: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,630 INFO L273 TraceCheckUtils]: 198: Hoare triple {55653#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {55653#true} is VALID [2018-11-23 12:15:26,630 INFO L273 TraceCheckUtils]: 199: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,630 INFO L273 TraceCheckUtils]: 200: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,630 INFO L273 TraceCheckUtils]: 201: Hoare triple {55653#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {55653#true} is VALID [2018-11-23 12:15:26,630 INFO L273 TraceCheckUtils]: 202: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,630 INFO L273 TraceCheckUtils]: 203: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,630 INFO L273 TraceCheckUtils]: 204: Hoare triple {55653#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {55653#true} is VALID [2018-11-23 12:15:26,630 INFO L273 TraceCheckUtils]: 205: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,630 INFO L273 TraceCheckUtils]: 206: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,630 INFO L273 TraceCheckUtils]: 207: Hoare triple {55653#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {55653#true} is VALID [2018-11-23 12:15:26,631 INFO L273 TraceCheckUtils]: 208: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,631 INFO L273 TraceCheckUtils]: 209: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,631 INFO L273 TraceCheckUtils]: 210: Hoare triple {55653#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {55653#true} is VALID [2018-11-23 12:15:26,631 INFO L273 TraceCheckUtils]: 211: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,631 INFO L273 TraceCheckUtils]: 212: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,631 INFO L273 TraceCheckUtils]: 213: Hoare triple {55653#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {55653#true} is VALID [2018-11-23 12:15:26,631 INFO L273 TraceCheckUtils]: 214: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,631 INFO L273 TraceCheckUtils]: 215: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,631 INFO L273 TraceCheckUtils]: 216: Hoare triple {55653#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {55653#true} is VALID [2018-11-23 12:15:26,631 INFO L273 TraceCheckUtils]: 217: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,632 INFO L273 TraceCheckUtils]: 218: Hoare triple {55653#true} assume !!(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,632 INFO L273 TraceCheckUtils]: 219: Hoare triple {55653#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {55653#true} is VALID [2018-11-23 12:15:26,632 INFO L273 TraceCheckUtils]: 220: Hoare triple {55653#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55653#true} is VALID [2018-11-23 12:15:26,632 INFO L273 TraceCheckUtils]: 221: Hoare triple {55653#true} assume !(~i~1 < 40); {55653#true} is VALID [2018-11-23 12:15:26,632 INFO L273 TraceCheckUtils]: 222: Hoare triple {55653#true} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {55653#true} is VALID [2018-11-23 12:15:26,632 INFO L273 TraceCheckUtils]: 223: Hoare triple {55653#true} assume true; {55653#true} is VALID [2018-11-23 12:15:26,632 INFO L268 TraceCheckUtils]: 224: Hoare quadruple {55653#true} {55653#true} #86#return; {55653#true} is VALID [2018-11-23 12:15:26,633 INFO L273 TraceCheckUtils]: 225: Hoare triple {55653#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {56333#(<= main_~i~2 0)} is VALID [2018-11-23 12:15:26,633 INFO L273 TraceCheckUtils]: 226: Hoare triple {56333#(<= main_~i~2 0)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {56333#(<= main_~i~2 0)} is VALID [2018-11-23 12:15:26,633 INFO L273 TraceCheckUtils]: 227: Hoare triple {56333#(<= main_~i~2 0)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {56340#(<= main_~i~2 1)} is VALID [2018-11-23 12:15:26,634 INFO L273 TraceCheckUtils]: 228: Hoare triple {56340#(<= main_~i~2 1)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {56340#(<= main_~i~2 1)} is VALID [2018-11-23 12:15:26,634 INFO L273 TraceCheckUtils]: 229: Hoare triple {56340#(<= main_~i~2 1)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {56347#(<= main_~i~2 2)} is VALID [2018-11-23 12:15:26,635 INFO L273 TraceCheckUtils]: 230: Hoare triple {56347#(<= main_~i~2 2)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {56347#(<= main_~i~2 2)} is VALID [2018-11-23 12:15:26,635 INFO L273 TraceCheckUtils]: 231: Hoare triple {56347#(<= main_~i~2 2)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {56354#(<= main_~i~2 3)} is VALID [2018-11-23 12:15:26,635 INFO L273 TraceCheckUtils]: 232: Hoare triple {56354#(<= main_~i~2 3)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {56354#(<= main_~i~2 3)} is VALID [2018-11-23 12:15:26,636 INFO L273 TraceCheckUtils]: 233: Hoare triple {56354#(<= main_~i~2 3)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {56361#(<= main_~i~2 4)} is VALID [2018-11-23 12:15:26,636 INFO L273 TraceCheckUtils]: 234: Hoare triple {56361#(<= main_~i~2 4)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {56361#(<= main_~i~2 4)} is VALID [2018-11-23 12:15:26,637 INFO L273 TraceCheckUtils]: 235: Hoare triple {56361#(<= main_~i~2 4)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {56368#(<= main_~i~2 5)} is VALID [2018-11-23 12:15:26,637 INFO L273 TraceCheckUtils]: 236: Hoare triple {56368#(<= main_~i~2 5)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {56368#(<= main_~i~2 5)} is VALID [2018-11-23 12:15:26,638 INFO L273 TraceCheckUtils]: 237: Hoare triple {56368#(<= main_~i~2 5)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {56375#(<= main_~i~2 6)} is VALID [2018-11-23 12:15:26,639 INFO L273 TraceCheckUtils]: 238: Hoare triple {56375#(<= main_~i~2 6)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {56375#(<= main_~i~2 6)} is VALID [2018-11-23 12:15:26,639 INFO L273 TraceCheckUtils]: 239: Hoare triple {56375#(<= main_~i~2 6)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {56382#(<= main_~i~2 7)} is VALID [2018-11-23 12:15:26,640 INFO L273 TraceCheckUtils]: 240: Hoare triple {56382#(<= main_~i~2 7)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {56382#(<= main_~i~2 7)} is VALID [2018-11-23 12:15:26,641 INFO L273 TraceCheckUtils]: 241: Hoare triple {56382#(<= main_~i~2 7)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {56389#(<= main_~i~2 8)} is VALID [2018-11-23 12:15:26,641 INFO L273 TraceCheckUtils]: 242: Hoare triple {56389#(<= main_~i~2 8)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {56389#(<= main_~i~2 8)} is VALID [2018-11-23 12:15:26,642 INFO L273 TraceCheckUtils]: 243: Hoare triple {56389#(<= main_~i~2 8)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {56396#(<= main_~i~2 9)} is VALID [2018-11-23 12:15:26,642 INFO L273 TraceCheckUtils]: 244: Hoare triple {56396#(<= main_~i~2 9)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {56396#(<= main_~i~2 9)} is VALID [2018-11-23 12:15:26,643 INFO L273 TraceCheckUtils]: 245: Hoare triple {56396#(<= main_~i~2 9)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {56403#(<= main_~i~2 10)} is VALID [2018-11-23 12:15:26,644 INFO L273 TraceCheckUtils]: 246: Hoare triple {56403#(<= main_~i~2 10)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {56403#(<= main_~i~2 10)} is VALID [2018-11-23 12:15:26,644 INFO L273 TraceCheckUtils]: 247: Hoare triple {56403#(<= main_~i~2 10)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {56410#(<= main_~i~2 11)} is VALID [2018-11-23 12:15:26,645 INFO L273 TraceCheckUtils]: 248: Hoare triple {56410#(<= main_~i~2 11)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {56410#(<= main_~i~2 11)} is VALID [2018-11-23 12:15:26,646 INFO L273 TraceCheckUtils]: 249: Hoare triple {56410#(<= main_~i~2 11)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {56417#(<= main_~i~2 12)} is VALID [2018-11-23 12:15:26,646 INFO L273 TraceCheckUtils]: 250: Hoare triple {56417#(<= main_~i~2 12)} assume !(~i~2 < 39); {55654#false} is VALID [2018-11-23 12:15:26,646 INFO L273 TraceCheckUtils]: 251: Hoare triple {55654#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {55654#false} is VALID [2018-11-23 12:15:26,647 INFO L256 TraceCheckUtils]: 252: Hoare triple {55654#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {55654#false} is VALID [2018-11-23 12:15:26,647 INFO L273 TraceCheckUtils]: 253: Hoare triple {55654#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {55654#false} is VALID [2018-11-23 12:15:26,647 INFO L273 TraceCheckUtils]: 254: Hoare triple {55654#false} assume !!(~i~1 < 40); {55654#false} is VALID [2018-11-23 12:15:26,647 INFO L273 TraceCheckUtils]: 255: Hoare triple {55654#false} assume !(~i~1 > 20); {55654#false} is VALID [2018-11-23 12:15:26,647 INFO L273 TraceCheckUtils]: 256: Hoare triple {55654#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55654#false} is VALID [2018-11-23 12:15:26,648 INFO L273 TraceCheckUtils]: 257: Hoare triple {55654#false} assume !!(~i~1 < 40); {55654#false} is VALID [2018-11-23 12:15:26,648 INFO L273 TraceCheckUtils]: 258: Hoare triple {55654#false} assume !(~i~1 > 20); {55654#false} is VALID [2018-11-23 12:15:26,648 INFO L273 TraceCheckUtils]: 259: Hoare triple {55654#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55654#false} is VALID [2018-11-23 12:15:26,648 INFO L273 TraceCheckUtils]: 260: Hoare triple {55654#false} assume !!(~i~1 < 40); {55654#false} is VALID [2018-11-23 12:15:26,648 INFO L273 TraceCheckUtils]: 261: Hoare triple {55654#false} assume !(~i~1 > 20); {55654#false} is VALID [2018-11-23 12:15:26,648 INFO L273 TraceCheckUtils]: 262: Hoare triple {55654#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55654#false} is VALID [2018-11-23 12:15:26,649 INFO L273 TraceCheckUtils]: 263: Hoare triple {55654#false} assume !!(~i~1 < 40); {55654#false} is VALID [2018-11-23 12:15:26,649 INFO L273 TraceCheckUtils]: 264: Hoare triple {55654#false} assume !(~i~1 > 20); {55654#false} is VALID [2018-11-23 12:15:26,649 INFO L273 TraceCheckUtils]: 265: Hoare triple {55654#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55654#false} is VALID [2018-11-23 12:15:26,649 INFO L273 TraceCheckUtils]: 266: Hoare triple {55654#false} assume !!(~i~1 < 40); {55654#false} is VALID [2018-11-23 12:15:26,649 INFO L273 TraceCheckUtils]: 267: Hoare triple {55654#false} assume !(~i~1 > 20); {55654#false} is VALID [2018-11-23 12:15:26,649 INFO L273 TraceCheckUtils]: 268: Hoare triple {55654#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55654#false} is VALID [2018-11-23 12:15:26,649 INFO L273 TraceCheckUtils]: 269: Hoare triple {55654#false} assume !!(~i~1 < 40); {55654#false} is VALID [2018-11-23 12:15:26,649 INFO L273 TraceCheckUtils]: 270: Hoare triple {55654#false} assume !(~i~1 > 20); {55654#false} is VALID [2018-11-23 12:15:26,649 INFO L273 TraceCheckUtils]: 271: Hoare triple {55654#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55654#false} is VALID [2018-11-23 12:15:26,650 INFO L273 TraceCheckUtils]: 272: Hoare triple {55654#false} assume !!(~i~1 < 40); {55654#false} is VALID [2018-11-23 12:15:26,650 INFO L273 TraceCheckUtils]: 273: Hoare triple {55654#false} assume !(~i~1 > 20); {55654#false} is VALID [2018-11-23 12:15:26,650 INFO L273 TraceCheckUtils]: 274: Hoare triple {55654#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55654#false} is VALID [2018-11-23 12:15:26,650 INFO L273 TraceCheckUtils]: 275: Hoare triple {55654#false} assume !!(~i~1 < 40); {55654#false} is VALID [2018-11-23 12:15:26,650 INFO L273 TraceCheckUtils]: 276: Hoare triple {55654#false} assume !(~i~1 > 20); {55654#false} is VALID [2018-11-23 12:15:26,650 INFO L273 TraceCheckUtils]: 277: Hoare triple {55654#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55654#false} is VALID [2018-11-23 12:15:26,650 INFO L273 TraceCheckUtils]: 278: Hoare triple {55654#false} assume !!(~i~1 < 40); {55654#false} is VALID [2018-11-23 12:15:26,650 INFO L273 TraceCheckUtils]: 279: Hoare triple {55654#false} assume !(~i~1 > 20); {55654#false} is VALID [2018-11-23 12:15:26,650 INFO L273 TraceCheckUtils]: 280: Hoare triple {55654#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55654#false} is VALID [2018-11-23 12:15:26,650 INFO L273 TraceCheckUtils]: 281: Hoare triple {55654#false} assume !!(~i~1 < 40); {55654#false} is VALID [2018-11-23 12:15:26,651 INFO L273 TraceCheckUtils]: 282: Hoare triple {55654#false} assume !(~i~1 > 20); {55654#false} is VALID [2018-11-23 12:15:26,651 INFO L273 TraceCheckUtils]: 283: Hoare triple {55654#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55654#false} is VALID [2018-11-23 12:15:26,651 INFO L273 TraceCheckUtils]: 284: Hoare triple {55654#false} assume !!(~i~1 < 40); {55654#false} is VALID [2018-11-23 12:15:26,651 INFO L273 TraceCheckUtils]: 285: Hoare triple {55654#false} assume !(~i~1 > 20); {55654#false} is VALID [2018-11-23 12:15:26,651 INFO L273 TraceCheckUtils]: 286: Hoare triple {55654#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55654#false} is VALID [2018-11-23 12:15:26,651 INFO L273 TraceCheckUtils]: 287: Hoare triple {55654#false} assume !!(~i~1 < 40); {55654#false} is VALID [2018-11-23 12:15:26,651 INFO L273 TraceCheckUtils]: 288: Hoare triple {55654#false} assume !(~i~1 > 20); {55654#false} is VALID [2018-11-23 12:15:26,651 INFO L273 TraceCheckUtils]: 289: Hoare triple {55654#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55654#false} is VALID [2018-11-23 12:15:26,651 INFO L273 TraceCheckUtils]: 290: Hoare triple {55654#false} assume !!(~i~1 < 40); {55654#false} is VALID [2018-11-23 12:15:26,651 INFO L273 TraceCheckUtils]: 291: Hoare triple {55654#false} assume !(~i~1 > 20); {55654#false} is VALID [2018-11-23 12:15:26,652 INFO L273 TraceCheckUtils]: 292: Hoare triple {55654#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55654#false} is VALID [2018-11-23 12:15:26,652 INFO L273 TraceCheckUtils]: 293: Hoare triple {55654#false} assume !!(~i~1 < 40); {55654#false} is VALID [2018-11-23 12:15:26,652 INFO L273 TraceCheckUtils]: 294: Hoare triple {55654#false} assume !(~i~1 > 20); {55654#false} is VALID [2018-11-23 12:15:26,652 INFO L273 TraceCheckUtils]: 295: Hoare triple {55654#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55654#false} is VALID [2018-11-23 12:15:26,652 INFO L273 TraceCheckUtils]: 296: Hoare triple {55654#false} assume !!(~i~1 < 40); {55654#false} is VALID [2018-11-23 12:15:26,652 INFO L273 TraceCheckUtils]: 297: Hoare triple {55654#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {55654#false} is VALID [2018-11-23 12:15:26,652 INFO L273 TraceCheckUtils]: 298: Hoare triple {55654#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55654#false} is VALID [2018-11-23 12:15:26,652 INFO L273 TraceCheckUtils]: 299: Hoare triple {55654#false} assume !!(~i~1 < 40); {55654#false} is VALID [2018-11-23 12:15:26,652 INFO L273 TraceCheckUtils]: 300: Hoare triple {55654#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {55654#false} is VALID [2018-11-23 12:15:26,652 INFO L273 TraceCheckUtils]: 301: Hoare triple {55654#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55654#false} is VALID [2018-11-23 12:15:26,653 INFO L273 TraceCheckUtils]: 302: Hoare triple {55654#false} assume !!(~i~1 < 40); {55654#false} is VALID [2018-11-23 12:15:26,653 INFO L273 TraceCheckUtils]: 303: Hoare triple {55654#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {55654#false} is VALID [2018-11-23 12:15:26,653 INFO L273 TraceCheckUtils]: 304: Hoare triple {55654#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55654#false} is VALID [2018-11-23 12:15:26,653 INFO L273 TraceCheckUtils]: 305: Hoare triple {55654#false} assume !!(~i~1 < 40); {55654#false} is VALID [2018-11-23 12:15:26,653 INFO L273 TraceCheckUtils]: 306: Hoare triple {55654#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {55654#false} is VALID [2018-11-23 12:15:26,653 INFO L273 TraceCheckUtils]: 307: Hoare triple {55654#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55654#false} is VALID [2018-11-23 12:15:26,653 INFO L273 TraceCheckUtils]: 308: Hoare triple {55654#false} assume !!(~i~1 < 40); {55654#false} is VALID [2018-11-23 12:15:26,653 INFO L273 TraceCheckUtils]: 309: Hoare triple {55654#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {55654#false} is VALID [2018-11-23 12:15:26,653 INFO L273 TraceCheckUtils]: 310: Hoare triple {55654#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55654#false} is VALID [2018-11-23 12:15:26,653 INFO L273 TraceCheckUtils]: 311: Hoare triple {55654#false} assume !!(~i~1 < 40); {55654#false} is VALID [2018-11-23 12:15:26,654 INFO L273 TraceCheckUtils]: 312: Hoare triple {55654#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {55654#false} is VALID [2018-11-23 12:15:26,654 INFO L273 TraceCheckUtils]: 313: Hoare triple {55654#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55654#false} is VALID [2018-11-23 12:15:26,654 INFO L273 TraceCheckUtils]: 314: Hoare triple {55654#false} assume !!(~i~1 < 40); {55654#false} is VALID [2018-11-23 12:15:26,654 INFO L273 TraceCheckUtils]: 315: Hoare triple {55654#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {55654#false} is VALID [2018-11-23 12:15:26,654 INFO L273 TraceCheckUtils]: 316: Hoare triple {55654#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55654#false} is VALID [2018-11-23 12:15:26,654 INFO L273 TraceCheckUtils]: 317: Hoare triple {55654#false} assume !!(~i~1 < 40); {55654#false} is VALID [2018-11-23 12:15:26,654 INFO L273 TraceCheckUtils]: 318: Hoare triple {55654#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {55654#false} is VALID [2018-11-23 12:15:26,654 INFO L273 TraceCheckUtils]: 319: Hoare triple {55654#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55654#false} is VALID [2018-11-23 12:15:26,654 INFO L273 TraceCheckUtils]: 320: Hoare triple {55654#false} assume !!(~i~1 < 40); {55654#false} is VALID [2018-11-23 12:15:26,655 INFO L273 TraceCheckUtils]: 321: Hoare triple {55654#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {55654#false} is VALID [2018-11-23 12:15:26,655 INFO L273 TraceCheckUtils]: 322: Hoare triple {55654#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55654#false} is VALID [2018-11-23 12:15:26,655 INFO L273 TraceCheckUtils]: 323: Hoare triple {55654#false} assume !!(~i~1 < 40); {55654#false} is VALID [2018-11-23 12:15:26,655 INFO L273 TraceCheckUtils]: 324: Hoare triple {55654#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {55654#false} is VALID [2018-11-23 12:15:26,655 INFO L273 TraceCheckUtils]: 325: Hoare triple {55654#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55654#false} is VALID [2018-11-23 12:15:26,655 INFO L273 TraceCheckUtils]: 326: Hoare triple {55654#false} assume !!(~i~1 < 40); {55654#false} is VALID [2018-11-23 12:15:26,655 INFO L273 TraceCheckUtils]: 327: Hoare triple {55654#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {55654#false} is VALID [2018-11-23 12:15:26,655 INFO L273 TraceCheckUtils]: 328: Hoare triple {55654#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55654#false} is VALID [2018-11-23 12:15:26,655 INFO L273 TraceCheckUtils]: 329: Hoare triple {55654#false} assume !!(~i~1 < 40); {55654#false} is VALID [2018-11-23 12:15:26,655 INFO L273 TraceCheckUtils]: 330: Hoare triple {55654#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {55654#false} is VALID [2018-11-23 12:15:26,656 INFO L273 TraceCheckUtils]: 331: Hoare triple {55654#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55654#false} is VALID [2018-11-23 12:15:26,656 INFO L273 TraceCheckUtils]: 332: Hoare triple {55654#false} assume !!(~i~1 < 40); {55654#false} is VALID [2018-11-23 12:15:26,656 INFO L273 TraceCheckUtils]: 333: Hoare triple {55654#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {55654#false} is VALID [2018-11-23 12:15:26,656 INFO L273 TraceCheckUtils]: 334: Hoare triple {55654#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {55654#false} is VALID [2018-11-23 12:15:26,656 INFO L273 TraceCheckUtils]: 335: Hoare triple {55654#false} assume !(~i~1 < 40); {55654#false} is VALID [2018-11-23 12:15:26,656 INFO L273 TraceCheckUtils]: 336: Hoare triple {55654#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {55654#false} is VALID [2018-11-23 12:15:26,656 INFO L273 TraceCheckUtils]: 337: Hoare triple {55654#false} assume true; {55654#false} is VALID [2018-11-23 12:15:26,656 INFO L268 TraceCheckUtils]: 338: Hoare quadruple {55654#false} {55654#false} #88#return; {55654#false} is VALID [2018-11-23 12:15:26,656 INFO L273 TraceCheckUtils]: 339: Hoare triple {55654#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {55654#false} is VALID [2018-11-23 12:15:26,656 INFO L273 TraceCheckUtils]: 340: Hoare triple {55654#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {55654#false} is VALID [2018-11-23 12:15:26,657 INFO L273 TraceCheckUtils]: 341: Hoare triple {55654#false} assume !false; {55654#false} is VALID [2018-11-23 12:15:26,696 INFO L134 CoverageAnalysis]: Checked inductivity of 10483 backedges. 4492 proven. 144 refuted. 0 times theorem prover too weak. 5847 trivial. 0 not checked. [2018-11-23 12:15:26,717 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:15:26,718 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [15] total 15 [2018-11-23 12:15:26,718 INFO L78 Accepts]: Start accepts. Automaton has 15 states. Word has length 342 [2018-11-23 12:15:26,718 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:15:26,718 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 15 states. [2018-11-23 12:15:26,789 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 67 edges. 67 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:15:26,789 INFO L459 AbstractCegarLoop]: Interpolant automaton has 15 states [2018-11-23 12:15:26,790 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2018-11-23 12:15:26,790 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=105, Invalid=105, Unknown=0, NotChecked=0, Total=210 [2018-11-23 12:15:26,790 INFO L87 Difference]: Start difference. First operand 171 states and 189 transitions. Second operand 15 states. [2018-11-23 12:15:27,015 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:27,015 INFO L93 Difference]: Finished difference Result 266 states and 299 transitions. [2018-11-23 12:15:27,015 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2018-11-23 12:15:27,015 INFO L78 Accepts]: Start accepts. Automaton has 15 states. Word has length 342 [2018-11-23 12:15:27,015 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:15:27,015 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 15 states. [2018-11-23 12:15:27,016 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 80 transitions. [2018-11-23 12:15:27,016 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 15 states. [2018-11-23 12:15:27,017 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 80 transitions. [2018-11-23 12:15:27,017 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 15 states and 80 transitions. [2018-11-23 12:15:27,086 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 80 edges. 80 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:15:27,091 INFO L225 Difference]: With dead ends: 266 [2018-11-23 12:15:27,091 INFO L226 Difference]: Without dead ends: 174 [2018-11-23 12:15:27,091 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 341 GetRequests, 328 SyntacticMatches, 0 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=105, Invalid=105, Unknown=0, NotChecked=0, Total=210 [2018-11-23 12:15:27,092 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 174 states. [2018-11-23 12:15:27,204 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 174 to 173. [2018-11-23 12:15:27,204 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:15:27,204 INFO L82 GeneralOperation]: Start isEquivalent. First operand 174 states. Second operand 173 states. [2018-11-23 12:15:27,205 INFO L74 IsIncluded]: Start isIncluded. First operand 174 states. Second operand 173 states. [2018-11-23 12:15:27,205 INFO L87 Difference]: Start difference. First operand 174 states. Second operand 173 states. [2018-11-23 12:15:27,208 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:27,208 INFO L93 Difference]: Finished difference Result 174 states and 192 transitions. [2018-11-23 12:15:27,208 INFO L276 IsEmpty]: Start isEmpty. Operand 174 states and 192 transitions. [2018-11-23 12:15:27,208 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:15:27,209 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:15:27,209 INFO L74 IsIncluded]: Start isIncluded. First operand 173 states. Second operand 174 states. [2018-11-23 12:15:27,209 INFO L87 Difference]: Start difference. First operand 173 states. Second operand 174 states. [2018-11-23 12:15:27,211 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:27,211 INFO L93 Difference]: Finished difference Result 174 states and 192 transitions. [2018-11-23 12:15:27,211 INFO L276 IsEmpty]: Start isEmpty. Operand 174 states and 192 transitions. [2018-11-23 12:15:27,212 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:15:27,212 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:15:27,212 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:15:27,212 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:15:27,212 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 173 states. [2018-11-23 12:15:27,214 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 173 states to 173 states and 191 transitions. [2018-11-23 12:15:27,214 INFO L78 Accepts]: Start accepts. Automaton has 173 states and 191 transitions. Word has length 342 [2018-11-23 12:15:27,215 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:15:27,215 INFO L480 AbstractCegarLoop]: Abstraction has 173 states and 191 transitions. [2018-11-23 12:15:27,215 INFO L481 AbstractCegarLoop]: Interpolant automaton has 15 states. [2018-11-23 12:15:27,215 INFO L276 IsEmpty]: Start isEmpty. Operand 173 states and 191 transitions. [2018-11-23 12:15:27,216 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 345 [2018-11-23 12:15:27,216 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:15:27,216 INFO L402 BasicCegarLoop]: trace histogram [81, 81, 42, 39, 19, 19, 13, 13, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:15:27,217 INFO L423 AbstractCegarLoop]: === Iteration 54 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:15:27,217 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:15:27,217 INFO L82 PathProgramCache]: Analyzing trace with hash 1785513374, now seen corresponding path program 49 times [2018-11-23 12:15:27,217 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:15:27,217 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:15:27,218 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:15:27,218 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:15:27,218 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:15:27,233 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:15:27,233 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:15:27,233 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 55 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 55 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:15:27,249 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:15:27,360 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:15:27,443 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:15:27,445 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:15:27,941 INFO L256 TraceCheckUtils]: 0: Hoare triple {57654#true} call ULTIMATE.init(); {57654#true} is VALID [2018-11-23 12:15:27,941 INFO L273 TraceCheckUtils]: 1: Hoare triple {57654#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {57654#true} is VALID [2018-11-23 12:15:27,941 INFO L273 TraceCheckUtils]: 2: Hoare triple {57654#true} assume true; {57654#true} is VALID [2018-11-23 12:15:27,941 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {57654#true} {57654#true} #78#return; {57654#true} is VALID [2018-11-23 12:15:27,942 INFO L256 TraceCheckUtils]: 4: Hoare triple {57654#true} call #t~ret12 := main(); {57654#true} is VALID [2018-11-23 12:15:27,942 INFO L273 TraceCheckUtils]: 5: Hoare triple {57654#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {57654#true} is VALID [2018-11-23 12:15:27,942 INFO L256 TraceCheckUtils]: 6: Hoare triple {57654#true} call init_nondet(~#x~0.base, ~#x~0.offset); {57654#true} is VALID [2018-11-23 12:15:27,942 INFO L273 TraceCheckUtils]: 7: Hoare triple {57654#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {57680#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:15:27,943 INFO L273 TraceCheckUtils]: 8: Hoare triple {57680#(<= init_nondet_~i~0 0)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {57680#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:15:27,944 INFO L273 TraceCheckUtils]: 9: Hoare triple {57680#(<= init_nondet_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {57687#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:15:27,944 INFO L273 TraceCheckUtils]: 10: Hoare triple {57687#(<= init_nondet_~i~0 1)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {57687#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:15:27,944 INFO L273 TraceCheckUtils]: 11: Hoare triple {57687#(<= init_nondet_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {57694#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:15:27,945 INFO L273 TraceCheckUtils]: 12: Hoare triple {57694#(<= init_nondet_~i~0 2)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {57694#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:15:27,945 INFO L273 TraceCheckUtils]: 13: Hoare triple {57694#(<= init_nondet_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {57701#(<= init_nondet_~i~0 3)} is VALID [2018-11-23 12:15:27,946 INFO L273 TraceCheckUtils]: 14: Hoare triple {57701#(<= init_nondet_~i~0 3)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {57701#(<= init_nondet_~i~0 3)} is VALID [2018-11-23 12:15:27,946 INFO L273 TraceCheckUtils]: 15: Hoare triple {57701#(<= init_nondet_~i~0 3)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {57708#(<= init_nondet_~i~0 4)} is VALID [2018-11-23 12:15:27,947 INFO L273 TraceCheckUtils]: 16: Hoare triple {57708#(<= init_nondet_~i~0 4)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {57708#(<= init_nondet_~i~0 4)} is VALID [2018-11-23 12:15:27,948 INFO L273 TraceCheckUtils]: 17: Hoare triple {57708#(<= init_nondet_~i~0 4)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {57715#(<= init_nondet_~i~0 5)} is VALID [2018-11-23 12:15:27,948 INFO L273 TraceCheckUtils]: 18: Hoare triple {57715#(<= init_nondet_~i~0 5)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {57715#(<= init_nondet_~i~0 5)} is VALID [2018-11-23 12:15:27,949 INFO L273 TraceCheckUtils]: 19: Hoare triple {57715#(<= init_nondet_~i~0 5)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {57722#(<= init_nondet_~i~0 6)} is VALID [2018-11-23 12:15:27,949 INFO L273 TraceCheckUtils]: 20: Hoare triple {57722#(<= init_nondet_~i~0 6)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {57722#(<= init_nondet_~i~0 6)} is VALID [2018-11-23 12:15:27,950 INFO L273 TraceCheckUtils]: 21: Hoare triple {57722#(<= init_nondet_~i~0 6)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {57729#(<= init_nondet_~i~0 7)} is VALID [2018-11-23 12:15:27,950 INFO L273 TraceCheckUtils]: 22: Hoare triple {57729#(<= init_nondet_~i~0 7)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {57729#(<= init_nondet_~i~0 7)} is VALID [2018-11-23 12:15:27,951 INFO L273 TraceCheckUtils]: 23: Hoare triple {57729#(<= init_nondet_~i~0 7)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {57736#(<= init_nondet_~i~0 8)} is VALID [2018-11-23 12:15:27,952 INFO L273 TraceCheckUtils]: 24: Hoare triple {57736#(<= init_nondet_~i~0 8)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {57736#(<= init_nondet_~i~0 8)} is VALID [2018-11-23 12:15:27,952 INFO L273 TraceCheckUtils]: 25: Hoare triple {57736#(<= init_nondet_~i~0 8)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {57743#(<= init_nondet_~i~0 9)} is VALID [2018-11-23 12:15:27,953 INFO L273 TraceCheckUtils]: 26: Hoare triple {57743#(<= init_nondet_~i~0 9)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {57743#(<= init_nondet_~i~0 9)} is VALID [2018-11-23 12:15:27,954 INFO L273 TraceCheckUtils]: 27: Hoare triple {57743#(<= init_nondet_~i~0 9)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {57750#(<= init_nondet_~i~0 10)} is VALID [2018-11-23 12:15:27,954 INFO L273 TraceCheckUtils]: 28: Hoare triple {57750#(<= init_nondet_~i~0 10)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {57750#(<= init_nondet_~i~0 10)} is VALID [2018-11-23 12:15:27,955 INFO L273 TraceCheckUtils]: 29: Hoare triple {57750#(<= init_nondet_~i~0 10)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {57757#(<= init_nondet_~i~0 11)} is VALID [2018-11-23 12:15:27,955 INFO L273 TraceCheckUtils]: 30: Hoare triple {57757#(<= init_nondet_~i~0 11)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {57757#(<= init_nondet_~i~0 11)} is VALID [2018-11-23 12:15:27,956 INFO L273 TraceCheckUtils]: 31: Hoare triple {57757#(<= init_nondet_~i~0 11)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {57764#(<= init_nondet_~i~0 12)} is VALID [2018-11-23 12:15:27,956 INFO L273 TraceCheckUtils]: 32: Hoare triple {57764#(<= init_nondet_~i~0 12)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {57764#(<= init_nondet_~i~0 12)} is VALID [2018-11-23 12:15:27,957 INFO L273 TraceCheckUtils]: 33: Hoare triple {57764#(<= init_nondet_~i~0 12)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {57771#(<= init_nondet_~i~0 13)} is VALID [2018-11-23 12:15:27,958 INFO L273 TraceCheckUtils]: 34: Hoare triple {57771#(<= init_nondet_~i~0 13)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {57771#(<= init_nondet_~i~0 13)} is VALID [2018-11-23 12:15:27,958 INFO L273 TraceCheckUtils]: 35: Hoare triple {57771#(<= init_nondet_~i~0 13)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {57778#(<= init_nondet_~i~0 14)} is VALID [2018-11-23 12:15:27,959 INFO L273 TraceCheckUtils]: 36: Hoare triple {57778#(<= init_nondet_~i~0 14)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {57778#(<= init_nondet_~i~0 14)} is VALID [2018-11-23 12:15:27,959 INFO L273 TraceCheckUtils]: 37: Hoare triple {57778#(<= init_nondet_~i~0 14)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {57785#(<= init_nondet_~i~0 15)} is VALID [2018-11-23 12:15:27,960 INFO L273 TraceCheckUtils]: 38: Hoare triple {57785#(<= init_nondet_~i~0 15)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {57785#(<= init_nondet_~i~0 15)} is VALID [2018-11-23 12:15:27,961 INFO L273 TraceCheckUtils]: 39: Hoare triple {57785#(<= init_nondet_~i~0 15)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {57792#(<= init_nondet_~i~0 16)} is VALID [2018-11-23 12:15:27,961 INFO L273 TraceCheckUtils]: 40: Hoare triple {57792#(<= init_nondet_~i~0 16)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {57792#(<= init_nondet_~i~0 16)} is VALID [2018-11-23 12:15:27,962 INFO L273 TraceCheckUtils]: 41: Hoare triple {57792#(<= init_nondet_~i~0 16)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {57799#(<= init_nondet_~i~0 17)} is VALID [2018-11-23 12:15:27,962 INFO L273 TraceCheckUtils]: 42: Hoare triple {57799#(<= init_nondet_~i~0 17)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {57799#(<= init_nondet_~i~0 17)} is VALID [2018-11-23 12:15:27,963 INFO L273 TraceCheckUtils]: 43: Hoare triple {57799#(<= init_nondet_~i~0 17)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {57806#(<= init_nondet_~i~0 18)} is VALID [2018-11-23 12:15:27,964 INFO L273 TraceCheckUtils]: 44: Hoare triple {57806#(<= init_nondet_~i~0 18)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {57806#(<= init_nondet_~i~0 18)} is VALID [2018-11-23 12:15:27,964 INFO L273 TraceCheckUtils]: 45: Hoare triple {57806#(<= init_nondet_~i~0 18)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {57813#(<= init_nondet_~i~0 19)} is VALID [2018-11-23 12:15:27,965 INFO L273 TraceCheckUtils]: 46: Hoare triple {57813#(<= init_nondet_~i~0 19)} assume !(~i~0 < 40); {57655#false} is VALID [2018-11-23 12:15:27,965 INFO L273 TraceCheckUtils]: 47: Hoare triple {57655#false} assume true; {57655#false} is VALID [2018-11-23 12:15:27,965 INFO L268 TraceCheckUtils]: 48: Hoare quadruple {57655#false} {57654#true} #82#return; {57655#false} is VALID [2018-11-23 12:15:27,965 INFO L273 TraceCheckUtils]: 49: Hoare triple {57655#false} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {57655#false} is VALID [2018-11-23 12:15:27,966 INFO L256 TraceCheckUtils]: 50: Hoare triple {57655#false} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {57655#false} is VALID [2018-11-23 12:15:27,966 INFO L273 TraceCheckUtils]: 51: Hoare triple {57655#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {57655#false} is VALID [2018-11-23 12:15:27,966 INFO L273 TraceCheckUtils]: 52: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,966 INFO L273 TraceCheckUtils]: 53: Hoare triple {57655#false} assume !(~i~1 > 20); {57655#false} is VALID [2018-11-23 12:15:27,966 INFO L273 TraceCheckUtils]: 54: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,967 INFO L273 TraceCheckUtils]: 55: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,967 INFO L273 TraceCheckUtils]: 56: Hoare triple {57655#false} assume !(~i~1 > 20); {57655#false} is VALID [2018-11-23 12:15:27,967 INFO L273 TraceCheckUtils]: 57: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,967 INFO L273 TraceCheckUtils]: 58: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,967 INFO L273 TraceCheckUtils]: 59: Hoare triple {57655#false} assume !(~i~1 > 20); {57655#false} is VALID [2018-11-23 12:15:27,967 INFO L273 TraceCheckUtils]: 60: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,968 INFO L273 TraceCheckUtils]: 61: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,968 INFO L273 TraceCheckUtils]: 62: Hoare triple {57655#false} assume !(~i~1 > 20); {57655#false} is VALID [2018-11-23 12:15:27,968 INFO L273 TraceCheckUtils]: 63: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,968 INFO L273 TraceCheckUtils]: 64: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,968 INFO L273 TraceCheckUtils]: 65: Hoare triple {57655#false} assume !(~i~1 > 20); {57655#false} is VALID [2018-11-23 12:15:27,968 INFO L273 TraceCheckUtils]: 66: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,968 INFO L273 TraceCheckUtils]: 67: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,968 INFO L273 TraceCheckUtils]: 68: Hoare triple {57655#false} assume !(~i~1 > 20); {57655#false} is VALID [2018-11-23 12:15:27,968 INFO L273 TraceCheckUtils]: 69: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,968 INFO L273 TraceCheckUtils]: 70: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,969 INFO L273 TraceCheckUtils]: 71: Hoare triple {57655#false} assume !(~i~1 > 20); {57655#false} is VALID [2018-11-23 12:15:27,969 INFO L273 TraceCheckUtils]: 72: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,969 INFO L273 TraceCheckUtils]: 73: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,969 INFO L273 TraceCheckUtils]: 74: Hoare triple {57655#false} assume !(~i~1 > 20); {57655#false} is VALID [2018-11-23 12:15:27,969 INFO L273 TraceCheckUtils]: 75: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,969 INFO L273 TraceCheckUtils]: 76: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,969 INFO L273 TraceCheckUtils]: 77: Hoare triple {57655#false} assume !(~i~1 > 20); {57655#false} is VALID [2018-11-23 12:15:27,969 INFO L273 TraceCheckUtils]: 78: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,969 INFO L273 TraceCheckUtils]: 79: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,969 INFO L273 TraceCheckUtils]: 80: Hoare triple {57655#false} assume !(~i~1 > 20); {57655#false} is VALID [2018-11-23 12:15:27,970 INFO L273 TraceCheckUtils]: 81: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,970 INFO L273 TraceCheckUtils]: 82: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,970 INFO L273 TraceCheckUtils]: 83: Hoare triple {57655#false} assume !(~i~1 > 20); {57655#false} is VALID [2018-11-23 12:15:27,970 INFO L273 TraceCheckUtils]: 84: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,970 INFO L273 TraceCheckUtils]: 85: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,970 INFO L273 TraceCheckUtils]: 86: Hoare triple {57655#false} assume !(~i~1 > 20); {57655#false} is VALID [2018-11-23 12:15:27,970 INFO L273 TraceCheckUtils]: 87: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,970 INFO L273 TraceCheckUtils]: 88: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,970 INFO L273 TraceCheckUtils]: 89: Hoare triple {57655#false} assume !(~i~1 > 20); {57655#false} is VALID [2018-11-23 12:15:27,971 INFO L273 TraceCheckUtils]: 90: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,971 INFO L273 TraceCheckUtils]: 91: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,971 INFO L273 TraceCheckUtils]: 92: Hoare triple {57655#false} assume !(~i~1 > 20); {57655#false} is VALID [2018-11-23 12:15:27,971 INFO L273 TraceCheckUtils]: 93: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,971 INFO L273 TraceCheckUtils]: 94: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,971 INFO L273 TraceCheckUtils]: 95: Hoare triple {57655#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {57655#false} is VALID [2018-11-23 12:15:27,971 INFO L273 TraceCheckUtils]: 96: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,971 INFO L273 TraceCheckUtils]: 97: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,971 INFO L273 TraceCheckUtils]: 98: Hoare triple {57655#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {57655#false} is VALID [2018-11-23 12:15:27,971 INFO L273 TraceCheckUtils]: 99: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,972 INFO L273 TraceCheckUtils]: 100: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,972 INFO L273 TraceCheckUtils]: 101: Hoare triple {57655#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {57655#false} is VALID [2018-11-23 12:15:27,972 INFO L273 TraceCheckUtils]: 102: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,972 INFO L273 TraceCheckUtils]: 103: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,972 INFO L273 TraceCheckUtils]: 104: Hoare triple {57655#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {57655#false} is VALID [2018-11-23 12:15:27,972 INFO L273 TraceCheckUtils]: 105: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,972 INFO L273 TraceCheckUtils]: 106: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,972 INFO L273 TraceCheckUtils]: 107: Hoare triple {57655#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {57655#false} is VALID [2018-11-23 12:15:27,972 INFO L273 TraceCheckUtils]: 108: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,972 INFO L273 TraceCheckUtils]: 109: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,973 INFO L273 TraceCheckUtils]: 110: Hoare triple {57655#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {57655#false} is VALID [2018-11-23 12:15:27,973 INFO L273 TraceCheckUtils]: 111: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,973 INFO L273 TraceCheckUtils]: 112: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,973 INFO L273 TraceCheckUtils]: 113: Hoare triple {57655#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {57655#false} is VALID [2018-11-23 12:15:27,973 INFO L273 TraceCheckUtils]: 114: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,973 INFO L273 TraceCheckUtils]: 115: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,973 INFO L273 TraceCheckUtils]: 116: Hoare triple {57655#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {57655#false} is VALID [2018-11-23 12:15:27,973 INFO L273 TraceCheckUtils]: 117: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,973 INFO L273 TraceCheckUtils]: 118: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,973 INFO L273 TraceCheckUtils]: 119: Hoare triple {57655#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {57655#false} is VALID [2018-11-23 12:15:27,974 INFO L273 TraceCheckUtils]: 120: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,974 INFO L273 TraceCheckUtils]: 121: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,974 INFO L273 TraceCheckUtils]: 122: Hoare triple {57655#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {57655#false} is VALID [2018-11-23 12:15:27,974 INFO L273 TraceCheckUtils]: 123: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,974 INFO L273 TraceCheckUtils]: 124: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,974 INFO L273 TraceCheckUtils]: 125: Hoare triple {57655#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {57655#false} is VALID [2018-11-23 12:15:27,974 INFO L273 TraceCheckUtils]: 126: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,974 INFO L273 TraceCheckUtils]: 127: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,974 INFO L273 TraceCheckUtils]: 128: Hoare triple {57655#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {57655#false} is VALID [2018-11-23 12:15:27,974 INFO L273 TraceCheckUtils]: 129: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,975 INFO L273 TraceCheckUtils]: 130: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,975 INFO L273 TraceCheckUtils]: 131: Hoare triple {57655#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {57655#false} is VALID [2018-11-23 12:15:27,975 INFO L273 TraceCheckUtils]: 132: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,975 INFO L273 TraceCheckUtils]: 133: Hoare triple {57655#false} assume !(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,975 INFO L273 TraceCheckUtils]: 134: Hoare triple {57655#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {57655#false} is VALID [2018-11-23 12:15:27,975 INFO L273 TraceCheckUtils]: 135: Hoare triple {57655#false} assume true; {57655#false} is VALID [2018-11-23 12:15:27,975 INFO L268 TraceCheckUtils]: 136: Hoare quadruple {57655#false} {57655#false} #84#return; {57655#false} is VALID [2018-11-23 12:15:27,975 INFO L273 TraceCheckUtils]: 137: Hoare triple {57655#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {57655#false} is VALID [2018-11-23 12:15:27,975 INFO L256 TraceCheckUtils]: 138: Hoare triple {57655#false} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {57655#false} is VALID [2018-11-23 12:15:27,975 INFO L273 TraceCheckUtils]: 139: Hoare triple {57655#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {57655#false} is VALID [2018-11-23 12:15:27,976 INFO L273 TraceCheckUtils]: 140: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,976 INFO L273 TraceCheckUtils]: 141: Hoare triple {57655#false} assume !(~i~1 > 20); {57655#false} is VALID [2018-11-23 12:15:27,976 INFO L273 TraceCheckUtils]: 142: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,976 INFO L273 TraceCheckUtils]: 143: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,976 INFO L273 TraceCheckUtils]: 144: Hoare triple {57655#false} assume !(~i~1 > 20); {57655#false} is VALID [2018-11-23 12:15:27,976 INFO L273 TraceCheckUtils]: 145: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,976 INFO L273 TraceCheckUtils]: 146: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,976 INFO L273 TraceCheckUtils]: 147: Hoare triple {57655#false} assume !(~i~1 > 20); {57655#false} is VALID [2018-11-23 12:15:27,976 INFO L273 TraceCheckUtils]: 148: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,976 INFO L273 TraceCheckUtils]: 149: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,977 INFO L273 TraceCheckUtils]: 150: Hoare triple {57655#false} assume !(~i~1 > 20); {57655#false} is VALID [2018-11-23 12:15:27,977 INFO L273 TraceCheckUtils]: 151: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,977 INFO L273 TraceCheckUtils]: 152: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,977 INFO L273 TraceCheckUtils]: 153: Hoare triple {57655#false} assume !(~i~1 > 20); {57655#false} is VALID [2018-11-23 12:15:27,977 INFO L273 TraceCheckUtils]: 154: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,977 INFO L273 TraceCheckUtils]: 155: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,977 INFO L273 TraceCheckUtils]: 156: Hoare triple {57655#false} assume !(~i~1 > 20); {57655#false} is VALID [2018-11-23 12:15:27,977 INFO L273 TraceCheckUtils]: 157: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,977 INFO L273 TraceCheckUtils]: 158: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,977 INFO L273 TraceCheckUtils]: 159: Hoare triple {57655#false} assume !(~i~1 > 20); {57655#false} is VALID [2018-11-23 12:15:27,978 INFO L273 TraceCheckUtils]: 160: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,978 INFO L273 TraceCheckUtils]: 161: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,978 INFO L273 TraceCheckUtils]: 162: Hoare triple {57655#false} assume !(~i~1 > 20); {57655#false} is VALID [2018-11-23 12:15:27,978 INFO L273 TraceCheckUtils]: 163: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,978 INFO L273 TraceCheckUtils]: 164: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,978 INFO L273 TraceCheckUtils]: 165: Hoare triple {57655#false} assume !(~i~1 > 20); {57655#false} is VALID [2018-11-23 12:15:27,978 INFO L273 TraceCheckUtils]: 166: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,978 INFO L273 TraceCheckUtils]: 167: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,978 INFO L273 TraceCheckUtils]: 168: Hoare triple {57655#false} assume !(~i~1 > 20); {57655#false} is VALID [2018-11-23 12:15:27,978 INFO L273 TraceCheckUtils]: 169: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,979 INFO L273 TraceCheckUtils]: 170: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,979 INFO L273 TraceCheckUtils]: 171: Hoare triple {57655#false} assume !(~i~1 > 20); {57655#false} is VALID [2018-11-23 12:15:27,979 INFO L273 TraceCheckUtils]: 172: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,979 INFO L273 TraceCheckUtils]: 173: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,979 INFO L273 TraceCheckUtils]: 174: Hoare triple {57655#false} assume !(~i~1 > 20); {57655#false} is VALID [2018-11-23 12:15:27,979 INFO L273 TraceCheckUtils]: 175: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,979 INFO L273 TraceCheckUtils]: 176: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,979 INFO L273 TraceCheckUtils]: 177: Hoare triple {57655#false} assume !(~i~1 > 20); {57655#false} is VALID [2018-11-23 12:15:27,979 INFO L273 TraceCheckUtils]: 178: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,979 INFO L273 TraceCheckUtils]: 179: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,980 INFO L273 TraceCheckUtils]: 180: Hoare triple {57655#false} assume !(~i~1 > 20); {57655#false} is VALID [2018-11-23 12:15:27,980 INFO L273 TraceCheckUtils]: 181: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,980 INFO L273 TraceCheckUtils]: 182: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,980 INFO L273 TraceCheckUtils]: 183: Hoare triple {57655#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {57655#false} is VALID [2018-11-23 12:15:27,980 INFO L273 TraceCheckUtils]: 184: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,980 INFO L273 TraceCheckUtils]: 185: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,980 INFO L273 TraceCheckUtils]: 186: Hoare triple {57655#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {57655#false} is VALID [2018-11-23 12:15:27,980 INFO L273 TraceCheckUtils]: 187: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,980 INFO L273 TraceCheckUtils]: 188: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,980 INFO L273 TraceCheckUtils]: 189: Hoare triple {57655#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {57655#false} is VALID [2018-11-23 12:15:27,981 INFO L273 TraceCheckUtils]: 190: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,981 INFO L273 TraceCheckUtils]: 191: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,981 INFO L273 TraceCheckUtils]: 192: Hoare triple {57655#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {57655#false} is VALID [2018-11-23 12:15:27,981 INFO L273 TraceCheckUtils]: 193: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,981 INFO L273 TraceCheckUtils]: 194: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,981 INFO L273 TraceCheckUtils]: 195: Hoare triple {57655#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {57655#false} is VALID [2018-11-23 12:15:27,981 INFO L273 TraceCheckUtils]: 196: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,981 INFO L273 TraceCheckUtils]: 197: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,981 INFO L273 TraceCheckUtils]: 198: Hoare triple {57655#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {57655#false} is VALID [2018-11-23 12:15:27,982 INFO L273 TraceCheckUtils]: 199: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,982 INFO L273 TraceCheckUtils]: 200: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,982 INFO L273 TraceCheckUtils]: 201: Hoare triple {57655#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {57655#false} is VALID [2018-11-23 12:15:27,982 INFO L273 TraceCheckUtils]: 202: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,982 INFO L273 TraceCheckUtils]: 203: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,982 INFO L273 TraceCheckUtils]: 204: Hoare triple {57655#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {57655#false} is VALID [2018-11-23 12:15:27,982 INFO L273 TraceCheckUtils]: 205: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,982 INFO L273 TraceCheckUtils]: 206: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,982 INFO L273 TraceCheckUtils]: 207: Hoare triple {57655#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {57655#false} is VALID [2018-11-23 12:15:27,982 INFO L273 TraceCheckUtils]: 208: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,982 INFO L273 TraceCheckUtils]: 209: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,983 INFO L273 TraceCheckUtils]: 210: Hoare triple {57655#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {57655#false} is VALID [2018-11-23 12:15:27,983 INFO L273 TraceCheckUtils]: 211: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,983 INFO L273 TraceCheckUtils]: 212: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,983 INFO L273 TraceCheckUtils]: 213: Hoare triple {57655#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {57655#false} is VALID [2018-11-23 12:15:27,983 INFO L273 TraceCheckUtils]: 214: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,983 INFO L273 TraceCheckUtils]: 215: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,983 INFO L273 TraceCheckUtils]: 216: Hoare triple {57655#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {57655#false} is VALID [2018-11-23 12:15:27,983 INFO L273 TraceCheckUtils]: 217: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,983 INFO L273 TraceCheckUtils]: 218: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,984 INFO L273 TraceCheckUtils]: 219: Hoare triple {57655#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {57655#false} is VALID [2018-11-23 12:15:27,984 INFO L273 TraceCheckUtils]: 220: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,984 INFO L273 TraceCheckUtils]: 221: Hoare triple {57655#false} assume !(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,984 INFO L273 TraceCheckUtils]: 222: Hoare triple {57655#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {57655#false} is VALID [2018-11-23 12:15:27,984 INFO L273 TraceCheckUtils]: 223: Hoare triple {57655#false} assume true; {57655#false} is VALID [2018-11-23 12:15:27,984 INFO L268 TraceCheckUtils]: 224: Hoare quadruple {57655#false} {57655#false} #86#return; {57655#false} is VALID [2018-11-23 12:15:27,984 INFO L273 TraceCheckUtils]: 225: Hoare triple {57655#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {57655#false} is VALID [2018-11-23 12:15:27,984 INFO L273 TraceCheckUtils]: 226: Hoare triple {57655#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {57655#false} is VALID [2018-11-23 12:15:27,984 INFO L273 TraceCheckUtils]: 227: Hoare triple {57655#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {57655#false} is VALID [2018-11-23 12:15:27,984 INFO L273 TraceCheckUtils]: 228: Hoare triple {57655#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {57655#false} is VALID [2018-11-23 12:15:27,985 INFO L273 TraceCheckUtils]: 229: Hoare triple {57655#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {57655#false} is VALID [2018-11-23 12:15:27,985 INFO L273 TraceCheckUtils]: 230: Hoare triple {57655#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {57655#false} is VALID [2018-11-23 12:15:27,985 INFO L273 TraceCheckUtils]: 231: Hoare triple {57655#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {57655#false} is VALID [2018-11-23 12:15:27,985 INFO L273 TraceCheckUtils]: 232: Hoare triple {57655#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {57655#false} is VALID [2018-11-23 12:15:27,985 INFO L273 TraceCheckUtils]: 233: Hoare triple {57655#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {57655#false} is VALID [2018-11-23 12:15:27,985 INFO L273 TraceCheckUtils]: 234: Hoare triple {57655#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {57655#false} is VALID [2018-11-23 12:15:27,985 INFO L273 TraceCheckUtils]: 235: Hoare triple {57655#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {57655#false} is VALID [2018-11-23 12:15:27,985 INFO L273 TraceCheckUtils]: 236: Hoare triple {57655#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {57655#false} is VALID [2018-11-23 12:15:27,985 INFO L273 TraceCheckUtils]: 237: Hoare triple {57655#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {57655#false} is VALID [2018-11-23 12:15:27,985 INFO L273 TraceCheckUtils]: 238: Hoare triple {57655#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {57655#false} is VALID [2018-11-23 12:15:27,986 INFO L273 TraceCheckUtils]: 239: Hoare triple {57655#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {57655#false} is VALID [2018-11-23 12:15:27,986 INFO L273 TraceCheckUtils]: 240: Hoare triple {57655#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {57655#false} is VALID [2018-11-23 12:15:27,986 INFO L273 TraceCheckUtils]: 241: Hoare triple {57655#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {57655#false} is VALID [2018-11-23 12:15:27,986 INFO L273 TraceCheckUtils]: 242: Hoare triple {57655#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {57655#false} is VALID [2018-11-23 12:15:27,986 INFO L273 TraceCheckUtils]: 243: Hoare triple {57655#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {57655#false} is VALID [2018-11-23 12:15:27,986 INFO L273 TraceCheckUtils]: 244: Hoare triple {57655#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {57655#false} is VALID [2018-11-23 12:15:27,986 INFO L273 TraceCheckUtils]: 245: Hoare triple {57655#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {57655#false} is VALID [2018-11-23 12:15:27,986 INFO L273 TraceCheckUtils]: 246: Hoare triple {57655#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {57655#false} is VALID [2018-11-23 12:15:27,986 INFO L273 TraceCheckUtils]: 247: Hoare triple {57655#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {57655#false} is VALID [2018-11-23 12:15:27,986 INFO L273 TraceCheckUtils]: 248: Hoare triple {57655#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {57655#false} is VALID [2018-11-23 12:15:27,987 INFO L273 TraceCheckUtils]: 249: Hoare triple {57655#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {57655#false} is VALID [2018-11-23 12:15:27,987 INFO L273 TraceCheckUtils]: 250: Hoare triple {57655#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {57655#false} is VALID [2018-11-23 12:15:27,987 INFO L273 TraceCheckUtils]: 251: Hoare triple {57655#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {57655#false} is VALID [2018-11-23 12:15:27,987 INFO L273 TraceCheckUtils]: 252: Hoare triple {57655#false} assume !(~i~2 < 39); {57655#false} is VALID [2018-11-23 12:15:27,987 INFO L273 TraceCheckUtils]: 253: Hoare triple {57655#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {57655#false} is VALID [2018-11-23 12:15:27,987 INFO L256 TraceCheckUtils]: 254: Hoare triple {57655#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {57655#false} is VALID [2018-11-23 12:15:27,987 INFO L273 TraceCheckUtils]: 255: Hoare triple {57655#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {57655#false} is VALID [2018-11-23 12:15:27,987 INFO L273 TraceCheckUtils]: 256: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,987 INFO L273 TraceCheckUtils]: 257: Hoare triple {57655#false} assume !(~i~1 > 20); {57655#false} is VALID [2018-11-23 12:15:27,987 INFO L273 TraceCheckUtils]: 258: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,988 INFO L273 TraceCheckUtils]: 259: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,988 INFO L273 TraceCheckUtils]: 260: Hoare triple {57655#false} assume !(~i~1 > 20); {57655#false} is VALID [2018-11-23 12:15:27,988 INFO L273 TraceCheckUtils]: 261: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,988 INFO L273 TraceCheckUtils]: 262: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,988 INFO L273 TraceCheckUtils]: 263: Hoare triple {57655#false} assume !(~i~1 > 20); {57655#false} is VALID [2018-11-23 12:15:27,988 INFO L273 TraceCheckUtils]: 264: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,988 INFO L273 TraceCheckUtils]: 265: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,988 INFO L273 TraceCheckUtils]: 266: Hoare triple {57655#false} assume !(~i~1 > 20); {57655#false} is VALID [2018-11-23 12:15:27,988 INFO L273 TraceCheckUtils]: 267: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,988 INFO L273 TraceCheckUtils]: 268: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,989 INFO L273 TraceCheckUtils]: 269: Hoare triple {57655#false} assume !(~i~1 > 20); {57655#false} is VALID [2018-11-23 12:15:27,989 INFO L273 TraceCheckUtils]: 270: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,989 INFO L273 TraceCheckUtils]: 271: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,989 INFO L273 TraceCheckUtils]: 272: Hoare triple {57655#false} assume !(~i~1 > 20); {57655#false} is VALID [2018-11-23 12:15:27,989 INFO L273 TraceCheckUtils]: 273: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,989 INFO L273 TraceCheckUtils]: 274: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,989 INFO L273 TraceCheckUtils]: 275: Hoare triple {57655#false} assume !(~i~1 > 20); {57655#false} is VALID [2018-11-23 12:15:27,989 INFO L273 TraceCheckUtils]: 276: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,989 INFO L273 TraceCheckUtils]: 277: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,989 INFO L273 TraceCheckUtils]: 278: Hoare triple {57655#false} assume !(~i~1 > 20); {57655#false} is VALID [2018-11-23 12:15:27,990 INFO L273 TraceCheckUtils]: 279: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,990 INFO L273 TraceCheckUtils]: 280: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,990 INFO L273 TraceCheckUtils]: 281: Hoare triple {57655#false} assume !(~i~1 > 20); {57655#false} is VALID [2018-11-23 12:15:27,990 INFO L273 TraceCheckUtils]: 282: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,990 INFO L273 TraceCheckUtils]: 283: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,990 INFO L273 TraceCheckUtils]: 284: Hoare triple {57655#false} assume !(~i~1 > 20); {57655#false} is VALID [2018-11-23 12:15:27,990 INFO L273 TraceCheckUtils]: 285: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,990 INFO L273 TraceCheckUtils]: 286: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,990 INFO L273 TraceCheckUtils]: 287: Hoare triple {57655#false} assume !(~i~1 > 20); {57655#false} is VALID [2018-11-23 12:15:27,990 INFO L273 TraceCheckUtils]: 288: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,991 INFO L273 TraceCheckUtils]: 289: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,991 INFO L273 TraceCheckUtils]: 290: Hoare triple {57655#false} assume !(~i~1 > 20); {57655#false} is VALID [2018-11-23 12:15:27,991 INFO L273 TraceCheckUtils]: 291: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,991 INFO L273 TraceCheckUtils]: 292: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,991 INFO L273 TraceCheckUtils]: 293: Hoare triple {57655#false} assume !(~i~1 > 20); {57655#false} is VALID [2018-11-23 12:15:27,991 INFO L273 TraceCheckUtils]: 294: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,991 INFO L273 TraceCheckUtils]: 295: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,991 INFO L273 TraceCheckUtils]: 296: Hoare triple {57655#false} assume !(~i~1 > 20); {57655#false} is VALID [2018-11-23 12:15:27,991 INFO L273 TraceCheckUtils]: 297: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,991 INFO L273 TraceCheckUtils]: 298: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,992 INFO L273 TraceCheckUtils]: 299: Hoare triple {57655#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {57655#false} is VALID [2018-11-23 12:15:27,992 INFO L273 TraceCheckUtils]: 300: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,992 INFO L273 TraceCheckUtils]: 301: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,992 INFO L273 TraceCheckUtils]: 302: Hoare triple {57655#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {57655#false} is VALID [2018-11-23 12:15:27,992 INFO L273 TraceCheckUtils]: 303: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,992 INFO L273 TraceCheckUtils]: 304: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,992 INFO L273 TraceCheckUtils]: 305: Hoare triple {57655#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {57655#false} is VALID [2018-11-23 12:15:27,992 INFO L273 TraceCheckUtils]: 306: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,992 INFO L273 TraceCheckUtils]: 307: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,992 INFO L273 TraceCheckUtils]: 308: Hoare triple {57655#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {57655#false} is VALID [2018-11-23 12:15:27,993 INFO L273 TraceCheckUtils]: 309: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,993 INFO L273 TraceCheckUtils]: 310: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,993 INFO L273 TraceCheckUtils]: 311: Hoare triple {57655#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {57655#false} is VALID [2018-11-23 12:15:27,993 INFO L273 TraceCheckUtils]: 312: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,993 INFO L273 TraceCheckUtils]: 313: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,993 INFO L273 TraceCheckUtils]: 314: Hoare triple {57655#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {57655#false} is VALID [2018-11-23 12:15:27,993 INFO L273 TraceCheckUtils]: 315: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,993 INFO L273 TraceCheckUtils]: 316: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,993 INFO L273 TraceCheckUtils]: 317: Hoare triple {57655#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {57655#false} is VALID [2018-11-23 12:15:27,993 INFO L273 TraceCheckUtils]: 318: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,994 INFO L273 TraceCheckUtils]: 319: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,994 INFO L273 TraceCheckUtils]: 320: Hoare triple {57655#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {57655#false} is VALID [2018-11-23 12:15:27,994 INFO L273 TraceCheckUtils]: 321: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,994 INFO L273 TraceCheckUtils]: 322: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,994 INFO L273 TraceCheckUtils]: 323: Hoare triple {57655#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {57655#false} is VALID [2018-11-23 12:15:27,994 INFO L273 TraceCheckUtils]: 324: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,994 INFO L273 TraceCheckUtils]: 325: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,994 INFO L273 TraceCheckUtils]: 326: Hoare triple {57655#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {57655#false} is VALID [2018-11-23 12:15:27,994 INFO L273 TraceCheckUtils]: 327: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,994 INFO L273 TraceCheckUtils]: 328: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,995 INFO L273 TraceCheckUtils]: 329: Hoare triple {57655#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {57655#false} is VALID [2018-11-23 12:15:27,995 INFO L273 TraceCheckUtils]: 330: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,995 INFO L273 TraceCheckUtils]: 331: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,995 INFO L273 TraceCheckUtils]: 332: Hoare triple {57655#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {57655#false} is VALID [2018-11-23 12:15:27,995 INFO L273 TraceCheckUtils]: 333: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,995 INFO L273 TraceCheckUtils]: 334: Hoare triple {57655#false} assume !!(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,995 INFO L273 TraceCheckUtils]: 335: Hoare triple {57655#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {57655#false} is VALID [2018-11-23 12:15:27,995 INFO L273 TraceCheckUtils]: 336: Hoare triple {57655#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {57655#false} is VALID [2018-11-23 12:15:27,995 INFO L273 TraceCheckUtils]: 337: Hoare triple {57655#false} assume !(~i~1 < 40); {57655#false} is VALID [2018-11-23 12:15:27,995 INFO L273 TraceCheckUtils]: 338: Hoare triple {57655#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {57655#false} is VALID [2018-11-23 12:15:27,996 INFO L273 TraceCheckUtils]: 339: Hoare triple {57655#false} assume true; {57655#false} is VALID [2018-11-23 12:15:27,996 INFO L268 TraceCheckUtils]: 340: Hoare quadruple {57655#false} {57655#false} #88#return; {57655#false} is VALID [2018-11-23 12:15:27,996 INFO L273 TraceCheckUtils]: 341: Hoare triple {57655#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {57655#false} is VALID [2018-11-23 12:15:27,996 INFO L273 TraceCheckUtils]: 342: Hoare triple {57655#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {57655#false} is VALID [2018-11-23 12:15:27,996 INFO L273 TraceCheckUtils]: 343: Hoare triple {57655#false} assume !false; {57655#false} is VALID [2018-11-23 12:15:28,037 INFO L134 CoverageAnalysis]: Checked inductivity of 10508 backedges. 0 proven. 361 refuted. 0 times theorem prover too weak. 10147 trivial. 0 not checked. [2018-11-23 12:15:28,056 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:15:28,057 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [22] total 22 [2018-11-23 12:15:28,057 INFO L78 Accepts]: Start accepts. Automaton has 22 states. Word has length 344 [2018-11-23 12:15:28,057 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:15:28,057 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 22 states. [2018-11-23 12:15:28,136 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-23 12:15:28,137 INFO L459 AbstractCegarLoop]: Interpolant automaton has 22 states [2018-11-23 12:15:28,137 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2018-11-23 12:15:28,137 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=231, Invalid=231, Unknown=0, NotChecked=0, Total=462 [2018-11-23 12:15:28,137 INFO L87 Difference]: Start difference. First operand 173 states and 191 transitions. Second operand 22 states. [2018-11-23 12:15:29,116 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:29,116 INFO L93 Difference]: Finished difference Result 302 states and 338 transitions. [2018-11-23 12:15:29,116 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2018-11-23 12:15:29,116 INFO L78 Accepts]: Start accepts. Automaton has 22 states. Word has length 344 [2018-11-23 12:15:29,116 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:15:29,116 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 22 states. [2018-11-23 12:15:29,117 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 106 transitions. [2018-11-23 12:15:29,117 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 22 states. [2018-11-23 12:15:29,118 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 106 transitions. [2018-11-23 12:15:29,118 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 22 states and 106 transitions. [2018-11-23 12:15:29,213 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 106 edges. 106 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:15:29,221 INFO L225 Difference]: With dead ends: 302 [2018-11-23 12:15:29,221 INFO L226 Difference]: Without dead ends: 176 [2018-11-23 12:15:29,222 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 343 GetRequests, 323 SyntacticMatches, 0 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=231, Invalid=231, Unknown=0, NotChecked=0, Total=462 [2018-11-23 12:15:29,222 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 176 states. [2018-11-23 12:15:29,406 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 176 to 175. [2018-11-23 12:15:29,406 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:15:29,406 INFO L82 GeneralOperation]: Start isEquivalent. First operand 176 states. Second operand 175 states. [2018-11-23 12:15:29,406 INFO L74 IsIncluded]: Start isIncluded. First operand 176 states. Second operand 175 states. [2018-11-23 12:15:29,406 INFO L87 Difference]: Start difference. First operand 176 states. Second operand 175 states. [2018-11-23 12:15:29,409 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:29,409 INFO L93 Difference]: Finished difference Result 176 states and 194 transitions. [2018-11-23 12:15:29,409 INFO L276 IsEmpty]: Start isEmpty. Operand 176 states and 194 transitions. [2018-11-23 12:15:29,410 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:15:29,410 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:15:29,410 INFO L74 IsIncluded]: Start isIncluded. First operand 175 states. Second operand 176 states. [2018-11-23 12:15:29,410 INFO L87 Difference]: Start difference. First operand 175 states. Second operand 176 states. [2018-11-23 12:15:29,413 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:29,413 INFO L93 Difference]: Finished difference Result 176 states and 194 transitions. [2018-11-23 12:15:29,413 INFO L276 IsEmpty]: Start isEmpty. Operand 176 states and 194 transitions. [2018-11-23 12:15:29,413 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:15:29,414 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:15:29,414 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:15:29,414 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:15:29,414 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 175 states. [2018-11-23 12:15:29,417 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 175 states to 175 states and 193 transitions. [2018-11-23 12:15:29,417 INFO L78 Accepts]: Start accepts. Automaton has 175 states and 193 transitions. Word has length 344 [2018-11-23 12:15:29,417 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:15:29,417 INFO L480 AbstractCegarLoop]: Abstraction has 175 states and 193 transitions. [2018-11-23 12:15:29,418 INFO L481 AbstractCegarLoop]: Interpolant automaton has 22 states. [2018-11-23 12:15:29,418 INFO L276 IsEmpty]: Start isEmpty. Operand 175 states and 193 transitions. [2018-11-23 12:15:29,419 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 347 [2018-11-23 12:15:29,420 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:15:29,420 INFO L402 BasicCegarLoop]: trace histogram [81, 81, 42, 39, 20, 20, 13, 13, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:15:29,420 INFO L423 AbstractCegarLoop]: === Iteration 55 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:15:29,420 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:15:29,421 INFO L82 PathProgramCache]: Analyzing trace with hash 696828256, now seen corresponding path program 50 times [2018-11-23 12:15:29,421 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:15:29,421 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:15:29,421 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:15:29,421 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:15:29,422 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:15:29,436 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:15:29,437 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:15:29,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 56 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 56 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:15:29,456 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-23 12:15:29,573 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-23 12:15:29,573 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:15:29,642 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:15:29,644 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:15:30,815 INFO L256 TraceCheckUtils]: 0: Hoare triple {59728#true} call ULTIMATE.init(); {59728#true} is VALID [2018-11-23 12:15:30,815 INFO L273 TraceCheckUtils]: 1: Hoare triple {59728#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {59728#true} is VALID [2018-11-23 12:15:30,816 INFO L273 TraceCheckUtils]: 2: Hoare triple {59728#true} assume true; {59728#true} is VALID [2018-11-23 12:15:30,816 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {59728#true} {59728#true} #78#return; {59728#true} is VALID [2018-11-23 12:15:30,816 INFO L256 TraceCheckUtils]: 4: Hoare triple {59728#true} call #t~ret12 := main(); {59728#true} is VALID [2018-11-23 12:15:30,816 INFO L273 TraceCheckUtils]: 5: Hoare triple {59728#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {59728#true} is VALID [2018-11-23 12:15:30,816 INFO L256 TraceCheckUtils]: 6: Hoare triple {59728#true} call init_nondet(~#x~0.base, ~#x~0.offset); {59728#true} is VALID [2018-11-23 12:15:30,817 INFO L273 TraceCheckUtils]: 7: Hoare triple {59728#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {59754#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:15:30,817 INFO L273 TraceCheckUtils]: 8: Hoare triple {59754#(<= init_nondet_~i~0 0)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {59754#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:15:30,818 INFO L273 TraceCheckUtils]: 9: Hoare triple {59754#(<= init_nondet_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {59761#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:15:30,818 INFO L273 TraceCheckUtils]: 10: Hoare triple {59761#(<= init_nondet_~i~0 1)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {59761#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:15:30,819 INFO L273 TraceCheckUtils]: 11: Hoare triple {59761#(<= init_nondet_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {59768#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:15:30,819 INFO L273 TraceCheckUtils]: 12: Hoare triple {59768#(<= init_nondet_~i~0 2)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {59768#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:15:30,819 INFO L273 TraceCheckUtils]: 13: Hoare triple {59768#(<= init_nondet_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {59775#(<= init_nondet_~i~0 3)} is VALID [2018-11-23 12:15:30,820 INFO L273 TraceCheckUtils]: 14: Hoare triple {59775#(<= init_nondet_~i~0 3)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {59775#(<= init_nondet_~i~0 3)} is VALID [2018-11-23 12:15:30,821 INFO L273 TraceCheckUtils]: 15: Hoare triple {59775#(<= init_nondet_~i~0 3)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {59782#(<= init_nondet_~i~0 4)} is VALID [2018-11-23 12:15:30,821 INFO L273 TraceCheckUtils]: 16: Hoare triple {59782#(<= init_nondet_~i~0 4)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {59782#(<= init_nondet_~i~0 4)} is VALID [2018-11-23 12:15:30,822 INFO L273 TraceCheckUtils]: 17: Hoare triple {59782#(<= init_nondet_~i~0 4)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {59789#(<= init_nondet_~i~0 5)} is VALID [2018-11-23 12:15:30,822 INFO L273 TraceCheckUtils]: 18: Hoare triple {59789#(<= init_nondet_~i~0 5)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {59789#(<= init_nondet_~i~0 5)} is VALID [2018-11-23 12:15:30,823 INFO L273 TraceCheckUtils]: 19: Hoare triple {59789#(<= init_nondet_~i~0 5)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {59796#(<= init_nondet_~i~0 6)} is VALID [2018-11-23 12:15:30,824 INFO L273 TraceCheckUtils]: 20: Hoare triple {59796#(<= init_nondet_~i~0 6)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {59796#(<= init_nondet_~i~0 6)} is VALID [2018-11-23 12:15:30,824 INFO L273 TraceCheckUtils]: 21: Hoare triple {59796#(<= init_nondet_~i~0 6)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {59803#(<= init_nondet_~i~0 7)} is VALID [2018-11-23 12:15:30,825 INFO L273 TraceCheckUtils]: 22: Hoare triple {59803#(<= init_nondet_~i~0 7)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {59803#(<= init_nondet_~i~0 7)} is VALID [2018-11-23 12:15:30,825 INFO L273 TraceCheckUtils]: 23: Hoare triple {59803#(<= init_nondet_~i~0 7)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {59810#(<= init_nondet_~i~0 8)} is VALID [2018-11-23 12:15:30,826 INFO L273 TraceCheckUtils]: 24: Hoare triple {59810#(<= init_nondet_~i~0 8)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {59810#(<= init_nondet_~i~0 8)} is VALID [2018-11-23 12:15:30,827 INFO L273 TraceCheckUtils]: 25: Hoare triple {59810#(<= init_nondet_~i~0 8)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {59817#(<= init_nondet_~i~0 9)} is VALID [2018-11-23 12:15:30,827 INFO L273 TraceCheckUtils]: 26: Hoare triple {59817#(<= init_nondet_~i~0 9)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {59817#(<= init_nondet_~i~0 9)} is VALID [2018-11-23 12:15:30,828 INFO L273 TraceCheckUtils]: 27: Hoare triple {59817#(<= init_nondet_~i~0 9)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {59824#(<= init_nondet_~i~0 10)} is VALID [2018-11-23 12:15:30,828 INFO L273 TraceCheckUtils]: 28: Hoare triple {59824#(<= init_nondet_~i~0 10)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {59824#(<= init_nondet_~i~0 10)} is VALID [2018-11-23 12:15:30,829 INFO L273 TraceCheckUtils]: 29: Hoare triple {59824#(<= init_nondet_~i~0 10)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {59831#(<= init_nondet_~i~0 11)} is VALID [2018-11-23 12:15:30,830 INFO L273 TraceCheckUtils]: 30: Hoare triple {59831#(<= init_nondet_~i~0 11)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {59831#(<= init_nondet_~i~0 11)} is VALID [2018-11-23 12:15:30,830 INFO L273 TraceCheckUtils]: 31: Hoare triple {59831#(<= init_nondet_~i~0 11)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {59838#(<= init_nondet_~i~0 12)} is VALID [2018-11-23 12:15:30,831 INFO L273 TraceCheckUtils]: 32: Hoare triple {59838#(<= init_nondet_~i~0 12)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {59838#(<= init_nondet_~i~0 12)} is VALID [2018-11-23 12:15:30,832 INFO L273 TraceCheckUtils]: 33: Hoare triple {59838#(<= init_nondet_~i~0 12)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {59845#(<= init_nondet_~i~0 13)} is VALID [2018-11-23 12:15:30,832 INFO L273 TraceCheckUtils]: 34: Hoare triple {59845#(<= init_nondet_~i~0 13)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {59845#(<= init_nondet_~i~0 13)} is VALID [2018-11-23 12:15:30,833 INFO L273 TraceCheckUtils]: 35: Hoare triple {59845#(<= init_nondet_~i~0 13)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {59852#(<= init_nondet_~i~0 14)} is VALID [2018-11-23 12:15:30,833 INFO L273 TraceCheckUtils]: 36: Hoare triple {59852#(<= init_nondet_~i~0 14)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {59852#(<= init_nondet_~i~0 14)} is VALID [2018-11-23 12:15:30,834 INFO L273 TraceCheckUtils]: 37: Hoare triple {59852#(<= init_nondet_~i~0 14)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {59859#(<= init_nondet_~i~0 15)} is VALID [2018-11-23 12:15:30,835 INFO L273 TraceCheckUtils]: 38: Hoare triple {59859#(<= init_nondet_~i~0 15)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {59859#(<= init_nondet_~i~0 15)} is VALID [2018-11-23 12:15:30,835 INFO L273 TraceCheckUtils]: 39: Hoare triple {59859#(<= init_nondet_~i~0 15)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {59866#(<= init_nondet_~i~0 16)} is VALID [2018-11-23 12:15:30,836 INFO L273 TraceCheckUtils]: 40: Hoare triple {59866#(<= init_nondet_~i~0 16)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {59866#(<= init_nondet_~i~0 16)} is VALID [2018-11-23 12:15:30,837 INFO L273 TraceCheckUtils]: 41: Hoare triple {59866#(<= init_nondet_~i~0 16)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {59873#(<= init_nondet_~i~0 17)} is VALID [2018-11-23 12:15:30,837 INFO L273 TraceCheckUtils]: 42: Hoare triple {59873#(<= init_nondet_~i~0 17)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {59873#(<= init_nondet_~i~0 17)} is VALID [2018-11-23 12:15:30,838 INFO L273 TraceCheckUtils]: 43: Hoare triple {59873#(<= init_nondet_~i~0 17)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {59880#(<= init_nondet_~i~0 18)} is VALID [2018-11-23 12:15:30,838 INFO L273 TraceCheckUtils]: 44: Hoare triple {59880#(<= init_nondet_~i~0 18)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {59880#(<= init_nondet_~i~0 18)} is VALID [2018-11-23 12:15:30,839 INFO L273 TraceCheckUtils]: 45: Hoare triple {59880#(<= init_nondet_~i~0 18)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {59887#(<= init_nondet_~i~0 19)} is VALID [2018-11-23 12:15:30,840 INFO L273 TraceCheckUtils]: 46: Hoare triple {59887#(<= init_nondet_~i~0 19)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {59887#(<= init_nondet_~i~0 19)} is VALID [2018-11-23 12:15:30,840 INFO L273 TraceCheckUtils]: 47: Hoare triple {59887#(<= init_nondet_~i~0 19)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {59894#(<= init_nondet_~i~0 20)} is VALID [2018-11-23 12:15:30,841 INFO L273 TraceCheckUtils]: 48: Hoare triple {59894#(<= init_nondet_~i~0 20)} assume !(~i~0 < 40); {59729#false} is VALID [2018-11-23 12:15:30,841 INFO L273 TraceCheckUtils]: 49: Hoare triple {59729#false} assume true; {59729#false} is VALID [2018-11-23 12:15:30,841 INFO L268 TraceCheckUtils]: 50: Hoare quadruple {59729#false} {59728#true} #82#return; {59729#false} is VALID [2018-11-23 12:15:30,842 INFO L273 TraceCheckUtils]: 51: Hoare triple {59729#false} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {59729#false} is VALID [2018-11-23 12:15:30,842 INFO L256 TraceCheckUtils]: 52: Hoare triple {59729#false} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {59729#false} is VALID [2018-11-23 12:15:30,842 INFO L273 TraceCheckUtils]: 53: Hoare triple {59729#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {59729#false} is VALID [2018-11-23 12:15:30,842 INFO L273 TraceCheckUtils]: 54: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,842 INFO L273 TraceCheckUtils]: 55: Hoare triple {59729#false} assume !(~i~1 > 20); {59729#false} is VALID [2018-11-23 12:15:30,842 INFO L273 TraceCheckUtils]: 56: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,843 INFO L273 TraceCheckUtils]: 57: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,843 INFO L273 TraceCheckUtils]: 58: Hoare triple {59729#false} assume !(~i~1 > 20); {59729#false} is VALID [2018-11-23 12:15:30,843 INFO L273 TraceCheckUtils]: 59: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,843 INFO L273 TraceCheckUtils]: 60: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,843 INFO L273 TraceCheckUtils]: 61: Hoare triple {59729#false} assume !(~i~1 > 20); {59729#false} is VALID [2018-11-23 12:15:30,844 INFO L273 TraceCheckUtils]: 62: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,844 INFO L273 TraceCheckUtils]: 63: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,844 INFO L273 TraceCheckUtils]: 64: Hoare triple {59729#false} assume !(~i~1 > 20); {59729#false} is VALID [2018-11-23 12:15:30,844 INFO L273 TraceCheckUtils]: 65: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,844 INFO L273 TraceCheckUtils]: 66: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,844 INFO L273 TraceCheckUtils]: 67: Hoare triple {59729#false} assume !(~i~1 > 20); {59729#false} is VALID [2018-11-23 12:15:30,844 INFO L273 TraceCheckUtils]: 68: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,844 INFO L273 TraceCheckUtils]: 69: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,844 INFO L273 TraceCheckUtils]: 70: Hoare triple {59729#false} assume !(~i~1 > 20); {59729#false} is VALID [2018-11-23 12:15:30,845 INFO L273 TraceCheckUtils]: 71: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,845 INFO L273 TraceCheckUtils]: 72: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,845 INFO L273 TraceCheckUtils]: 73: Hoare triple {59729#false} assume !(~i~1 > 20); {59729#false} is VALID [2018-11-23 12:15:30,845 INFO L273 TraceCheckUtils]: 74: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,845 INFO L273 TraceCheckUtils]: 75: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,845 INFO L273 TraceCheckUtils]: 76: Hoare triple {59729#false} assume !(~i~1 > 20); {59729#false} is VALID [2018-11-23 12:15:30,845 INFO L273 TraceCheckUtils]: 77: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,845 INFO L273 TraceCheckUtils]: 78: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,845 INFO L273 TraceCheckUtils]: 79: Hoare triple {59729#false} assume !(~i~1 > 20); {59729#false} is VALID [2018-11-23 12:15:30,845 INFO L273 TraceCheckUtils]: 80: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,846 INFO L273 TraceCheckUtils]: 81: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,846 INFO L273 TraceCheckUtils]: 82: Hoare triple {59729#false} assume !(~i~1 > 20); {59729#false} is VALID [2018-11-23 12:15:30,846 INFO L273 TraceCheckUtils]: 83: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,846 INFO L273 TraceCheckUtils]: 84: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,846 INFO L273 TraceCheckUtils]: 85: Hoare triple {59729#false} assume !(~i~1 > 20); {59729#false} is VALID [2018-11-23 12:15:30,846 INFO L273 TraceCheckUtils]: 86: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,846 INFO L273 TraceCheckUtils]: 87: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,846 INFO L273 TraceCheckUtils]: 88: Hoare triple {59729#false} assume !(~i~1 > 20); {59729#false} is VALID [2018-11-23 12:15:30,846 INFO L273 TraceCheckUtils]: 89: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,846 INFO L273 TraceCheckUtils]: 90: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,847 INFO L273 TraceCheckUtils]: 91: Hoare triple {59729#false} assume !(~i~1 > 20); {59729#false} is VALID [2018-11-23 12:15:30,847 INFO L273 TraceCheckUtils]: 92: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,847 INFO L273 TraceCheckUtils]: 93: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,847 INFO L273 TraceCheckUtils]: 94: Hoare triple {59729#false} assume !(~i~1 > 20); {59729#false} is VALID [2018-11-23 12:15:30,847 INFO L273 TraceCheckUtils]: 95: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,847 INFO L273 TraceCheckUtils]: 96: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,847 INFO L273 TraceCheckUtils]: 97: Hoare triple {59729#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {59729#false} is VALID [2018-11-23 12:15:30,847 INFO L273 TraceCheckUtils]: 98: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,847 INFO L273 TraceCheckUtils]: 99: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,848 INFO L273 TraceCheckUtils]: 100: Hoare triple {59729#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {59729#false} is VALID [2018-11-23 12:15:30,848 INFO L273 TraceCheckUtils]: 101: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,848 INFO L273 TraceCheckUtils]: 102: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,848 INFO L273 TraceCheckUtils]: 103: Hoare triple {59729#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {59729#false} is VALID [2018-11-23 12:15:30,848 INFO L273 TraceCheckUtils]: 104: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,848 INFO L273 TraceCheckUtils]: 105: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,848 INFO L273 TraceCheckUtils]: 106: Hoare triple {59729#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {59729#false} is VALID [2018-11-23 12:15:30,848 INFO L273 TraceCheckUtils]: 107: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,848 INFO L273 TraceCheckUtils]: 108: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,848 INFO L273 TraceCheckUtils]: 109: Hoare triple {59729#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {59729#false} is VALID [2018-11-23 12:15:30,849 INFO L273 TraceCheckUtils]: 110: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,849 INFO L273 TraceCheckUtils]: 111: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,849 INFO L273 TraceCheckUtils]: 112: Hoare triple {59729#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {59729#false} is VALID [2018-11-23 12:15:30,849 INFO L273 TraceCheckUtils]: 113: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,849 INFO L273 TraceCheckUtils]: 114: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,849 INFO L273 TraceCheckUtils]: 115: Hoare triple {59729#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {59729#false} is VALID [2018-11-23 12:15:30,849 INFO L273 TraceCheckUtils]: 116: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,849 INFO L273 TraceCheckUtils]: 117: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,849 INFO L273 TraceCheckUtils]: 118: Hoare triple {59729#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {59729#false} is VALID [2018-11-23 12:15:30,849 INFO L273 TraceCheckUtils]: 119: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,850 INFO L273 TraceCheckUtils]: 120: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,850 INFO L273 TraceCheckUtils]: 121: Hoare triple {59729#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {59729#false} is VALID [2018-11-23 12:15:30,850 INFO L273 TraceCheckUtils]: 122: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,850 INFO L273 TraceCheckUtils]: 123: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,850 INFO L273 TraceCheckUtils]: 124: Hoare triple {59729#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {59729#false} is VALID [2018-11-23 12:15:30,850 INFO L273 TraceCheckUtils]: 125: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,850 INFO L273 TraceCheckUtils]: 126: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,850 INFO L273 TraceCheckUtils]: 127: Hoare triple {59729#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {59729#false} is VALID [2018-11-23 12:15:30,850 INFO L273 TraceCheckUtils]: 128: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,850 INFO L273 TraceCheckUtils]: 129: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,851 INFO L273 TraceCheckUtils]: 130: Hoare triple {59729#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {59729#false} is VALID [2018-11-23 12:15:30,851 INFO L273 TraceCheckUtils]: 131: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,851 INFO L273 TraceCheckUtils]: 132: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,851 INFO L273 TraceCheckUtils]: 133: Hoare triple {59729#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {59729#false} is VALID [2018-11-23 12:15:30,851 INFO L273 TraceCheckUtils]: 134: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,851 INFO L273 TraceCheckUtils]: 135: Hoare triple {59729#false} assume !(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,851 INFO L273 TraceCheckUtils]: 136: Hoare triple {59729#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {59729#false} is VALID [2018-11-23 12:15:30,851 INFO L273 TraceCheckUtils]: 137: Hoare triple {59729#false} assume true; {59729#false} is VALID [2018-11-23 12:15:30,851 INFO L268 TraceCheckUtils]: 138: Hoare quadruple {59729#false} {59729#false} #84#return; {59729#false} is VALID [2018-11-23 12:15:30,851 INFO L273 TraceCheckUtils]: 139: Hoare triple {59729#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {59729#false} is VALID [2018-11-23 12:15:30,852 INFO L256 TraceCheckUtils]: 140: Hoare triple {59729#false} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {59729#false} is VALID [2018-11-23 12:15:30,852 INFO L273 TraceCheckUtils]: 141: Hoare triple {59729#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {59729#false} is VALID [2018-11-23 12:15:30,852 INFO L273 TraceCheckUtils]: 142: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,852 INFO L273 TraceCheckUtils]: 143: Hoare triple {59729#false} assume !(~i~1 > 20); {59729#false} is VALID [2018-11-23 12:15:30,852 INFO L273 TraceCheckUtils]: 144: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,852 INFO L273 TraceCheckUtils]: 145: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,852 INFO L273 TraceCheckUtils]: 146: Hoare triple {59729#false} assume !(~i~1 > 20); {59729#false} is VALID [2018-11-23 12:15:30,852 INFO L273 TraceCheckUtils]: 147: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,852 INFO L273 TraceCheckUtils]: 148: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,852 INFO L273 TraceCheckUtils]: 149: Hoare triple {59729#false} assume !(~i~1 > 20); {59729#false} is VALID [2018-11-23 12:15:30,853 INFO L273 TraceCheckUtils]: 150: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,853 INFO L273 TraceCheckUtils]: 151: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,853 INFO L273 TraceCheckUtils]: 152: Hoare triple {59729#false} assume !(~i~1 > 20); {59729#false} is VALID [2018-11-23 12:15:30,853 INFO L273 TraceCheckUtils]: 153: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,853 INFO L273 TraceCheckUtils]: 154: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,853 INFO L273 TraceCheckUtils]: 155: Hoare triple {59729#false} assume !(~i~1 > 20); {59729#false} is VALID [2018-11-23 12:15:30,853 INFO L273 TraceCheckUtils]: 156: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,853 INFO L273 TraceCheckUtils]: 157: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,853 INFO L273 TraceCheckUtils]: 158: Hoare triple {59729#false} assume !(~i~1 > 20); {59729#false} is VALID [2018-11-23 12:15:30,853 INFO L273 TraceCheckUtils]: 159: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,854 INFO L273 TraceCheckUtils]: 160: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,854 INFO L273 TraceCheckUtils]: 161: Hoare triple {59729#false} assume !(~i~1 > 20); {59729#false} is VALID [2018-11-23 12:15:30,854 INFO L273 TraceCheckUtils]: 162: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,854 INFO L273 TraceCheckUtils]: 163: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,854 INFO L273 TraceCheckUtils]: 164: Hoare triple {59729#false} assume !(~i~1 > 20); {59729#false} is VALID [2018-11-23 12:15:30,854 INFO L273 TraceCheckUtils]: 165: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,854 INFO L273 TraceCheckUtils]: 166: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,854 INFO L273 TraceCheckUtils]: 167: Hoare triple {59729#false} assume !(~i~1 > 20); {59729#false} is VALID [2018-11-23 12:15:30,854 INFO L273 TraceCheckUtils]: 168: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,854 INFO L273 TraceCheckUtils]: 169: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,855 INFO L273 TraceCheckUtils]: 170: Hoare triple {59729#false} assume !(~i~1 > 20); {59729#false} is VALID [2018-11-23 12:15:30,855 INFO L273 TraceCheckUtils]: 171: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,855 INFO L273 TraceCheckUtils]: 172: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,855 INFO L273 TraceCheckUtils]: 173: Hoare triple {59729#false} assume !(~i~1 > 20); {59729#false} is VALID [2018-11-23 12:15:30,855 INFO L273 TraceCheckUtils]: 174: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,855 INFO L273 TraceCheckUtils]: 175: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,855 INFO L273 TraceCheckUtils]: 176: Hoare triple {59729#false} assume !(~i~1 > 20); {59729#false} is VALID [2018-11-23 12:15:30,855 INFO L273 TraceCheckUtils]: 177: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,855 INFO L273 TraceCheckUtils]: 178: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,855 INFO L273 TraceCheckUtils]: 179: Hoare triple {59729#false} assume !(~i~1 > 20); {59729#false} is VALID [2018-11-23 12:15:30,856 INFO L273 TraceCheckUtils]: 180: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,856 INFO L273 TraceCheckUtils]: 181: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,856 INFO L273 TraceCheckUtils]: 182: Hoare triple {59729#false} assume !(~i~1 > 20); {59729#false} is VALID [2018-11-23 12:15:30,856 INFO L273 TraceCheckUtils]: 183: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,856 INFO L273 TraceCheckUtils]: 184: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,856 INFO L273 TraceCheckUtils]: 185: Hoare triple {59729#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {59729#false} is VALID [2018-11-23 12:15:30,856 INFO L273 TraceCheckUtils]: 186: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,856 INFO L273 TraceCheckUtils]: 187: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,856 INFO L273 TraceCheckUtils]: 188: Hoare triple {59729#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {59729#false} is VALID [2018-11-23 12:15:30,856 INFO L273 TraceCheckUtils]: 189: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,857 INFO L273 TraceCheckUtils]: 190: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,857 INFO L273 TraceCheckUtils]: 191: Hoare triple {59729#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {59729#false} is VALID [2018-11-23 12:15:30,857 INFO L273 TraceCheckUtils]: 192: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,857 INFO L273 TraceCheckUtils]: 193: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,857 INFO L273 TraceCheckUtils]: 194: Hoare triple {59729#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {59729#false} is VALID [2018-11-23 12:15:30,857 INFO L273 TraceCheckUtils]: 195: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,857 INFO L273 TraceCheckUtils]: 196: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,857 INFO L273 TraceCheckUtils]: 197: Hoare triple {59729#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {59729#false} is VALID [2018-11-23 12:15:30,857 INFO L273 TraceCheckUtils]: 198: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,857 INFO L273 TraceCheckUtils]: 199: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,858 INFO L273 TraceCheckUtils]: 200: Hoare triple {59729#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {59729#false} is VALID [2018-11-23 12:15:30,858 INFO L273 TraceCheckUtils]: 201: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,858 INFO L273 TraceCheckUtils]: 202: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,858 INFO L273 TraceCheckUtils]: 203: Hoare triple {59729#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {59729#false} is VALID [2018-11-23 12:15:30,858 INFO L273 TraceCheckUtils]: 204: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,858 INFO L273 TraceCheckUtils]: 205: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,858 INFO L273 TraceCheckUtils]: 206: Hoare triple {59729#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {59729#false} is VALID [2018-11-23 12:15:30,858 INFO L273 TraceCheckUtils]: 207: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,858 INFO L273 TraceCheckUtils]: 208: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,858 INFO L273 TraceCheckUtils]: 209: Hoare triple {59729#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {59729#false} is VALID [2018-11-23 12:15:30,859 INFO L273 TraceCheckUtils]: 210: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,859 INFO L273 TraceCheckUtils]: 211: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,859 INFO L273 TraceCheckUtils]: 212: Hoare triple {59729#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {59729#false} is VALID [2018-11-23 12:15:30,859 INFO L273 TraceCheckUtils]: 213: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,859 INFO L273 TraceCheckUtils]: 214: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,859 INFO L273 TraceCheckUtils]: 215: Hoare triple {59729#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {59729#false} is VALID [2018-11-23 12:15:30,859 INFO L273 TraceCheckUtils]: 216: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,859 INFO L273 TraceCheckUtils]: 217: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,859 INFO L273 TraceCheckUtils]: 218: Hoare triple {59729#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {59729#false} is VALID [2018-11-23 12:15:30,859 INFO L273 TraceCheckUtils]: 219: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,860 INFO L273 TraceCheckUtils]: 220: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,860 INFO L273 TraceCheckUtils]: 221: Hoare triple {59729#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {59729#false} is VALID [2018-11-23 12:15:30,860 INFO L273 TraceCheckUtils]: 222: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,860 INFO L273 TraceCheckUtils]: 223: Hoare triple {59729#false} assume !(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,860 INFO L273 TraceCheckUtils]: 224: Hoare triple {59729#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {59729#false} is VALID [2018-11-23 12:15:30,860 INFO L273 TraceCheckUtils]: 225: Hoare triple {59729#false} assume true; {59729#false} is VALID [2018-11-23 12:15:30,860 INFO L268 TraceCheckUtils]: 226: Hoare quadruple {59729#false} {59729#false} #86#return; {59729#false} is VALID [2018-11-23 12:15:30,860 INFO L273 TraceCheckUtils]: 227: Hoare triple {59729#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {59729#false} is VALID [2018-11-23 12:15:30,860 INFO L273 TraceCheckUtils]: 228: Hoare triple {59729#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {59729#false} is VALID [2018-11-23 12:15:30,860 INFO L273 TraceCheckUtils]: 229: Hoare triple {59729#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {59729#false} is VALID [2018-11-23 12:15:30,861 INFO L273 TraceCheckUtils]: 230: Hoare triple {59729#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {59729#false} is VALID [2018-11-23 12:15:30,861 INFO L273 TraceCheckUtils]: 231: Hoare triple {59729#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {59729#false} is VALID [2018-11-23 12:15:30,861 INFO L273 TraceCheckUtils]: 232: Hoare triple {59729#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {59729#false} is VALID [2018-11-23 12:15:30,861 INFO L273 TraceCheckUtils]: 233: Hoare triple {59729#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {59729#false} is VALID [2018-11-23 12:15:30,861 INFO L273 TraceCheckUtils]: 234: Hoare triple {59729#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {59729#false} is VALID [2018-11-23 12:15:30,861 INFO L273 TraceCheckUtils]: 235: Hoare triple {59729#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {59729#false} is VALID [2018-11-23 12:15:30,861 INFO L273 TraceCheckUtils]: 236: Hoare triple {59729#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {59729#false} is VALID [2018-11-23 12:15:30,861 INFO L273 TraceCheckUtils]: 237: Hoare triple {59729#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {59729#false} is VALID [2018-11-23 12:15:30,861 INFO L273 TraceCheckUtils]: 238: Hoare triple {59729#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {59729#false} is VALID [2018-11-23 12:15:30,862 INFO L273 TraceCheckUtils]: 239: Hoare triple {59729#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {59729#false} is VALID [2018-11-23 12:15:30,862 INFO L273 TraceCheckUtils]: 240: Hoare triple {59729#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {59729#false} is VALID [2018-11-23 12:15:30,862 INFO L273 TraceCheckUtils]: 241: Hoare triple {59729#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {59729#false} is VALID [2018-11-23 12:15:30,862 INFO L273 TraceCheckUtils]: 242: Hoare triple {59729#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {59729#false} is VALID [2018-11-23 12:15:30,862 INFO L273 TraceCheckUtils]: 243: Hoare triple {59729#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {59729#false} is VALID [2018-11-23 12:15:30,862 INFO L273 TraceCheckUtils]: 244: Hoare triple {59729#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {59729#false} is VALID [2018-11-23 12:15:30,862 INFO L273 TraceCheckUtils]: 245: Hoare triple {59729#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {59729#false} is VALID [2018-11-23 12:15:30,862 INFO L273 TraceCheckUtils]: 246: Hoare triple {59729#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {59729#false} is VALID [2018-11-23 12:15:30,862 INFO L273 TraceCheckUtils]: 247: Hoare triple {59729#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {59729#false} is VALID [2018-11-23 12:15:30,862 INFO L273 TraceCheckUtils]: 248: Hoare triple {59729#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {59729#false} is VALID [2018-11-23 12:15:30,863 INFO L273 TraceCheckUtils]: 249: Hoare triple {59729#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {59729#false} is VALID [2018-11-23 12:15:30,863 INFO L273 TraceCheckUtils]: 250: Hoare triple {59729#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {59729#false} is VALID [2018-11-23 12:15:30,863 INFO L273 TraceCheckUtils]: 251: Hoare triple {59729#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {59729#false} is VALID [2018-11-23 12:15:30,863 INFO L273 TraceCheckUtils]: 252: Hoare triple {59729#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {59729#false} is VALID [2018-11-23 12:15:30,863 INFO L273 TraceCheckUtils]: 253: Hoare triple {59729#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {59729#false} is VALID [2018-11-23 12:15:30,863 INFO L273 TraceCheckUtils]: 254: Hoare triple {59729#false} assume !(~i~2 < 39); {59729#false} is VALID [2018-11-23 12:15:30,863 INFO L273 TraceCheckUtils]: 255: Hoare triple {59729#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {59729#false} is VALID [2018-11-23 12:15:30,863 INFO L256 TraceCheckUtils]: 256: Hoare triple {59729#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {59729#false} is VALID [2018-11-23 12:15:30,863 INFO L273 TraceCheckUtils]: 257: Hoare triple {59729#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {59729#false} is VALID [2018-11-23 12:15:30,863 INFO L273 TraceCheckUtils]: 258: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,864 INFO L273 TraceCheckUtils]: 259: Hoare triple {59729#false} assume !(~i~1 > 20); {59729#false} is VALID [2018-11-23 12:15:30,864 INFO L273 TraceCheckUtils]: 260: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,864 INFO L273 TraceCheckUtils]: 261: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,864 INFO L273 TraceCheckUtils]: 262: Hoare triple {59729#false} assume !(~i~1 > 20); {59729#false} is VALID [2018-11-23 12:15:30,864 INFO L273 TraceCheckUtils]: 263: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,864 INFO L273 TraceCheckUtils]: 264: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,864 INFO L273 TraceCheckUtils]: 265: Hoare triple {59729#false} assume !(~i~1 > 20); {59729#false} is VALID [2018-11-23 12:15:30,864 INFO L273 TraceCheckUtils]: 266: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,864 INFO L273 TraceCheckUtils]: 267: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,864 INFO L273 TraceCheckUtils]: 268: Hoare triple {59729#false} assume !(~i~1 > 20); {59729#false} is VALID [2018-11-23 12:15:30,865 INFO L273 TraceCheckUtils]: 269: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,865 INFO L273 TraceCheckUtils]: 270: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,865 INFO L273 TraceCheckUtils]: 271: Hoare triple {59729#false} assume !(~i~1 > 20); {59729#false} is VALID [2018-11-23 12:15:30,865 INFO L273 TraceCheckUtils]: 272: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,865 INFO L273 TraceCheckUtils]: 273: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,865 INFO L273 TraceCheckUtils]: 274: Hoare triple {59729#false} assume !(~i~1 > 20); {59729#false} is VALID [2018-11-23 12:15:30,865 INFO L273 TraceCheckUtils]: 275: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,865 INFO L273 TraceCheckUtils]: 276: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,865 INFO L273 TraceCheckUtils]: 277: Hoare triple {59729#false} assume !(~i~1 > 20); {59729#false} is VALID [2018-11-23 12:15:30,865 INFO L273 TraceCheckUtils]: 278: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,866 INFO L273 TraceCheckUtils]: 279: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,866 INFO L273 TraceCheckUtils]: 280: Hoare triple {59729#false} assume !(~i~1 > 20); {59729#false} is VALID [2018-11-23 12:15:30,866 INFO L273 TraceCheckUtils]: 281: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,866 INFO L273 TraceCheckUtils]: 282: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,866 INFO L273 TraceCheckUtils]: 283: Hoare triple {59729#false} assume !(~i~1 > 20); {59729#false} is VALID [2018-11-23 12:15:30,866 INFO L273 TraceCheckUtils]: 284: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,866 INFO L273 TraceCheckUtils]: 285: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,866 INFO L273 TraceCheckUtils]: 286: Hoare triple {59729#false} assume !(~i~1 > 20); {59729#false} is VALID [2018-11-23 12:15:30,866 INFO L273 TraceCheckUtils]: 287: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,866 INFO L273 TraceCheckUtils]: 288: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,867 INFO L273 TraceCheckUtils]: 289: Hoare triple {59729#false} assume !(~i~1 > 20); {59729#false} is VALID [2018-11-23 12:15:30,867 INFO L273 TraceCheckUtils]: 290: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,867 INFO L273 TraceCheckUtils]: 291: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,867 INFO L273 TraceCheckUtils]: 292: Hoare triple {59729#false} assume !(~i~1 > 20); {59729#false} is VALID [2018-11-23 12:15:30,867 INFO L273 TraceCheckUtils]: 293: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,867 INFO L273 TraceCheckUtils]: 294: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,867 INFO L273 TraceCheckUtils]: 295: Hoare triple {59729#false} assume !(~i~1 > 20); {59729#false} is VALID [2018-11-23 12:15:30,867 INFO L273 TraceCheckUtils]: 296: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,867 INFO L273 TraceCheckUtils]: 297: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,867 INFO L273 TraceCheckUtils]: 298: Hoare triple {59729#false} assume !(~i~1 > 20); {59729#false} is VALID [2018-11-23 12:15:30,868 INFO L273 TraceCheckUtils]: 299: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,868 INFO L273 TraceCheckUtils]: 300: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,868 INFO L273 TraceCheckUtils]: 301: Hoare triple {59729#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {59729#false} is VALID [2018-11-23 12:15:30,868 INFO L273 TraceCheckUtils]: 302: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,868 INFO L273 TraceCheckUtils]: 303: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,868 INFO L273 TraceCheckUtils]: 304: Hoare triple {59729#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {59729#false} is VALID [2018-11-23 12:15:30,868 INFO L273 TraceCheckUtils]: 305: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,868 INFO L273 TraceCheckUtils]: 306: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,868 INFO L273 TraceCheckUtils]: 307: Hoare triple {59729#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {59729#false} is VALID [2018-11-23 12:15:30,868 INFO L273 TraceCheckUtils]: 308: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,869 INFO L273 TraceCheckUtils]: 309: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,869 INFO L273 TraceCheckUtils]: 310: Hoare triple {59729#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {59729#false} is VALID [2018-11-23 12:15:30,869 INFO L273 TraceCheckUtils]: 311: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,869 INFO L273 TraceCheckUtils]: 312: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,869 INFO L273 TraceCheckUtils]: 313: Hoare triple {59729#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {59729#false} is VALID [2018-11-23 12:15:30,869 INFO L273 TraceCheckUtils]: 314: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,869 INFO L273 TraceCheckUtils]: 315: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,869 INFO L273 TraceCheckUtils]: 316: Hoare triple {59729#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {59729#false} is VALID [2018-11-23 12:15:30,869 INFO L273 TraceCheckUtils]: 317: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,869 INFO L273 TraceCheckUtils]: 318: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,870 INFO L273 TraceCheckUtils]: 319: Hoare triple {59729#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {59729#false} is VALID [2018-11-23 12:15:30,870 INFO L273 TraceCheckUtils]: 320: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,870 INFO L273 TraceCheckUtils]: 321: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,870 INFO L273 TraceCheckUtils]: 322: Hoare triple {59729#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {59729#false} is VALID [2018-11-23 12:15:30,870 INFO L273 TraceCheckUtils]: 323: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,870 INFO L273 TraceCheckUtils]: 324: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,870 INFO L273 TraceCheckUtils]: 325: Hoare triple {59729#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {59729#false} is VALID [2018-11-23 12:15:30,870 INFO L273 TraceCheckUtils]: 326: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,870 INFO L273 TraceCheckUtils]: 327: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,870 INFO L273 TraceCheckUtils]: 328: Hoare triple {59729#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {59729#false} is VALID [2018-11-23 12:15:30,871 INFO L273 TraceCheckUtils]: 329: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,871 INFO L273 TraceCheckUtils]: 330: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,871 INFO L273 TraceCheckUtils]: 331: Hoare triple {59729#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {59729#false} is VALID [2018-11-23 12:15:30,871 INFO L273 TraceCheckUtils]: 332: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,871 INFO L273 TraceCheckUtils]: 333: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,871 INFO L273 TraceCheckUtils]: 334: Hoare triple {59729#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {59729#false} is VALID [2018-11-23 12:15:30,871 INFO L273 TraceCheckUtils]: 335: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,871 INFO L273 TraceCheckUtils]: 336: Hoare triple {59729#false} assume !!(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,871 INFO L273 TraceCheckUtils]: 337: Hoare triple {59729#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {59729#false} is VALID [2018-11-23 12:15:30,871 INFO L273 TraceCheckUtils]: 338: Hoare triple {59729#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {59729#false} is VALID [2018-11-23 12:15:30,872 INFO L273 TraceCheckUtils]: 339: Hoare triple {59729#false} assume !(~i~1 < 40); {59729#false} is VALID [2018-11-23 12:15:30,872 INFO L273 TraceCheckUtils]: 340: Hoare triple {59729#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {59729#false} is VALID [2018-11-23 12:15:30,872 INFO L273 TraceCheckUtils]: 341: Hoare triple {59729#false} assume true; {59729#false} is VALID [2018-11-23 12:15:30,872 INFO L268 TraceCheckUtils]: 342: Hoare quadruple {59729#false} {59729#false} #88#return; {59729#false} is VALID [2018-11-23 12:15:30,872 INFO L273 TraceCheckUtils]: 343: Hoare triple {59729#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {59729#false} is VALID [2018-11-23 12:15:30,872 INFO L273 TraceCheckUtils]: 344: Hoare triple {59729#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {59729#false} is VALID [2018-11-23 12:15:30,872 INFO L273 TraceCheckUtils]: 345: Hoare triple {59729#false} assume !false; {59729#false} is VALID [2018-11-23 12:15:30,914 INFO L134 CoverageAnalysis]: Checked inductivity of 10547 backedges. 0 proven. 400 refuted. 0 times theorem prover too weak. 10147 trivial. 0 not checked. [2018-11-23 12:15:30,934 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:15:30,934 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [23] total 23 [2018-11-23 12:15:30,934 INFO L78 Accepts]: Start accepts. Automaton has 23 states. Word has length 346 [2018-11-23 12:15:30,935 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:15:30,935 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 23 states. [2018-11-23 12:15:31,048 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 75 edges. 75 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:15:31,048 INFO L459 AbstractCegarLoop]: Interpolant automaton has 23 states [2018-11-23 12:15:31,048 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 23 interpolants. [2018-11-23 12:15:31,049 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=253, Invalid=253, Unknown=0, NotChecked=0, Total=506 [2018-11-23 12:15:31,049 INFO L87 Difference]: Start difference. First operand 175 states and 193 transitions. Second operand 23 states. [2018-11-23 12:15:31,688 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:31,688 INFO L93 Difference]: Finished difference Result 304 states and 340 transitions. [2018-11-23 12:15:31,689 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 23 states. [2018-11-23 12:15:31,689 INFO L78 Accepts]: Start accepts. Automaton has 23 states. Word has length 346 [2018-11-23 12:15:31,689 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:15:31,689 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 23 states. [2018-11-23 12:15:31,690 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 108 transitions. [2018-11-23 12:15:31,690 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 23 states. [2018-11-23 12:15:31,690 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 108 transitions. [2018-11-23 12:15:31,690 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 23 states and 108 transitions. [2018-11-23 12:15:31,788 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 108 edges. 108 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:15:31,791 INFO L225 Difference]: With dead ends: 304 [2018-11-23 12:15:31,792 INFO L226 Difference]: Without dead ends: 178 [2018-11-23 12:15:31,792 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 345 GetRequests, 324 SyntacticMatches, 0 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=253, Invalid=253, Unknown=0, NotChecked=0, Total=506 [2018-11-23 12:15:31,793 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 178 states. [2018-11-23 12:15:32,201 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 178 to 177. [2018-11-23 12:15:32,201 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:15:32,201 INFO L82 GeneralOperation]: Start isEquivalent. First operand 178 states. Second operand 177 states. [2018-11-23 12:15:32,201 INFO L74 IsIncluded]: Start isIncluded. First operand 178 states. Second operand 177 states. [2018-11-23 12:15:32,202 INFO L87 Difference]: Start difference. First operand 178 states. Second operand 177 states. [2018-11-23 12:15:32,204 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:32,204 INFO L93 Difference]: Finished difference Result 178 states and 196 transitions. [2018-11-23 12:15:32,204 INFO L276 IsEmpty]: Start isEmpty. Operand 178 states and 196 transitions. [2018-11-23 12:15:32,205 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:15:32,205 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:15:32,205 INFO L74 IsIncluded]: Start isIncluded. First operand 177 states. Second operand 178 states. [2018-11-23 12:15:32,205 INFO L87 Difference]: Start difference. First operand 177 states. Second operand 178 states. [2018-11-23 12:15:32,207 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:32,207 INFO L93 Difference]: Finished difference Result 178 states and 196 transitions. [2018-11-23 12:15:32,207 INFO L276 IsEmpty]: Start isEmpty. Operand 178 states and 196 transitions. [2018-11-23 12:15:32,208 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:15:32,208 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:15:32,208 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:15:32,208 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:15:32,208 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 177 states. [2018-11-23 12:15:32,210 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 177 states to 177 states and 195 transitions. [2018-11-23 12:15:32,211 INFO L78 Accepts]: Start accepts. Automaton has 177 states and 195 transitions. Word has length 346 [2018-11-23 12:15:32,211 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:15:32,211 INFO L480 AbstractCegarLoop]: Abstraction has 177 states and 195 transitions. [2018-11-23 12:15:32,211 INFO L481 AbstractCegarLoop]: Interpolant automaton has 23 states. [2018-11-23 12:15:32,211 INFO L276 IsEmpty]: Start isEmpty. Operand 177 states and 195 transitions. [2018-11-23 12:15:32,212 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 349 [2018-11-23 12:15:32,212 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:15:32,213 INFO L402 BasicCegarLoop]: trace histogram [81, 81, 42, 39, 21, 21, 13, 13, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:15:32,213 INFO L423 AbstractCegarLoop]: === Iteration 56 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:15:32,213 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:15:32,213 INFO L82 PathProgramCache]: Analyzing trace with hash -1852517214, now seen corresponding path program 51 times [2018-11-23 12:15:32,213 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:15:32,213 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:15:32,214 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:15:32,214 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:15:32,214 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:15:32,226 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:15:32,227 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:15:32,227 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 57 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 57 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:15:32,239 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-23 12:15:33,663 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 15 check-sat command(s) [2018-11-23 12:15:33,664 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:15:33,716 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:15:33,718 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:15:34,072 INFO L256 TraceCheckUtils]: 0: Hoare triple {61819#true} call ULTIMATE.init(); {61819#true} is VALID [2018-11-23 12:15:34,072 INFO L273 TraceCheckUtils]: 1: Hoare triple {61819#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {61819#true} is VALID [2018-11-23 12:15:34,073 INFO L273 TraceCheckUtils]: 2: Hoare triple {61819#true} assume true; {61819#true} is VALID [2018-11-23 12:15:34,073 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {61819#true} {61819#true} #78#return; {61819#true} is VALID [2018-11-23 12:15:34,073 INFO L256 TraceCheckUtils]: 4: Hoare triple {61819#true} call #t~ret12 := main(); {61819#true} is VALID [2018-11-23 12:15:34,073 INFO L273 TraceCheckUtils]: 5: Hoare triple {61819#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {61819#true} is VALID [2018-11-23 12:15:34,073 INFO L256 TraceCheckUtils]: 6: Hoare triple {61819#true} call init_nondet(~#x~0.base, ~#x~0.offset); {61819#true} is VALID [2018-11-23 12:15:34,073 INFO L273 TraceCheckUtils]: 7: Hoare triple {61819#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {61819#true} is VALID [2018-11-23 12:15:34,074 INFO L273 TraceCheckUtils]: 8: Hoare triple {61819#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {61819#true} is VALID [2018-11-23 12:15:34,074 INFO L273 TraceCheckUtils]: 9: Hoare triple {61819#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {61819#true} is VALID [2018-11-23 12:15:34,074 INFO L273 TraceCheckUtils]: 10: Hoare triple {61819#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {61819#true} is VALID [2018-11-23 12:15:34,074 INFO L273 TraceCheckUtils]: 11: Hoare triple {61819#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {61819#true} is VALID [2018-11-23 12:15:34,074 INFO L273 TraceCheckUtils]: 12: Hoare triple {61819#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {61819#true} is VALID [2018-11-23 12:15:34,074 INFO L273 TraceCheckUtils]: 13: Hoare triple {61819#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {61819#true} is VALID [2018-11-23 12:15:34,074 INFO L273 TraceCheckUtils]: 14: Hoare triple {61819#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {61819#true} is VALID [2018-11-23 12:15:34,074 INFO L273 TraceCheckUtils]: 15: Hoare triple {61819#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {61819#true} is VALID [2018-11-23 12:15:34,075 INFO L273 TraceCheckUtils]: 16: Hoare triple {61819#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {61819#true} is VALID [2018-11-23 12:15:34,075 INFO L273 TraceCheckUtils]: 17: Hoare triple {61819#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {61819#true} is VALID [2018-11-23 12:15:34,075 INFO L273 TraceCheckUtils]: 18: Hoare triple {61819#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {61819#true} is VALID [2018-11-23 12:15:34,075 INFO L273 TraceCheckUtils]: 19: Hoare triple {61819#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {61819#true} is VALID [2018-11-23 12:15:34,075 INFO L273 TraceCheckUtils]: 20: Hoare triple {61819#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {61819#true} is VALID [2018-11-23 12:15:34,075 INFO L273 TraceCheckUtils]: 21: Hoare triple {61819#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {61819#true} is VALID [2018-11-23 12:15:34,075 INFO L273 TraceCheckUtils]: 22: Hoare triple {61819#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {61819#true} is VALID [2018-11-23 12:15:34,075 INFO L273 TraceCheckUtils]: 23: Hoare triple {61819#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {61819#true} is VALID [2018-11-23 12:15:34,075 INFO L273 TraceCheckUtils]: 24: Hoare triple {61819#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {61819#true} is VALID [2018-11-23 12:15:34,075 INFO L273 TraceCheckUtils]: 25: Hoare triple {61819#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {61819#true} is VALID [2018-11-23 12:15:34,076 INFO L273 TraceCheckUtils]: 26: Hoare triple {61819#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {61819#true} is VALID [2018-11-23 12:15:34,076 INFO L273 TraceCheckUtils]: 27: Hoare triple {61819#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {61819#true} is VALID [2018-11-23 12:15:34,076 INFO L273 TraceCheckUtils]: 28: Hoare triple {61819#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {61819#true} is VALID [2018-11-23 12:15:34,076 INFO L273 TraceCheckUtils]: 29: Hoare triple {61819#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {61819#true} is VALID [2018-11-23 12:15:34,076 INFO L273 TraceCheckUtils]: 30: Hoare triple {61819#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {61819#true} is VALID [2018-11-23 12:15:34,076 INFO L273 TraceCheckUtils]: 31: Hoare triple {61819#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {61819#true} is VALID [2018-11-23 12:15:34,076 INFO L273 TraceCheckUtils]: 32: Hoare triple {61819#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {61819#true} is VALID [2018-11-23 12:15:34,076 INFO L273 TraceCheckUtils]: 33: Hoare triple {61819#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {61819#true} is VALID [2018-11-23 12:15:34,076 INFO L273 TraceCheckUtils]: 34: Hoare triple {61819#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {61819#true} is VALID [2018-11-23 12:15:34,076 INFO L273 TraceCheckUtils]: 35: Hoare triple {61819#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {61819#true} is VALID [2018-11-23 12:15:34,077 INFO L273 TraceCheckUtils]: 36: Hoare triple {61819#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {61819#true} is VALID [2018-11-23 12:15:34,077 INFO L273 TraceCheckUtils]: 37: Hoare triple {61819#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {61819#true} is VALID [2018-11-23 12:15:34,077 INFO L273 TraceCheckUtils]: 38: Hoare triple {61819#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {61819#true} is VALID [2018-11-23 12:15:34,077 INFO L273 TraceCheckUtils]: 39: Hoare triple {61819#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {61819#true} is VALID [2018-11-23 12:15:34,077 INFO L273 TraceCheckUtils]: 40: Hoare triple {61819#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {61819#true} is VALID [2018-11-23 12:15:34,077 INFO L273 TraceCheckUtils]: 41: Hoare triple {61819#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {61819#true} is VALID [2018-11-23 12:15:34,077 INFO L273 TraceCheckUtils]: 42: Hoare triple {61819#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {61819#true} is VALID [2018-11-23 12:15:34,077 INFO L273 TraceCheckUtils]: 43: Hoare triple {61819#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {61819#true} is VALID [2018-11-23 12:15:34,077 INFO L273 TraceCheckUtils]: 44: Hoare triple {61819#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {61819#true} is VALID [2018-11-23 12:15:34,077 INFO L273 TraceCheckUtils]: 45: Hoare triple {61819#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {61819#true} is VALID [2018-11-23 12:15:34,078 INFO L273 TraceCheckUtils]: 46: Hoare triple {61819#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {61819#true} is VALID [2018-11-23 12:15:34,078 INFO L273 TraceCheckUtils]: 47: Hoare triple {61819#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {61819#true} is VALID [2018-11-23 12:15:34,078 INFO L273 TraceCheckUtils]: 48: Hoare triple {61819#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {61819#true} is VALID [2018-11-23 12:15:34,078 INFO L273 TraceCheckUtils]: 49: Hoare triple {61819#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {61819#true} is VALID [2018-11-23 12:15:34,078 INFO L273 TraceCheckUtils]: 50: Hoare triple {61819#true} assume !(~i~0 < 40); {61819#true} is VALID [2018-11-23 12:15:34,078 INFO L273 TraceCheckUtils]: 51: Hoare triple {61819#true} assume true; {61819#true} is VALID [2018-11-23 12:15:34,078 INFO L268 TraceCheckUtils]: 52: Hoare quadruple {61819#true} {61819#true} #82#return; {61819#true} is VALID [2018-11-23 12:15:34,078 INFO L273 TraceCheckUtils]: 53: Hoare triple {61819#true} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {61819#true} is VALID [2018-11-23 12:15:34,078 INFO L256 TraceCheckUtils]: 54: Hoare triple {61819#true} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {61819#true} is VALID [2018-11-23 12:15:34,078 INFO L273 TraceCheckUtils]: 55: Hoare triple {61819#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {61819#true} is VALID [2018-11-23 12:15:34,079 INFO L273 TraceCheckUtils]: 56: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,079 INFO L273 TraceCheckUtils]: 57: Hoare triple {61819#true} assume !(~i~1 > 20); {61819#true} is VALID [2018-11-23 12:15:34,079 INFO L273 TraceCheckUtils]: 58: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,079 INFO L273 TraceCheckUtils]: 59: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,079 INFO L273 TraceCheckUtils]: 60: Hoare triple {61819#true} assume !(~i~1 > 20); {61819#true} is VALID [2018-11-23 12:15:34,079 INFO L273 TraceCheckUtils]: 61: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,079 INFO L273 TraceCheckUtils]: 62: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,079 INFO L273 TraceCheckUtils]: 63: Hoare triple {61819#true} assume !(~i~1 > 20); {61819#true} is VALID [2018-11-23 12:15:34,079 INFO L273 TraceCheckUtils]: 64: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,080 INFO L273 TraceCheckUtils]: 65: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,080 INFO L273 TraceCheckUtils]: 66: Hoare triple {61819#true} assume !(~i~1 > 20); {61819#true} is VALID [2018-11-23 12:15:34,080 INFO L273 TraceCheckUtils]: 67: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,080 INFO L273 TraceCheckUtils]: 68: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,080 INFO L273 TraceCheckUtils]: 69: Hoare triple {61819#true} assume !(~i~1 > 20); {61819#true} is VALID [2018-11-23 12:15:34,080 INFO L273 TraceCheckUtils]: 70: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,080 INFO L273 TraceCheckUtils]: 71: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,080 INFO L273 TraceCheckUtils]: 72: Hoare triple {61819#true} assume !(~i~1 > 20); {61819#true} is VALID [2018-11-23 12:15:34,080 INFO L273 TraceCheckUtils]: 73: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,080 INFO L273 TraceCheckUtils]: 74: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,081 INFO L273 TraceCheckUtils]: 75: Hoare triple {61819#true} assume !(~i~1 > 20); {61819#true} is VALID [2018-11-23 12:15:34,081 INFO L273 TraceCheckUtils]: 76: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,081 INFO L273 TraceCheckUtils]: 77: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,081 INFO L273 TraceCheckUtils]: 78: Hoare triple {61819#true} assume !(~i~1 > 20); {61819#true} is VALID [2018-11-23 12:15:34,081 INFO L273 TraceCheckUtils]: 79: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,081 INFO L273 TraceCheckUtils]: 80: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,081 INFO L273 TraceCheckUtils]: 81: Hoare triple {61819#true} assume !(~i~1 > 20); {61819#true} is VALID [2018-11-23 12:15:34,081 INFO L273 TraceCheckUtils]: 82: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,081 INFO L273 TraceCheckUtils]: 83: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,081 INFO L273 TraceCheckUtils]: 84: Hoare triple {61819#true} assume !(~i~1 > 20); {61819#true} is VALID [2018-11-23 12:15:34,082 INFO L273 TraceCheckUtils]: 85: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,082 INFO L273 TraceCheckUtils]: 86: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,082 INFO L273 TraceCheckUtils]: 87: Hoare triple {61819#true} assume !(~i~1 > 20); {61819#true} is VALID [2018-11-23 12:15:34,082 INFO L273 TraceCheckUtils]: 88: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,082 INFO L273 TraceCheckUtils]: 89: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,082 INFO L273 TraceCheckUtils]: 90: Hoare triple {61819#true} assume !(~i~1 > 20); {61819#true} is VALID [2018-11-23 12:15:34,082 INFO L273 TraceCheckUtils]: 91: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,082 INFO L273 TraceCheckUtils]: 92: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,082 INFO L273 TraceCheckUtils]: 93: Hoare triple {61819#true} assume !(~i~1 > 20); {61819#true} is VALID [2018-11-23 12:15:34,082 INFO L273 TraceCheckUtils]: 94: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,083 INFO L273 TraceCheckUtils]: 95: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,083 INFO L273 TraceCheckUtils]: 96: Hoare triple {61819#true} assume !(~i~1 > 20); {61819#true} is VALID [2018-11-23 12:15:34,083 INFO L273 TraceCheckUtils]: 97: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,083 INFO L273 TraceCheckUtils]: 98: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,083 INFO L273 TraceCheckUtils]: 99: Hoare triple {61819#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {61819#true} is VALID [2018-11-23 12:15:34,083 INFO L273 TraceCheckUtils]: 100: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,083 INFO L273 TraceCheckUtils]: 101: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,083 INFO L273 TraceCheckUtils]: 102: Hoare triple {61819#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {61819#true} is VALID [2018-11-23 12:15:34,083 INFO L273 TraceCheckUtils]: 103: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,083 INFO L273 TraceCheckUtils]: 104: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,084 INFO L273 TraceCheckUtils]: 105: Hoare triple {61819#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {61819#true} is VALID [2018-11-23 12:15:34,084 INFO L273 TraceCheckUtils]: 106: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,084 INFO L273 TraceCheckUtils]: 107: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,084 INFO L273 TraceCheckUtils]: 108: Hoare triple {61819#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {61819#true} is VALID [2018-11-23 12:15:34,084 INFO L273 TraceCheckUtils]: 109: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,084 INFO L273 TraceCheckUtils]: 110: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,084 INFO L273 TraceCheckUtils]: 111: Hoare triple {61819#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {61819#true} is VALID [2018-11-23 12:15:34,084 INFO L273 TraceCheckUtils]: 112: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,084 INFO L273 TraceCheckUtils]: 113: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,084 INFO L273 TraceCheckUtils]: 114: Hoare triple {61819#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {61819#true} is VALID [2018-11-23 12:15:34,085 INFO L273 TraceCheckUtils]: 115: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,085 INFO L273 TraceCheckUtils]: 116: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,085 INFO L273 TraceCheckUtils]: 117: Hoare triple {61819#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {61819#true} is VALID [2018-11-23 12:15:34,085 INFO L273 TraceCheckUtils]: 118: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,085 INFO L273 TraceCheckUtils]: 119: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,085 INFO L273 TraceCheckUtils]: 120: Hoare triple {61819#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {61819#true} is VALID [2018-11-23 12:15:34,085 INFO L273 TraceCheckUtils]: 121: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,085 INFO L273 TraceCheckUtils]: 122: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,085 INFO L273 TraceCheckUtils]: 123: Hoare triple {61819#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {61819#true} is VALID [2018-11-23 12:15:34,085 INFO L273 TraceCheckUtils]: 124: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,086 INFO L273 TraceCheckUtils]: 125: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,086 INFO L273 TraceCheckUtils]: 126: Hoare triple {61819#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {61819#true} is VALID [2018-11-23 12:15:34,086 INFO L273 TraceCheckUtils]: 127: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,086 INFO L273 TraceCheckUtils]: 128: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,086 INFO L273 TraceCheckUtils]: 129: Hoare triple {61819#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {61819#true} is VALID [2018-11-23 12:15:34,086 INFO L273 TraceCheckUtils]: 130: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,086 INFO L273 TraceCheckUtils]: 131: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,086 INFO L273 TraceCheckUtils]: 132: Hoare triple {61819#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {61819#true} is VALID [2018-11-23 12:15:34,086 INFO L273 TraceCheckUtils]: 133: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,086 INFO L273 TraceCheckUtils]: 134: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,087 INFO L273 TraceCheckUtils]: 135: Hoare triple {61819#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {61819#true} is VALID [2018-11-23 12:15:34,087 INFO L273 TraceCheckUtils]: 136: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,087 INFO L273 TraceCheckUtils]: 137: Hoare triple {61819#true} assume !(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,087 INFO L273 TraceCheckUtils]: 138: Hoare triple {61819#true} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {61819#true} is VALID [2018-11-23 12:15:34,087 INFO L273 TraceCheckUtils]: 139: Hoare triple {61819#true} assume true; {61819#true} is VALID [2018-11-23 12:15:34,087 INFO L268 TraceCheckUtils]: 140: Hoare quadruple {61819#true} {61819#true} #84#return; {61819#true} is VALID [2018-11-23 12:15:34,087 INFO L273 TraceCheckUtils]: 141: Hoare triple {61819#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {61819#true} is VALID [2018-11-23 12:15:34,087 INFO L256 TraceCheckUtils]: 142: Hoare triple {61819#true} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {61819#true} is VALID [2018-11-23 12:15:34,087 INFO L273 TraceCheckUtils]: 143: Hoare triple {61819#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {61819#true} is VALID [2018-11-23 12:15:34,087 INFO L273 TraceCheckUtils]: 144: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,088 INFO L273 TraceCheckUtils]: 145: Hoare triple {61819#true} assume !(~i~1 > 20); {61819#true} is VALID [2018-11-23 12:15:34,088 INFO L273 TraceCheckUtils]: 146: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,088 INFO L273 TraceCheckUtils]: 147: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,088 INFO L273 TraceCheckUtils]: 148: Hoare triple {61819#true} assume !(~i~1 > 20); {61819#true} is VALID [2018-11-23 12:15:34,088 INFO L273 TraceCheckUtils]: 149: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,088 INFO L273 TraceCheckUtils]: 150: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,088 INFO L273 TraceCheckUtils]: 151: Hoare triple {61819#true} assume !(~i~1 > 20); {61819#true} is VALID [2018-11-23 12:15:34,088 INFO L273 TraceCheckUtils]: 152: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,088 INFO L273 TraceCheckUtils]: 153: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,088 INFO L273 TraceCheckUtils]: 154: Hoare triple {61819#true} assume !(~i~1 > 20); {61819#true} is VALID [2018-11-23 12:15:34,089 INFO L273 TraceCheckUtils]: 155: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,089 INFO L273 TraceCheckUtils]: 156: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,089 INFO L273 TraceCheckUtils]: 157: Hoare triple {61819#true} assume !(~i~1 > 20); {61819#true} is VALID [2018-11-23 12:15:34,089 INFO L273 TraceCheckUtils]: 158: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,089 INFO L273 TraceCheckUtils]: 159: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,089 INFO L273 TraceCheckUtils]: 160: Hoare triple {61819#true} assume !(~i~1 > 20); {61819#true} is VALID [2018-11-23 12:15:34,089 INFO L273 TraceCheckUtils]: 161: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,089 INFO L273 TraceCheckUtils]: 162: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,089 INFO L273 TraceCheckUtils]: 163: Hoare triple {61819#true} assume !(~i~1 > 20); {61819#true} is VALID [2018-11-23 12:15:34,089 INFO L273 TraceCheckUtils]: 164: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,090 INFO L273 TraceCheckUtils]: 165: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,090 INFO L273 TraceCheckUtils]: 166: Hoare triple {61819#true} assume !(~i~1 > 20); {61819#true} is VALID [2018-11-23 12:15:34,090 INFO L273 TraceCheckUtils]: 167: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,090 INFO L273 TraceCheckUtils]: 168: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,090 INFO L273 TraceCheckUtils]: 169: Hoare triple {61819#true} assume !(~i~1 > 20); {61819#true} is VALID [2018-11-23 12:15:34,090 INFO L273 TraceCheckUtils]: 170: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,090 INFO L273 TraceCheckUtils]: 171: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,090 INFO L273 TraceCheckUtils]: 172: Hoare triple {61819#true} assume !(~i~1 > 20); {61819#true} is VALID [2018-11-23 12:15:34,090 INFO L273 TraceCheckUtils]: 173: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,090 INFO L273 TraceCheckUtils]: 174: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,091 INFO L273 TraceCheckUtils]: 175: Hoare triple {61819#true} assume !(~i~1 > 20); {61819#true} is VALID [2018-11-23 12:15:34,091 INFO L273 TraceCheckUtils]: 176: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,091 INFO L273 TraceCheckUtils]: 177: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,091 INFO L273 TraceCheckUtils]: 178: Hoare triple {61819#true} assume !(~i~1 > 20); {61819#true} is VALID [2018-11-23 12:15:34,091 INFO L273 TraceCheckUtils]: 179: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,091 INFO L273 TraceCheckUtils]: 180: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,091 INFO L273 TraceCheckUtils]: 181: Hoare triple {61819#true} assume !(~i~1 > 20); {61819#true} is VALID [2018-11-23 12:15:34,091 INFO L273 TraceCheckUtils]: 182: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,091 INFO L273 TraceCheckUtils]: 183: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,091 INFO L273 TraceCheckUtils]: 184: Hoare triple {61819#true} assume !(~i~1 > 20); {61819#true} is VALID [2018-11-23 12:15:34,092 INFO L273 TraceCheckUtils]: 185: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,092 INFO L273 TraceCheckUtils]: 186: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,092 INFO L273 TraceCheckUtils]: 187: Hoare triple {61819#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {61819#true} is VALID [2018-11-23 12:15:34,092 INFO L273 TraceCheckUtils]: 188: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,092 INFO L273 TraceCheckUtils]: 189: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,092 INFO L273 TraceCheckUtils]: 190: Hoare triple {61819#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {61819#true} is VALID [2018-11-23 12:15:34,092 INFO L273 TraceCheckUtils]: 191: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,092 INFO L273 TraceCheckUtils]: 192: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,092 INFO L273 TraceCheckUtils]: 193: Hoare triple {61819#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {61819#true} is VALID [2018-11-23 12:15:34,092 INFO L273 TraceCheckUtils]: 194: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,093 INFO L273 TraceCheckUtils]: 195: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,093 INFO L273 TraceCheckUtils]: 196: Hoare triple {61819#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {61819#true} is VALID [2018-11-23 12:15:34,093 INFO L273 TraceCheckUtils]: 197: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,093 INFO L273 TraceCheckUtils]: 198: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,093 INFO L273 TraceCheckUtils]: 199: Hoare triple {61819#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {61819#true} is VALID [2018-11-23 12:15:34,093 INFO L273 TraceCheckUtils]: 200: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,093 INFO L273 TraceCheckUtils]: 201: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,093 INFO L273 TraceCheckUtils]: 202: Hoare triple {61819#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {61819#true} is VALID [2018-11-23 12:15:34,093 INFO L273 TraceCheckUtils]: 203: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,093 INFO L273 TraceCheckUtils]: 204: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,094 INFO L273 TraceCheckUtils]: 205: Hoare triple {61819#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {61819#true} is VALID [2018-11-23 12:15:34,094 INFO L273 TraceCheckUtils]: 206: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,094 INFO L273 TraceCheckUtils]: 207: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,094 INFO L273 TraceCheckUtils]: 208: Hoare triple {61819#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {61819#true} is VALID [2018-11-23 12:15:34,094 INFO L273 TraceCheckUtils]: 209: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,094 INFO L273 TraceCheckUtils]: 210: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,094 INFO L273 TraceCheckUtils]: 211: Hoare triple {61819#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {61819#true} is VALID [2018-11-23 12:15:34,094 INFO L273 TraceCheckUtils]: 212: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,094 INFO L273 TraceCheckUtils]: 213: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,094 INFO L273 TraceCheckUtils]: 214: Hoare triple {61819#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {61819#true} is VALID [2018-11-23 12:15:34,095 INFO L273 TraceCheckUtils]: 215: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,095 INFO L273 TraceCheckUtils]: 216: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,095 INFO L273 TraceCheckUtils]: 217: Hoare triple {61819#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {61819#true} is VALID [2018-11-23 12:15:34,095 INFO L273 TraceCheckUtils]: 218: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,095 INFO L273 TraceCheckUtils]: 219: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,095 INFO L273 TraceCheckUtils]: 220: Hoare triple {61819#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {61819#true} is VALID [2018-11-23 12:15:34,095 INFO L273 TraceCheckUtils]: 221: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,095 INFO L273 TraceCheckUtils]: 222: Hoare triple {61819#true} assume !!(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,095 INFO L273 TraceCheckUtils]: 223: Hoare triple {61819#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {61819#true} is VALID [2018-11-23 12:15:34,095 INFO L273 TraceCheckUtils]: 224: Hoare triple {61819#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61819#true} is VALID [2018-11-23 12:15:34,096 INFO L273 TraceCheckUtils]: 225: Hoare triple {61819#true} assume !(~i~1 < 40); {61819#true} is VALID [2018-11-23 12:15:34,096 INFO L273 TraceCheckUtils]: 226: Hoare triple {61819#true} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {61819#true} is VALID [2018-11-23 12:15:34,096 INFO L273 TraceCheckUtils]: 227: Hoare triple {61819#true} assume true; {61819#true} is VALID [2018-11-23 12:15:34,096 INFO L268 TraceCheckUtils]: 228: Hoare quadruple {61819#true} {61819#true} #86#return; {61819#true} is VALID [2018-11-23 12:15:34,097 INFO L273 TraceCheckUtils]: 229: Hoare triple {61819#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {62511#(<= main_~i~2 0)} is VALID [2018-11-23 12:15:34,098 INFO L273 TraceCheckUtils]: 230: Hoare triple {62511#(<= main_~i~2 0)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {62511#(<= main_~i~2 0)} is VALID [2018-11-23 12:15:34,100 INFO L273 TraceCheckUtils]: 231: Hoare triple {62511#(<= main_~i~2 0)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {62518#(<= main_~i~2 1)} is VALID [2018-11-23 12:15:34,101 INFO L273 TraceCheckUtils]: 232: Hoare triple {62518#(<= main_~i~2 1)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {62518#(<= main_~i~2 1)} is VALID [2018-11-23 12:15:34,102 INFO L273 TraceCheckUtils]: 233: Hoare triple {62518#(<= main_~i~2 1)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {62525#(<= main_~i~2 2)} is VALID [2018-11-23 12:15:34,102 INFO L273 TraceCheckUtils]: 234: Hoare triple {62525#(<= main_~i~2 2)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {62525#(<= main_~i~2 2)} is VALID [2018-11-23 12:15:34,104 INFO L273 TraceCheckUtils]: 235: Hoare triple {62525#(<= main_~i~2 2)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {62532#(<= main_~i~2 3)} is VALID [2018-11-23 12:15:34,104 INFO L273 TraceCheckUtils]: 236: Hoare triple {62532#(<= main_~i~2 3)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {62532#(<= main_~i~2 3)} is VALID [2018-11-23 12:15:34,106 INFO L273 TraceCheckUtils]: 237: Hoare triple {62532#(<= main_~i~2 3)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {62539#(<= main_~i~2 4)} is VALID [2018-11-23 12:15:34,106 INFO L273 TraceCheckUtils]: 238: Hoare triple {62539#(<= main_~i~2 4)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {62539#(<= main_~i~2 4)} is VALID [2018-11-23 12:15:34,109 INFO L273 TraceCheckUtils]: 239: Hoare triple {62539#(<= main_~i~2 4)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {62546#(<= main_~i~2 5)} is VALID [2018-11-23 12:15:34,109 INFO L273 TraceCheckUtils]: 240: Hoare triple {62546#(<= main_~i~2 5)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {62546#(<= main_~i~2 5)} is VALID [2018-11-23 12:15:34,109 INFO L273 TraceCheckUtils]: 241: Hoare triple {62546#(<= main_~i~2 5)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {62553#(<= main_~i~2 6)} is VALID [2018-11-23 12:15:34,110 INFO L273 TraceCheckUtils]: 242: Hoare triple {62553#(<= main_~i~2 6)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {62553#(<= main_~i~2 6)} is VALID [2018-11-23 12:15:34,110 INFO L273 TraceCheckUtils]: 243: Hoare triple {62553#(<= main_~i~2 6)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {62560#(<= main_~i~2 7)} is VALID [2018-11-23 12:15:34,110 INFO L273 TraceCheckUtils]: 244: Hoare triple {62560#(<= main_~i~2 7)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {62560#(<= main_~i~2 7)} is VALID [2018-11-23 12:15:34,111 INFO L273 TraceCheckUtils]: 245: Hoare triple {62560#(<= main_~i~2 7)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {62567#(<= main_~i~2 8)} is VALID [2018-11-23 12:15:34,111 INFO L273 TraceCheckUtils]: 246: Hoare triple {62567#(<= main_~i~2 8)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {62567#(<= main_~i~2 8)} is VALID [2018-11-23 12:15:34,112 INFO L273 TraceCheckUtils]: 247: Hoare triple {62567#(<= main_~i~2 8)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {62574#(<= main_~i~2 9)} is VALID [2018-11-23 12:15:34,112 INFO L273 TraceCheckUtils]: 248: Hoare triple {62574#(<= main_~i~2 9)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {62574#(<= main_~i~2 9)} is VALID [2018-11-23 12:15:34,112 INFO L273 TraceCheckUtils]: 249: Hoare triple {62574#(<= main_~i~2 9)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {62581#(<= main_~i~2 10)} is VALID [2018-11-23 12:15:34,113 INFO L273 TraceCheckUtils]: 250: Hoare triple {62581#(<= main_~i~2 10)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {62581#(<= main_~i~2 10)} is VALID [2018-11-23 12:15:34,113 INFO L273 TraceCheckUtils]: 251: Hoare triple {62581#(<= main_~i~2 10)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {62588#(<= main_~i~2 11)} is VALID [2018-11-23 12:15:34,114 INFO L273 TraceCheckUtils]: 252: Hoare triple {62588#(<= main_~i~2 11)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {62588#(<= main_~i~2 11)} is VALID [2018-11-23 12:15:34,114 INFO L273 TraceCheckUtils]: 253: Hoare triple {62588#(<= main_~i~2 11)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {62595#(<= main_~i~2 12)} is VALID [2018-11-23 12:15:34,115 INFO L273 TraceCheckUtils]: 254: Hoare triple {62595#(<= main_~i~2 12)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {62595#(<= main_~i~2 12)} is VALID [2018-11-23 12:15:34,115 INFO L273 TraceCheckUtils]: 255: Hoare triple {62595#(<= main_~i~2 12)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {62602#(<= main_~i~2 13)} is VALID [2018-11-23 12:15:34,116 INFO L273 TraceCheckUtils]: 256: Hoare triple {62602#(<= main_~i~2 13)} assume !(~i~2 < 39); {61820#false} is VALID [2018-11-23 12:15:34,116 INFO L273 TraceCheckUtils]: 257: Hoare triple {61820#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {61820#false} is VALID [2018-11-23 12:15:34,116 INFO L256 TraceCheckUtils]: 258: Hoare triple {61820#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {61820#false} is VALID [2018-11-23 12:15:34,117 INFO L273 TraceCheckUtils]: 259: Hoare triple {61820#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {61820#false} is VALID [2018-11-23 12:15:34,117 INFO L273 TraceCheckUtils]: 260: Hoare triple {61820#false} assume !!(~i~1 < 40); {61820#false} is VALID [2018-11-23 12:15:34,117 INFO L273 TraceCheckUtils]: 261: Hoare triple {61820#false} assume !(~i~1 > 20); {61820#false} is VALID [2018-11-23 12:15:34,117 INFO L273 TraceCheckUtils]: 262: Hoare triple {61820#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61820#false} is VALID [2018-11-23 12:15:34,117 INFO L273 TraceCheckUtils]: 263: Hoare triple {61820#false} assume !!(~i~1 < 40); {61820#false} is VALID [2018-11-23 12:15:34,117 INFO L273 TraceCheckUtils]: 264: Hoare triple {61820#false} assume !(~i~1 > 20); {61820#false} is VALID [2018-11-23 12:15:34,118 INFO L273 TraceCheckUtils]: 265: Hoare triple {61820#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61820#false} is VALID [2018-11-23 12:15:34,118 INFO L273 TraceCheckUtils]: 266: Hoare triple {61820#false} assume !!(~i~1 < 40); {61820#false} is VALID [2018-11-23 12:15:34,118 INFO L273 TraceCheckUtils]: 267: Hoare triple {61820#false} assume !(~i~1 > 20); {61820#false} is VALID [2018-11-23 12:15:34,118 INFO L273 TraceCheckUtils]: 268: Hoare triple {61820#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61820#false} is VALID [2018-11-23 12:15:34,118 INFO L273 TraceCheckUtils]: 269: Hoare triple {61820#false} assume !!(~i~1 < 40); {61820#false} is VALID [2018-11-23 12:15:34,118 INFO L273 TraceCheckUtils]: 270: Hoare triple {61820#false} assume !(~i~1 > 20); {61820#false} is VALID [2018-11-23 12:15:34,119 INFO L273 TraceCheckUtils]: 271: Hoare triple {61820#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61820#false} is VALID [2018-11-23 12:15:34,119 INFO L273 TraceCheckUtils]: 272: Hoare triple {61820#false} assume !!(~i~1 < 40); {61820#false} is VALID [2018-11-23 12:15:34,119 INFO L273 TraceCheckUtils]: 273: Hoare triple {61820#false} assume !(~i~1 > 20); {61820#false} is VALID [2018-11-23 12:15:34,119 INFO L273 TraceCheckUtils]: 274: Hoare triple {61820#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61820#false} is VALID [2018-11-23 12:15:34,119 INFO L273 TraceCheckUtils]: 275: Hoare triple {61820#false} assume !!(~i~1 < 40); {61820#false} is VALID [2018-11-23 12:15:34,119 INFO L273 TraceCheckUtils]: 276: Hoare triple {61820#false} assume !(~i~1 > 20); {61820#false} is VALID [2018-11-23 12:15:34,120 INFO L273 TraceCheckUtils]: 277: Hoare triple {61820#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61820#false} is VALID [2018-11-23 12:15:34,120 INFO L273 TraceCheckUtils]: 278: Hoare triple {61820#false} assume !!(~i~1 < 40); {61820#false} is VALID [2018-11-23 12:15:34,120 INFO L273 TraceCheckUtils]: 279: Hoare triple {61820#false} assume !(~i~1 > 20); {61820#false} is VALID [2018-11-23 12:15:34,120 INFO L273 TraceCheckUtils]: 280: Hoare triple {61820#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61820#false} is VALID [2018-11-23 12:15:34,120 INFO L273 TraceCheckUtils]: 281: Hoare triple {61820#false} assume !!(~i~1 < 40); {61820#false} is VALID [2018-11-23 12:15:34,120 INFO L273 TraceCheckUtils]: 282: Hoare triple {61820#false} assume !(~i~1 > 20); {61820#false} is VALID [2018-11-23 12:15:34,120 INFO L273 TraceCheckUtils]: 283: Hoare triple {61820#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61820#false} is VALID [2018-11-23 12:15:34,120 INFO L273 TraceCheckUtils]: 284: Hoare triple {61820#false} assume !!(~i~1 < 40); {61820#false} is VALID [2018-11-23 12:15:34,121 INFO L273 TraceCheckUtils]: 285: Hoare triple {61820#false} assume !(~i~1 > 20); {61820#false} is VALID [2018-11-23 12:15:34,121 INFO L273 TraceCheckUtils]: 286: Hoare triple {61820#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61820#false} is VALID [2018-11-23 12:15:34,121 INFO L273 TraceCheckUtils]: 287: Hoare triple {61820#false} assume !!(~i~1 < 40); {61820#false} is VALID [2018-11-23 12:15:34,121 INFO L273 TraceCheckUtils]: 288: Hoare triple {61820#false} assume !(~i~1 > 20); {61820#false} is VALID [2018-11-23 12:15:34,121 INFO L273 TraceCheckUtils]: 289: Hoare triple {61820#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61820#false} is VALID [2018-11-23 12:15:34,121 INFO L273 TraceCheckUtils]: 290: Hoare triple {61820#false} assume !!(~i~1 < 40); {61820#false} is VALID [2018-11-23 12:15:34,121 INFO L273 TraceCheckUtils]: 291: Hoare triple {61820#false} assume !(~i~1 > 20); {61820#false} is VALID [2018-11-23 12:15:34,121 INFO L273 TraceCheckUtils]: 292: Hoare triple {61820#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61820#false} is VALID [2018-11-23 12:15:34,121 INFO L273 TraceCheckUtils]: 293: Hoare triple {61820#false} assume !!(~i~1 < 40); {61820#false} is VALID [2018-11-23 12:15:34,121 INFO L273 TraceCheckUtils]: 294: Hoare triple {61820#false} assume !(~i~1 > 20); {61820#false} is VALID [2018-11-23 12:15:34,122 INFO L273 TraceCheckUtils]: 295: Hoare triple {61820#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61820#false} is VALID [2018-11-23 12:15:34,122 INFO L273 TraceCheckUtils]: 296: Hoare triple {61820#false} assume !!(~i~1 < 40); {61820#false} is VALID [2018-11-23 12:15:34,122 INFO L273 TraceCheckUtils]: 297: Hoare triple {61820#false} assume !(~i~1 > 20); {61820#false} is VALID [2018-11-23 12:15:34,122 INFO L273 TraceCheckUtils]: 298: Hoare triple {61820#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61820#false} is VALID [2018-11-23 12:15:34,122 INFO L273 TraceCheckUtils]: 299: Hoare triple {61820#false} assume !!(~i~1 < 40); {61820#false} is VALID [2018-11-23 12:15:34,122 INFO L273 TraceCheckUtils]: 300: Hoare triple {61820#false} assume !(~i~1 > 20); {61820#false} is VALID [2018-11-23 12:15:34,122 INFO L273 TraceCheckUtils]: 301: Hoare triple {61820#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61820#false} is VALID [2018-11-23 12:15:34,122 INFO L273 TraceCheckUtils]: 302: Hoare triple {61820#false} assume !!(~i~1 < 40); {61820#false} is VALID [2018-11-23 12:15:34,122 INFO L273 TraceCheckUtils]: 303: Hoare triple {61820#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {61820#false} is VALID [2018-11-23 12:15:34,122 INFO L273 TraceCheckUtils]: 304: Hoare triple {61820#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61820#false} is VALID [2018-11-23 12:15:34,123 INFO L273 TraceCheckUtils]: 305: Hoare triple {61820#false} assume !!(~i~1 < 40); {61820#false} is VALID [2018-11-23 12:15:34,123 INFO L273 TraceCheckUtils]: 306: Hoare triple {61820#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {61820#false} is VALID [2018-11-23 12:15:34,123 INFO L273 TraceCheckUtils]: 307: Hoare triple {61820#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61820#false} is VALID [2018-11-23 12:15:34,123 INFO L273 TraceCheckUtils]: 308: Hoare triple {61820#false} assume !!(~i~1 < 40); {61820#false} is VALID [2018-11-23 12:15:34,123 INFO L273 TraceCheckUtils]: 309: Hoare triple {61820#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {61820#false} is VALID [2018-11-23 12:15:34,123 INFO L273 TraceCheckUtils]: 310: Hoare triple {61820#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61820#false} is VALID [2018-11-23 12:15:34,123 INFO L273 TraceCheckUtils]: 311: Hoare triple {61820#false} assume !!(~i~1 < 40); {61820#false} is VALID [2018-11-23 12:15:34,123 INFO L273 TraceCheckUtils]: 312: Hoare triple {61820#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {61820#false} is VALID [2018-11-23 12:15:34,123 INFO L273 TraceCheckUtils]: 313: Hoare triple {61820#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61820#false} is VALID [2018-11-23 12:15:34,123 INFO L273 TraceCheckUtils]: 314: Hoare triple {61820#false} assume !!(~i~1 < 40); {61820#false} is VALID [2018-11-23 12:15:34,124 INFO L273 TraceCheckUtils]: 315: Hoare triple {61820#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {61820#false} is VALID [2018-11-23 12:15:34,124 INFO L273 TraceCheckUtils]: 316: Hoare triple {61820#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61820#false} is VALID [2018-11-23 12:15:34,124 INFO L273 TraceCheckUtils]: 317: Hoare triple {61820#false} assume !!(~i~1 < 40); {61820#false} is VALID [2018-11-23 12:15:34,124 INFO L273 TraceCheckUtils]: 318: Hoare triple {61820#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {61820#false} is VALID [2018-11-23 12:15:34,124 INFO L273 TraceCheckUtils]: 319: Hoare triple {61820#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61820#false} is VALID [2018-11-23 12:15:34,124 INFO L273 TraceCheckUtils]: 320: Hoare triple {61820#false} assume !!(~i~1 < 40); {61820#false} is VALID [2018-11-23 12:15:34,124 INFO L273 TraceCheckUtils]: 321: Hoare triple {61820#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {61820#false} is VALID [2018-11-23 12:15:34,124 INFO L273 TraceCheckUtils]: 322: Hoare triple {61820#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61820#false} is VALID [2018-11-23 12:15:34,124 INFO L273 TraceCheckUtils]: 323: Hoare triple {61820#false} assume !!(~i~1 < 40); {61820#false} is VALID [2018-11-23 12:15:34,124 INFO L273 TraceCheckUtils]: 324: Hoare triple {61820#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {61820#false} is VALID [2018-11-23 12:15:34,125 INFO L273 TraceCheckUtils]: 325: Hoare triple {61820#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61820#false} is VALID [2018-11-23 12:15:34,125 INFO L273 TraceCheckUtils]: 326: Hoare triple {61820#false} assume !!(~i~1 < 40); {61820#false} is VALID [2018-11-23 12:15:34,125 INFO L273 TraceCheckUtils]: 327: Hoare triple {61820#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {61820#false} is VALID [2018-11-23 12:15:34,125 INFO L273 TraceCheckUtils]: 328: Hoare triple {61820#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61820#false} is VALID [2018-11-23 12:15:34,125 INFO L273 TraceCheckUtils]: 329: Hoare triple {61820#false} assume !!(~i~1 < 40); {61820#false} is VALID [2018-11-23 12:15:34,125 INFO L273 TraceCheckUtils]: 330: Hoare triple {61820#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {61820#false} is VALID [2018-11-23 12:15:34,125 INFO L273 TraceCheckUtils]: 331: Hoare triple {61820#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61820#false} is VALID [2018-11-23 12:15:34,125 INFO L273 TraceCheckUtils]: 332: Hoare triple {61820#false} assume !!(~i~1 < 40); {61820#false} is VALID [2018-11-23 12:15:34,125 INFO L273 TraceCheckUtils]: 333: Hoare triple {61820#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {61820#false} is VALID [2018-11-23 12:15:34,125 INFO L273 TraceCheckUtils]: 334: Hoare triple {61820#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61820#false} is VALID [2018-11-23 12:15:34,126 INFO L273 TraceCheckUtils]: 335: Hoare triple {61820#false} assume !!(~i~1 < 40); {61820#false} is VALID [2018-11-23 12:15:34,126 INFO L273 TraceCheckUtils]: 336: Hoare triple {61820#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {61820#false} is VALID [2018-11-23 12:15:34,126 INFO L273 TraceCheckUtils]: 337: Hoare triple {61820#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61820#false} is VALID [2018-11-23 12:15:34,126 INFO L273 TraceCheckUtils]: 338: Hoare triple {61820#false} assume !!(~i~1 < 40); {61820#false} is VALID [2018-11-23 12:15:34,126 INFO L273 TraceCheckUtils]: 339: Hoare triple {61820#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {61820#false} is VALID [2018-11-23 12:15:34,126 INFO L273 TraceCheckUtils]: 340: Hoare triple {61820#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {61820#false} is VALID [2018-11-23 12:15:34,126 INFO L273 TraceCheckUtils]: 341: Hoare triple {61820#false} assume !(~i~1 < 40); {61820#false} is VALID [2018-11-23 12:15:34,126 INFO L273 TraceCheckUtils]: 342: Hoare triple {61820#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {61820#false} is VALID [2018-11-23 12:15:34,126 INFO L273 TraceCheckUtils]: 343: Hoare triple {61820#false} assume true; {61820#false} is VALID [2018-11-23 12:15:34,126 INFO L268 TraceCheckUtils]: 344: Hoare quadruple {61820#false} {61820#false} #88#return; {61820#false} is VALID [2018-11-23 12:15:34,127 INFO L273 TraceCheckUtils]: 345: Hoare triple {61820#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {61820#false} is VALID [2018-11-23 12:15:34,127 INFO L273 TraceCheckUtils]: 346: Hoare triple {61820#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {61820#false} is VALID [2018-11-23 12:15:34,127 INFO L273 TraceCheckUtils]: 347: Hoare triple {61820#false} assume !false; {61820#false} is VALID [2018-11-23 12:15:34,211 INFO L134 CoverageAnalysis]: Checked inductivity of 10588 backedges. 4492 proven. 169 refuted. 0 times theorem prover too weak. 5927 trivial. 0 not checked. [2018-11-23 12:15:34,230 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:15:34,231 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [16] total 16 [2018-11-23 12:15:34,231 INFO L78 Accepts]: Start accepts. Automaton has 16 states. Word has length 348 [2018-11-23 12:15:34,231 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:15:34,231 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states. [2018-11-23 12:15:34,305 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-23 12:15:34,306 INFO L459 AbstractCegarLoop]: Interpolant automaton has 16 states [2018-11-23 12:15:34,306 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2018-11-23 12:15:34,306 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=120, Invalid=120, Unknown=0, NotChecked=0, Total=240 [2018-11-23 12:15:34,306 INFO L87 Difference]: Start difference. First operand 177 states and 195 transitions. Second operand 16 states. [2018-11-23 12:15:34,573 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:34,573 INFO L93 Difference]: Finished difference Result 272 states and 305 transitions. [2018-11-23 12:15:34,573 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2018-11-23 12:15:34,574 INFO L78 Accepts]: Start accepts. Automaton has 16 states. Word has length 348 [2018-11-23 12:15:34,574 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:15:34,574 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2018-11-23 12:15:34,575 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 82 transitions. [2018-11-23 12:15:34,575 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2018-11-23 12:15:34,575 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 82 transitions. [2018-11-23 12:15:34,575 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states and 82 transitions. [2018-11-23 12:15:34,646 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-23 12:15:34,650 INFO L225 Difference]: With dead ends: 272 [2018-11-23 12:15:34,650 INFO L226 Difference]: Without dead ends: 180 [2018-11-23 12:15:34,650 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 347 GetRequests, 333 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=120, Invalid=120, Unknown=0, NotChecked=0, Total=240 [2018-11-23 12:15:34,650 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 180 states. [2018-11-23 12:15:35,134 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 180 to 179. [2018-11-23 12:15:35,134 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:15:35,134 INFO L82 GeneralOperation]: Start isEquivalent. First operand 180 states. Second operand 179 states. [2018-11-23 12:15:35,135 INFO L74 IsIncluded]: Start isIncluded. First operand 180 states. Second operand 179 states. [2018-11-23 12:15:35,135 INFO L87 Difference]: Start difference. First operand 180 states. Second operand 179 states. [2018-11-23 12:15:35,138 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:35,138 INFO L93 Difference]: Finished difference Result 180 states and 198 transitions. [2018-11-23 12:15:35,138 INFO L276 IsEmpty]: Start isEmpty. Operand 180 states and 198 transitions. [2018-11-23 12:15:35,139 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:15:35,139 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:15:35,139 INFO L74 IsIncluded]: Start isIncluded. First operand 179 states. Second operand 180 states. [2018-11-23 12:15:35,139 INFO L87 Difference]: Start difference. First operand 179 states. Second operand 180 states. [2018-11-23 12:15:35,141 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:35,141 INFO L93 Difference]: Finished difference Result 180 states and 198 transitions. [2018-11-23 12:15:35,142 INFO L276 IsEmpty]: Start isEmpty. Operand 180 states and 198 transitions. [2018-11-23 12:15:35,142 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:15:35,142 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:15:35,142 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:15:35,142 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:15:35,142 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 179 states. [2018-11-23 12:15:35,144 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 179 states to 179 states and 197 transitions. [2018-11-23 12:15:35,145 INFO L78 Accepts]: Start accepts. Automaton has 179 states and 197 transitions. Word has length 348 [2018-11-23 12:15:35,145 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:15:35,145 INFO L480 AbstractCegarLoop]: Abstraction has 179 states and 197 transitions. [2018-11-23 12:15:35,145 INFO L481 AbstractCegarLoop]: Interpolant automaton has 16 states. [2018-11-23 12:15:35,145 INFO L276 IsEmpty]: Start isEmpty. Operand 179 states and 197 transitions. [2018-11-23 12:15:35,146 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 351 [2018-11-23 12:15:35,147 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:15:35,147 INFO L402 BasicCegarLoop]: trace histogram [81, 81, 42, 39, 21, 21, 14, 14, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:15:35,147 INFO L423 AbstractCegarLoop]: === Iteration 57 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:15:35,147 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:15:35,147 INFO L82 PathProgramCache]: Analyzing trace with hash -1317574332, now seen corresponding path program 52 times [2018-11-23 12:15:35,147 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:15:35,147 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:15:35,148 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:15:35,148 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:15:35,148 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:15:35,160 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:15:35,160 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:15:35,160 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 58 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 58 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:15:35,170 INFO L103 rtionOrderModulation]: Keeping assertion order TERMS_WITH_SMALL_CONSTANTS_FIRST [2018-11-23 12:15:35,290 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2018-11-23 12:15:35,291 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:15:35,339 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:15:35,341 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:15:36,200 INFO L256 TraceCheckUtils]: 0: Hoare triple {63869#true} call ULTIMATE.init(); {63869#true} is VALID [2018-11-23 12:15:36,200 INFO L273 TraceCheckUtils]: 1: Hoare triple {63869#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {63869#true} is VALID [2018-11-23 12:15:36,200 INFO L273 TraceCheckUtils]: 2: Hoare triple {63869#true} assume true; {63869#true} is VALID [2018-11-23 12:15:36,200 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {63869#true} {63869#true} #78#return; {63869#true} is VALID [2018-11-23 12:15:36,200 INFO L256 TraceCheckUtils]: 4: Hoare triple {63869#true} call #t~ret12 := main(); {63869#true} is VALID [2018-11-23 12:15:36,200 INFO L273 TraceCheckUtils]: 5: Hoare triple {63869#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {63869#true} is VALID [2018-11-23 12:15:36,201 INFO L256 TraceCheckUtils]: 6: Hoare triple {63869#true} call init_nondet(~#x~0.base, ~#x~0.offset); {63869#true} is VALID [2018-11-23 12:15:36,201 INFO L273 TraceCheckUtils]: 7: Hoare triple {63869#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {63869#true} is VALID [2018-11-23 12:15:36,201 INFO L273 TraceCheckUtils]: 8: Hoare triple {63869#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {63869#true} is VALID [2018-11-23 12:15:36,201 INFO L273 TraceCheckUtils]: 9: Hoare triple {63869#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {63869#true} is VALID [2018-11-23 12:15:36,201 INFO L273 TraceCheckUtils]: 10: Hoare triple {63869#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {63869#true} is VALID [2018-11-23 12:15:36,201 INFO L273 TraceCheckUtils]: 11: Hoare triple {63869#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {63869#true} is VALID [2018-11-23 12:15:36,201 INFO L273 TraceCheckUtils]: 12: Hoare triple {63869#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {63869#true} is VALID [2018-11-23 12:15:36,201 INFO L273 TraceCheckUtils]: 13: Hoare triple {63869#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {63869#true} is VALID [2018-11-23 12:15:36,201 INFO L273 TraceCheckUtils]: 14: Hoare triple {63869#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {63869#true} is VALID [2018-11-23 12:15:36,201 INFO L273 TraceCheckUtils]: 15: Hoare triple {63869#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {63869#true} is VALID [2018-11-23 12:15:36,202 INFO L273 TraceCheckUtils]: 16: Hoare triple {63869#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {63869#true} is VALID [2018-11-23 12:15:36,202 INFO L273 TraceCheckUtils]: 17: Hoare triple {63869#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {63869#true} is VALID [2018-11-23 12:15:36,202 INFO L273 TraceCheckUtils]: 18: Hoare triple {63869#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {63869#true} is VALID [2018-11-23 12:15:36,202 INFO L273 TraceCheckUtils]: 19: Hoare triple {63869#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {63869#true} is VALID [2018-11-23 12:15:36,202 INFO L273 TraceCheckUtils]: 20: Hoare triple {63869#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {63869#true} is VALID [2018-11-23 12:15:36,202 INFO L273 TraceCheckUtils]: 21: Hoare triple {63869#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {63869#true} is VALID [2018-11-23 12:15:36,202 INFO L273 TraceCheckUtils]: 22: Hoare triple {63869#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {63869#true} is VALID [2018-11-23 12:15:36,202 INFO L273 TraceCheckUtils]: 23: Hoare triple {63869#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {63869#true} is VALID [2018-11-23 12:15:36,202 INFO L273 TraceCheckUtils]: 24: Hoare triple {63869#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {63869#true} is VALID [2018-11-23 12:15:36,202 INFO L273 TraceCheckUtils]: 25: Hoare triple {63869#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {63869#true} is VALID [2018-11-23 12:15:36,203 INFO L273 TraceCheckUtils]: 26: Hoare triple {63869#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {63869#true} is VALID [2018-11-23 12:15:36,203 INFO L273 TraceCheckUtils]: 27: Hoare triple {63869#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {63869#true} is VALID [2018-11-23 12:15:36,203 INFO L273 TraceCheckUtils]: 28: Hoare triple {63869#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {63869#true} is VALID [2018-11-23 12:15:36,203 INFO L273 TraceCheckUtils]: 29: Hoare triple {63869#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {63869#true} is VALID [2018-11-23 12:15:36,203 INFO L273 TraceCheckUtils]: 30: Hoare triple {63869#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {63869#true} is VALID [2018-11-23 12:15:36,203 INFO L273 TraceCheckUtils]: 31: Hoare triple {63869#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {63869#true} is VALID [2018-11-23 12:15:36,203 INFO L273 TraceCheckUtils]: 32: Hoare triple {63869#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {63869#true} is VALID [2018-11-23 12:15:36,203 INFO L273 TraceCheckUtils]: 33: Hoare triple {63869#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {63869#true} is VALID [2018-11-23 12:15:36,203 INFO L273 TraceCheckUtils]: 34: Hoare triple {63869#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {63869#true} is VALID [2018-11-23 12:15:36,203 INFO L273 TraceCheckUtils]: 35: Hoare triple {63869#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {63869#true} is VALID [2018-11-23 12:15:36,204 INFO L273 TraceCheckUtils]: 36: Hoare triple {63869#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {63869#true} is VALID [2018-11-23 12:15:36,204 INFO L273 TraceCheckUtils]: 37: Hoare triple {63869#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {63869#true} is VALID [2018-11-23 12:15:36,204 INFO L273 TraceCheckUtils]: 38: Hoare triple {63869#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {63869#true} is VALID [2018-11-23 12:15:36,204 INFO L273 TraceCheckUtils]: 39: Hoare triple {63869#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {63869#true} is VALID [2018-11-23 12:15:36,204 INFO L273 TraceCheckUtils]: 40: Hoare triple {63869#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {63869#true} is VALID [2018-11-23 12:15:36,204 INFO L273 TraceCheckUtils]: 41: Hoare triple {63869#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {63869#true} is VALID [2018-11-23 12:15:36,204 INFO L273 TraceCheckUtils]: 42: Hoare triple {63869#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {63869#true} is VALID [2018-11-23 12:15:36,204 INFO L273 TraceCheckUtils]: 43: Hoare triple {63869#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {63869#true} is VALID [2018-11-23 12:15:36,204 INFO L273 TraceCheckUtils]: 44: Hoare triple {63869#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {63869#true} is VALID [2018-11-23 12:15:36,204 INFO L273 TraceCheckUtils]: 45: Hoare triple {63869#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {63869#true} is VALID [2018-11-23 12:15:36,205 INFO L273 TraceCheckUtils]: 46: Hoare triple {63869#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {63869#true} is VALID [2018-11-23 12:15:36,205 INFO L273 TraceCheckUtils]: 47: Hoare triple {63869#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {63869#true} is VALID [2018-11-23 12:15:36,205 INFO L273 TraceCheckUtils]: 48: Hoare triple {63869#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {63869#true} is VALID [2018-11-23 12:15:36,205 INFO L273 TraceCheckUtils]: 49: Hoare triple {63869#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {63869#true} is VALID [2018-11-23 12:15:36,205 INFO L273 TraceCheckUtils]: 50: Hoare triple {63869#true} assume !(~i~0 < 40); {63869#true} is VALID [2018-11-23 12:15:36,205 INFO L273 TraceCheckUtils]: 51: Hoare triple {63869#true} assume true; {63869#true} is VALID [2018-11-23 12:15:36,205 INFO L268 TraceCheckUtils]: 52: Hoare quadruple {63869#true} {63869#true} #82#return; {63869#true} is VALID [2018-11-23 12:15:36,205 INFO L273 TraceCheckUtils]: 53: Hoare triple {63869#true} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {63869#true} is VALID [2018-11-23 12:15:36,205 INFO L256 TraceCheckUtils]: 54: Hoare triple {63869#true} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {63869#true} is VALID [2018-11-23 12:15:36,206 INFO L273 TraceCheckUtils]: 55: Hoare triple {63869#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {63869#true} is VALID [2018-11-23 12:15:36,206 INFO L273 TraceCheckUtils]: 56: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,206 INFO L273 TraceCheckUtils]: 57: Hoare triple {63869#true} assume !(~i~1 > 20); {63869#true} is VALID [2018-11-23 12:15:36,206 INFO L273 TraceCheckUtils]: 58: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,206 INFO L273 TraceCheckUtils]: 59: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,206 INFO L273 TraceCheckUtils]: 60: Hoare triple {63869#true} assume !(~i~1 > 20); {63869#true} is VALID [2018-11-23 12:15:36,206 INFO L273 TraceCheckUtils]: 61: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,206 INFO L273 TraceCheckUtils]: 62: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,206 INFO L273 TraceCheckUtils]: 63: Hoare triple {63869#true} assume !(~i~1 > 20); {63869#true} is VALID [2018-11-23 12:15:36,206 INFO L273 TraceCheckUtils]: 64: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,207 INFO L273 TraceCheckUtils]: 65: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,207 INFO L273 TraceCheckUtils]: 66: Hoare triple {63869#true} assume !(~i~1 > 20); {63869#true} is VALID [2018-11-23 12:15:36,207 INFO L273 TraceCheckUtils]: 67: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,207 INFO L273 TraceCheckUtils]: 68: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,207 INFO L273 TraceCheckUtils]: 69: Hoare triple {63869#true} assume !(~i~1 > 20); {63869#true} is VALID [2018-11-23 12:15:36,207 INFO L273 TraceCheckUtils]: 70: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,207 INFO L273 TraceCheckUtils]: 71: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,207 INFO L273 TraceCheckUtils]: 72: Hoare triple {63869#true} assume !(~i~1 > 20); {63869#true} is VALID [2018-11-23 12:15:36,207 INFO L273 TraceCheckUtils]: 73: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,207 INFO L273 TraceCheckUtils]: 74: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,208 INFO L273 TraceCheckUtils]: 75: Hoare triple {63869#true} assume !(~i~1 > 20); {63869#true} is VALID [2018-11-23 12:15:36,208 INFO L273 TraceCheckUtils]: 76: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,208 INFO L273 TraceCheckUtils]: 77: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,208 INFO L273 TraceCheckUtils]: 78: Hoare triple {63869#true} assume !(~i~1 > 20); {63869#true} is VALID [2018-11-23 12:15:36,208 INFO L273 TraceCheckUtils]: 79: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,208 INFO L273 TraceCheckUtils]: 80: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,208 INFO L273 TraceCheckUtils]: 81: Hoare triple {63869#true} assume !(~i~1 > 20); {63869#true} is VALID [2018-11-23 12:15:36,208 INFO L273 TraceCheckUtils]: 82: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,208 INFO L273 TraceCheckUtils]: 83: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,208 INFO L273 TraceCheckUtils]: 84: Hoare triple {63869#true} assume !(~i~1 > 20); {63869#true} is VALID [2018-11-23 12:15:36,209 INFO L273 TraceCheckUtils]: 85: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,209 INFO L273 TraceCheckUtils]: 86: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,209 INFO L273 TraceCheckUtils]: 87: Hoare triple {63869#true} assume !(~i~1 > 20); {63869#true} is VALID [2018-11-23 12:15:36,209 INFO L273 TraceCheckUtils]: 88: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,209 INFO L273 TraceCheckUtils]: 89: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,209 INFO L273 TraceCheckUtils]: 90: Hoare triple {63869#true} assume !(~i~1 > 20); {63869#true} is VALID [2018-11-23 12:15:36,209 INFO L273 TraceCheckUtils]: 91: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,209 INFO L273 TraceCheckUtils]: 92: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,209 INFO L273 TraceCheckUtils]: 93: Hoare triple {63869#true} assume !(~i~1 > 20); {63869#true} is VALID [2018-11-23 12:15:36,209 INFO L273 TraceCheckUtils]: 94: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,210 INFO L273 TraceCheckUtils]: 95: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,210 INFO L273 TraceCheckUtils]: 96: Hoare triple {63869#true} assume !(~i~1 > 20); {63869#true} is VALID [2018-11-23 12:15:36,210 INFO L273 TraceCheckUtils]: 97: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,210 INFO L273 TraceCheckUtils]: 98: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,210 INFO L273 TraceCheckUtils]: 99: Hoare triple {63869#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {63869#true} is VALID [2018-11-23 12:15:36,210 INFO L273 TraceCheckUtils]: 100: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,210 INFO L273 TraceCheckUtils]: 101: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,210 INFO L273 TraceCheckUtils]: 102: Hoare triple {63869#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {63869#true} is VALID [2018-11-23 12:15:36,210 INFO L273 TraceCheckUtils]: 103: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,211 INFO L273 TraceCheckUtils]: 104: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,211 INFO L273 TraceCheckUtils]: 105: Hoare triple {63869#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {63869#true} is VALID [2018-11-23 12:15:36,211 INFO L273 TraceCheckUtils]: 106: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,211 INFO L273 TraceCheckUtils]: 107: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,211 INFO L273 TraceCheckUtils]: 108: Hoare triple {63869#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {63869#true} is VALID [2018-11-23 12:15:36,211 INFO L273 TraceCheckUtils]: 109: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,211 INFO L273 TraceCheckUtils]: 110: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,211 INFO L273 TraceCheckUtils]: 111: Hoare triple {63869#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {63869#true} is VALID [2018-11-23 12:15:36,211 INFO L273 TraceCheckUtils]: 112: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,211 INFO L273 TraceCheckUtils]: 113: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,212 INFO L273 TraceCheckUtils]: 114: Hoare triple {63869#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {63869#true} is VALID [2018-11-23 12:15:36,212 INFO L273 TraceCheckUtils]: 115: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,212 INFO L273 TraceCheckUtils]: 116: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,212 INFO L273 TraceCheckUtils]: 117: Hoare triple {63869#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {63869#true} is VALID [2018-11-23 12:15:36,212 INFO L273 TraceCheckUtils]: 118: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,212 INFO L273 TraceCheckUtils]: 119: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,212 INFO L273 TraceCheckUtils]: 120: Hoare triple {63869#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {63869#true} is VALID [2018-11-23 12:15:36,212 INFO L273 TraceCheckUtils]: 121: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,212 INFO L273 TraceCheckUtils]: 122: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,212 INFO L273 TraceCheckUtils]: 123: Hoare triple {63869#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {63869#true} is VALID [2018-11-23 12:15:36,213 INFO L273 TraceCheckUtils]: 124: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,213 INFO L273 TraceCheckUtils]: 125: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,213 INFO L273 TraceCheckUtils]: 126: Hoare triple {63869#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {63869#true} is VALID [2018-11-23 12:15:36,213 INFO L273 TraceCheckUtils]: 127: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,213 INFO L273 TraceCheckUtils]: 128: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,213 INFO L273 TraceCheckUtils]: 129: Hoare triple {63869#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {63869#true} is VALID [2018-11-23 12:15:36,213 INFO L273 TraceCheckUtils]: 130: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,213 INFO L273 TraceCheckUtils]: 131: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,213 INFO L273 TraceCheckUtils]: 132: Hoare triple {63869#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {63869#true} is VALID [2018-11-23 12:15:36,213 INFO L273 TraceCheckUtils]: 133: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,214 INFO L273 TraceCheckUtils]: 134: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,214 INFO L273 TraceCheckUtils]: 135: Hoare triple {63869#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {63869#true} is VALID [2018-11-23 12:15:36,214 INFO L273 TraceCheckUtils]: 136: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,214 INFO L273 TraceCheckUtils]: 137: Hoare triple {63869#true} assume !(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,214 INFO L273 TraceCheckUtils]: 138: Hoare triple {63869#true} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {63869#true} is VALID [2018-11-23 12:15:36,214 INFO L273 TraceCheckUtils]: 139: Hoare triple {63869#true} assume true; {63869#true} is VALID [2018-11-23 12:15:36,214 INFO L268 TraceCheckUtils]: 140: Hoare quadruple {63869#true} {63869#true} #84#return; {63869#true} is VALID [2018-11-23 12:15:36,214 INFO L273 TraceCheckUtils]: 141: Hoare triple {63869#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {63869#true} is VALID [2018-11-23 12:15:36,214 INFO L256 TraceCheckUtils]: 142: Hoare triple {63869#true} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {63869#true} is VALID [2018-11-23 12:15:36,214 INFO L273 TraceCheckUtils]: 143: Hoare triple {63869#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {63869#true} is VALID [2018-11-23 12:15:36,215 INFO L273 TraceCheckUtils]: 144: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,215 INFO L273 TraceCheckUtils]: 145: Hoare triple {63869#true} assume !(~i~1 > 20); {63869#true} is VALID [2018-11-23 12:15:36,215 INFO L273 TraceCheckUtils]: 146: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,215 INFO L273 TraceCheckUtils]: 147: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,215 INFO L273 TraceCheckUtils]: 148: Hoare triple {63869#true} assume !(~i~1 > 20); {63869#true} is VALID [2018-11-23 12:15:36,215 INFO L273 TraceCheckUtils]: 149: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,215 INFO L273 TraceCheckUtils]: 150: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,215 INFO L273 TraceCheckUtils]: 151: Hoare triple {63869#true} assume !(~i~1 > 20); {63869#true} is VALID [2018-11-23 12:15:36,215 INFO L273 TraceCheckUtils]: 152: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,215 INFO L273 TraceCheckUtils]: 153: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,216 INFO L273 TraceCheckUtils]: 154: Hoare triple {63869#true} assume !(~i~1 > 20); {63869#true} is VALID [2018-11-23 12:15:36,216 INFO L273 TraceCheckUtils]: 155: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,216 INFO L273 TraceCheckUtils]: 156: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,216 INFO L273 TraceCheckUtils]: 157: Hoare triple {63869#true} assume !(~i~1 > 20); {63869#true} is VALID [2018-11-23 12:15:36,216 INFO L273 TraceCheckUtils]: 158: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,216 INFO L273 TraceCheckUtils]: 159: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,216 INFO L273 TraceCheckUtils]: 160: Hoare triple {63869#true} assume !(~i~1 > 20); {63869#true} is VALID [2018-11-23 12:15:36,216 INFO L273 TraceCheckUtils]: 161: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,216 INFO L273 TraceCheckUtils]: 162: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,216 INFO L273 TraceCheckUtils]: 163: Hoare triple {63869#true} assume !(~i~1 > 20); {63869#true} is VALID [2018-11-23 12:15:36,217 INFO L273 TraceCheckUtils]: 164: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,217 INFO L273 TraceCheckUtils]: 165: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,217 INFO L273 TraceCheckUtils]: 166: Hoare triple {63869#true} assume !(~i~1 > 20); {63869#true} is VALID [2018-11-23 12:15:36,217 INFO L273 TraceCheckUtils]: 167: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,217 INFO L273 TraceCheckUtils]: 168: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,217 INFO L273 TraceCheckUtils]: 169: Hoare triple {63869#true} assume !(~i~1 > 20); {63869#true} is VALID [2018-11-23 12:15:36,217 INFO L273 TraceCheckUtils]: 170: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,217 INFO L273 TraceCheckUtils]: 171: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,217 INFO L273 TraceCheckUtils]: 172: Hoare triple {63869#true} assume !(~i~1 > 20); {63869#true} is VALID [2018-11-23 12:15:36,217 INFO L273 TraceCheckUtils]: 173: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,218 INFO L273 TraceCheckUtils]: 174: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,218 INFO L273 TraceCheckUtils]: 175: Hoare triple {63869#true} assume !(~i~1 > 20); {63869#true} is VALID [2018-11-23 12:15:36,218 INFO L273 TraceCheckUtils]: 176: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,218 INFO L273 TraceCheckUtils]: 177: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,218 INFO L273 TraceCheckUtils]: 178: Hoare triple {63869#true} assume !(~i~1 > 20); {63869#true} is VALID [2018-11-23 12:15:36,218 INFO L273 TraceCheckUtils]: 179: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,218 INFO L273 TraceCheckUtils]: 180: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,218 INFO L273 TraceCheckUtils]: 181: Hoare triple {63869#true} assume !(~i~1 > 20); {63869#true} is VALID [2018-11-23 12:15:36,218 INFO L273 TraceCheckUtils]: 182: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,218 INFO L273 TraceCheckUtils]: 183: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,219 INFO L273 TraceCheckUtils]: 184: Hoare triple {63869#true} assume !(~i~1 > 20); {63869#true} is VALID [2018-11-23 12:15:36,219 INFO L273 TraceCheckUtils]: 185: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,219 INFO L273 TraceCheckUtils]: 186: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,219 INFO L273 TraceCheckUtils]: 187: Hoare triple {63869#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {63869#true} is VALID [2018-11-23 12:15:36,219 INFO L273 TraceCheckUtils]: 188: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,219 INFO L273 TraceCheckUtils]: 189: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,219 INFO L273 TraceCheckUtils]: 190: Hoare triple {63869#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {63869#true} is VALID [2018-11-23 12:15:36,219 INFO L273 TraceCheckUtils]: 191: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,219 INFO L273 TraceCheckUtils]: 192: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,219 INFO L273 TraceCheckUtils]: 193: Hoare triple {63869#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {63869#true} is VALID [2018-11-23 12:15:36,220 INFO L273 TraceCheckUtils]: 194: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,220 INFO L273 TraceCheckUtils]: 195: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,220 INFO L273 TraceCheckUtils]: 196: Hoare triple {63869#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {63869#true} is VALID [2018-11-23 12:15:36,220 INFO L273 TraceCheckUtils]: 197: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,220 INFO L273 TraceCheckUtils]: 198: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,220 INFO L273 TraceCheckUtils]: 199: Hoare triple {63869#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {63869#true} is VALID [2018-11-23 12:15:36,220 INFO L273 TraceCheckUtils]: 200: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,220 INFO L273 TraceCheckUtils]: 201: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,220 INFO L273 TraceCheckUtils]: 202: Hoare triple {63869#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {63869#true} is VALID [2018-11-23 12:15:36,220 INFO L273 TraceCheckUtils]: 203: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,221 INFO L273 TraceCheckUtils]: 204: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,221 INFO L273 TraceCheckUtils]: 205: Hoare triple {63869#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {63869#true} is VALID [2018-11-23 12:15:36,221 INFO L273 TraceCheckUtils]: 206: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,221 INFO L273 TraceCheckUtils]: 207: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,221 INFO L273 TraceCheckUtils]: 208: Hoare triple {63869#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {63869#true} is VALID [2018-11-23 12:15:36,221 INFO L273 TraceCheckUtils]: 209: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,221 INFO L273 TraceCheckUtils]: 210: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,221 INFO L273 TraceCheckUtils]: 211: Hoare triple {63869#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {63869#true} is VALID [2018-11-23 12:15:36,221 INFO L273 TraceCheckUtils]: 212: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,221 INFO L273 TraceCheckUtils]: 213: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,222 INFO L273 TraceCheckUtils]: 214: Hoare triple {63869#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {63869#true} is VALID [2018-11-23 12:15:36,222 INFO L273 TraceCheckUtils]: 215: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,222 INFO L273 TraceCheckUtils]: 216: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,222 INFO L273 TraceCheckUtils]: 217: Hoare triple {63869#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {63869#true} is VALID [2018-11-23 12:15:36,222 INFO L273 TraceCheckUtils]: 218: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,222 INFO L273 TraceCheckUtils]: 219: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,222 INFO L273 TraceCheckUtils]: 220: Hoare triple {63869#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {63869#true} is VALID [2018-11-23 12:15:36,222 INFO L273 TraceCheckUtils]: 221: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,222 INFO L273 TraceCheckUtils]: 222: Hoare triple {63869#true} assume !!(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,222 INFO L273 TraceCheckUtils]: 223: Hoare triple {63869#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {63869#true} is VALID [2018-11-23 12:15:36,223 INFO L273 TraceCheckUtils]: 224: Hoare triple {63869#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63869#true} is VALID [2018-11-23 12:15:36,223 INFO L273 TraceCheckUtils]: 225: Hoare triple {63869#true} assume !(~i~1 < 40); {63869#true} is VALID [2018-11-23 12:15:36,223 INFO L273 TraceCheckUtils]: 226: Hoare triple {63869#true} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {63869#true} is VALID [2018-11-23 12:15:36,223 INFO L273 TraceCheckUtils]: 227: Hoare triple {63869#true} assume true; {63869#true} is VALID [2018-11-23 12:15:36,223 INFO L268 TraceCheckUtils]: 228: Hoare quadruple {63869#true} {63869#true} #86#return; {63869#true} is VALID [2018-11-23 12:15:36,223 INFO L273 TraceCheckUtils]: 229: Hoare triple {63869#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {63869#true} is VALID [2018-11-23 12:15:36,223 INFO L273 TraceCheckUtils]: 230: Hoare triple {63869#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {63869#true} is VALID [2018-11-23 12:15:36,223 INFO L273 TraceCheckUtils]: 231: Hoare triple {63869#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {63869#true} is VALID [2018-11-23 12:15:36,223 INFO L273 TraceCheckUtils]: 232: Hoare triple {63869#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {63869#true} is VALID [2018-11-23 12:15:36,224 INFO L273 TraceCheckUtils]: 233: Hoare triple {63869#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {63869#true} is VALID [2018-11-23 12:15:36,224 INFO L273 TraceCheckUtils]: 234: Hoare triple {63869#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {63869#true} is VALID [2018-11-23 12:15:36,224 INFO L273 TraceCheckUtils]: 235: Hoare triple {63869#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {63869#true} is VALID [2018-11-23 12:15:36,224 INFO L273 TraceCheckUtils]: 236: Hoare triple {63869#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {63869#true} is VALID [2018-11-23 12:15:36,224 INFO L273 TraceCheckUtils]: 237: Hoare triple {63869#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {63869#true} is VALID [2018-11-23 12:15:36,224 INFO L273 TraceCheckUtils]: 238: Hoare triple {63869#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {63869#true} is VALID [2018-11-23 12:15:36,224 INFO L273 TraceCheckUtils]: 239: Hoare triple {63869#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {63869#true} is VALID [2018-11-23 12:15:36,224 INFO L273 TraceCheckUtils]: 240: Hoare triple {63869#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {63869#true} is VALID [2018-11-23 12:15:36,224 INFO L273 TraceCheckUtils]: 241: Hoare triple {63869#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {63869#true} is VALID [2018-11-23 12:15:36,224 INFO L273 TraceCheckUtils]: 242: Hoare triple {63869#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {63869#true} is VALID [2018-11-23 12:15:36,225 INFO L273 TraceCheckUtils]: 243: Hoare triple {63869#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {63869#true} is VALID [2018-11-23 12:15:36,225 INFO L273 TraceCheckUtils]: 244: Hoare triple {63869#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {63869#true} is VALID [2018-11-23 12:15:36,225 INFO L273 TraceCheckUtils]: 245: Hoare triple {63869#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {63869#true} is VALID [2018-11-23 12:15:36,225 INFO L273 TraceCheckUtils]: 246: Hoare triple {63869#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {63869#true} is VALID [2018-11-23 12:15:36,225 INFO L273 TraceCheckUtils]: 247: Hoare triple {63869#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {63869#true} is VALID [2018-11-23 12:15:36,225 INFO L273 TraceCheckUtils]: 248: Hoare triple {63869#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {63869#true} is VALID [2018-11-23 12:15:36,225 INFO L273 TraceCheckUtils]: 249: Hoare triple {63869#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {63869#true} is VALID [2018-11-23 12:15:36,225 INFO L273 TraceCheckUtils]: 250: Hoare triple {63869#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {63869#true} is VALID [2018-11-23 12:15:36,225 INFO L273 TraceCheckUtils]: 251: Hoare triple {63869#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {63869#true} is VALID [2018-11-23 12:15:36,225 INFO L273 TraceCheckUtils]: 252: Hoare triple {63869#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {63869#true} is VALID [2018-11-23 12:15:36,226 INFO L273 TraceCheckUtils]: 253: Hoare triple {63869#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {63869#true} is VALID [2018-11-23 12:15:36,226 INFO L273 TraceCheckUtils]: 254: Hoare triple {63869#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {63869#true} is VALID [2018-11-23 12:15:36,226 INFO L273 TraceCheckUtils]: 255: Hoare triple {63869#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {63869#true} is VALID [2018-11-23 12:15:36,226 INFO L273 TraceCheckUtils]: 256: Hoare triple {63869#true} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {63869#true} is VALID [2018-11-23 12:15:36,226 INFO L273 TraceCheckUtils]: 257: Hoare triple {63869#true} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {63869#true} is VALID [2018-11-23 12:15:36,226 INFO L273 TraceCheckUtils]: 258: Hoare triple {63869#true} assume !(~i~2 < 39); {63869#true} is VALID [2018-11-23 12:15:36,226 INFO L273 TraceCheckUtils]: 259: Hoare triple {63869#true} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {63869#true} is VALID [2018-11-23 12:15:36,226 INFO L256 TraceCheckUtils]: 260: Hoare triple {63869#true} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {63869#true} is VALID [2018-11-23 12:15:36,227 INFO L273 TraceCheckUtils]: 261: Hoare triple {63869#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {64657#(<= rangesum_~i~1 0)} is VALID [2018-11-23 12:15:36,227 INFO L273 TraceCheckUtils]: 262: Hoare triple {64657#(<= rangesum_~i~1 0)} assume !!(~i~1 < 40); {64657#(<= rangesum_~i~1 0)} is VALID [2018-11-23 12:15:36,228 INFO L273 TraceCheckUtils]: 263: Hoare triple {64657#(<= rangesum_~i~1 0)} assume !(~i~1 > 20); {64657#(<= rangesum_~i~1 0)} is VALID [2018-11-23 12:15:36,228 INFO L273 TraceCheckUtils]: 264: Hoare triple {64657#(<= rangesum_~i~1 0)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {64667#(<= rangesum_~i~1 1)} is VALID [2018-11-23 12:15:36,230 INFO L273 TraceCheckUtils]: 265: Hoare triple {64667#(<= rangesum_~i~1 1)} assume !!(~i~1 < 40); {64667#(<= rangesum_~i~1 1)} is VALID [2018-11-23 12:15:36,230 INFO L273 TraceCheckUtils]: 266: Hoare triple {64667#(<= rangesum_~i~1 1)} assume !(~i~1 > 20); {64667#(<= rangesum_~i~1 1)} is VALID [2018-11-23 12:15:36,232 INFO L273 TraceCheckUtils]: 267: Hoare triple {64667#(<= rangesum_~i~1 1)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {64677#(<= rangesum_~i~1 2)} is VALID [2018-11-23 12:15:36,232 INFO L273 TraceCheckUtils]: 268: Hoare triple {64677#(<= rangesum_~i~1 2)} assume !!(~i~1 < 40); {64677#(<= rangesum_~i~1 2)} is VALID [2018-11-23 12:15:36,234 INFO L273 TraceCheckUtils]: 269: Hoare triple {64677#(<= rangesum_~i~1 2)} assume !(~i~1 > 20); {64677#(<= rangesum_~i~1 2)} is VALID [2018-11-23 12:15:36,234 INFO L273 TraceCheckUtils]: 270: Hoare triple {64677#(<= rangesum_~i~1 2)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {64687#(<= rangesum_~i~1 3)} is VALID [2018-11-23 12:15:36,236 INFO L273 TraceCheckUtils]: 271: Hoare triple {64687#(<= rangesum_~i~1 3)} assume !!(~i~1 < 40); {64687#(<= rangesum_~i~1 3)} is VALID [2018-11-23 12:15:36,236 INFO L273 TraceCheckUtils]: 272: Hoare triple {64687#(<= rangesum_~i~1 3)} assume !(~i~1 > 20); {64687#(<= rangesum_~i~1 3)} is VALID [2018-11-23 12:15:36,238 INFO L273 TraceCheckUtils]: 273: Hoare triple {64687#(<= rangesum_~i~1 3)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {64697#(<= rangesum_~i~1 4)} is VALID [2018-11-23 12:15:36,240 INFO L273 TraceCheckUtils]: 274: Hoare triple {64697#(<= rangesum_~i~1 4)} assume !!(~i~1 < 40); {64697#(<= rangesum_~i~1 4)} is VALID [2018-11-23 12:15:36,240 INFO L273 TraceCheckUtils]: 275: Hoare triple {64697#(<= rangesum_~i~1 4)} assume !(~i~1 > 20); {64697#(<= rangesum_~i~1 4)} is VALID [2018-11-23 12:15:36,242 INFO L273 TraceCheckUtils]: 276: Hoare triple {64697#(<= rangesum_~i~1 4)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {64707#(<= rangesum_~i~1 5)} is VALID [2018-11-23 12:15:36,242 INFO L273 TraceCheckUtils]: 277: Hoare triple {64707#(<= rangesum_~i~1 5)} assume !!(~i~1 < 40); {64707#(<= rangesum_~i~1 5)} is VALID [2018-11-23 12:15:36,244 INFO L273 TraceCheckUtils]: 278: Hoare triple {64707#(<= rangesum_~i~1 5)} assume !(~i~1 > 20); {64707#(<= rangesum_~i~1 5)} is VALID [2018-11-23 12:15:36,244 INFO L273 TraceCheckUtils]: 279: Hoare triple {64707#(<= rangesum_~i~1 5)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {64717#(<= rangesum_~i~1 6)} is VALID [2018-11-23 12:15:36,246 INFO L273 TraceCheckUtils]: 280: Hoare triple {64717#(<= rangesum_~i~1 6)} assume !!(~i~1 < 40); {64717#(<= rangesum_~i~1 6)} is VALID [2018-11-23 12:15:36,246 INFO L273 TraceCheckUtils]: 281: Hoare triple {64717#(<= rangesum_~i~1 6)} assume !(~i~1 > 20); {64717#(<= rangesum_~i~1 6)} is VALID [2018-11-23 12:15:36,248 INFO L273 TraceCheckUtils]: 282: Hoare triple {64717#(<= rangesum_~i~1 6)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {64727#(<= rangesum_~i~1 7)} is VALID [2018-11-23 12:15:36,248 INFO L273 TraceCheckUtils]: 283: Hoare triple {64727#(<= rangesum_~i~1 7)} assume !!(~i~1 < 40); {64727#(<= rangesum_~i~1 7)} is VALID [2018-11-23 12:15:36,250 INFO L273 TraceCheckUtils]: 284: Hoare triple {64727#(<= rangesum_~i~1 7)} assume !(~i~1 > 20); {64727#(<= rangesum_~i~1 7)} is VALID [2018-11-23 12:15:36,250 INFO L273 TraceCheckUtils]: 285: Hoare triple {64727#(<= rangesum_~i~1 7)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {64737#(<= rangesum_~i~1 8)} is VALID [2018-11-23 12:15:36,254 INFO L273 TraceCheckUtils]: 286: Hoare triple {64737#(<= rangesum_~i~1 8)} assume !!(~i~1 < 40); {64737#(<= rangesum_~i~1 8)} is VALID [2018-11-23 12:15:36,254 INFO L273 TraceCheckUtils]: 287: Hoare triple {64737#(<= rangesum_~i~1 8)} assume !(~i~1 > 20); {64737#(<= rangesum_~i~1 8)} is VALID [2018-11-23 12:15:36,256 INFO L273 TraceCheckUtils]: 288: Hoare triple {64737#(<= rangesum_~i~1 8)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {64747#(<= rangesum_~i~1 9)} is VALID [2018-11-23 12:15:36,256 INFO L273 TraceCheckUtils]: 289: Hoare triple {64747#(<= rangesum_~i~1 9)} assume !!(~i~1 < 40); {64747#(<= rangesum_~i~1 9)} is VALID [2018-11-23 12:15:36,258 INFO L273 TraceCheckUtils]: 290: Hoare triple {64747#(<= rangesum_~i~1 9)} assume !(~i~1 > 20); {64747#(<= rangesum_~i~1 9)} is VALID [2018-11-23 12:15:36,258 INFO L273 TraceCheckUtils]: 291: Hoare triple {64747#(<= rangesum_~i~1 9)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {64757#(<= rangesum_~i~1 10)} is VALID [2018-11-23 12:15:36,260 INFO L273 TraceCheckUtils]: 292: Hoare triple {64757#(<= rangesum_~i~1 10)} assume !!(~i~1 < 40); {64757#(<= rangesum_~i~1 10)} is VALID [2018-11-23 12:15:36,262 INFO L273 TraceCheckUtils]: 293: Hoare triple {64757#(<= rangesum_~i~1 10)} assume !(~i~1 > 20); {64757#(<= rangesum_~i~1 10)} is VALID [2018-11-23 12:15:36,262 INFO L273 TraceCheckUtils]: 294: Hoare triple {64757#(<= rangesum_~i~1 10)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {64767#(<= rangesum_~i~1 11)} is VALID [2018-11-23 12:15:36,264 INFO L273 TraceCheckUtils]: 295: Hoare triple {64767#(<= rangesum_~i~1 11)} assume !!(~i~1 < 40); {64767#(<= rangesum_~i~1 11)} is VALID [2018-11-23 12:15:36,264 INFO L273 TraceCheckUtils]: 296: Hoare triple {64767#(<= rangesum_~i~1 11)} assume !(~i~1 > 20); {64767#(<= rangesum_~i~1 11)} is VALID [2018-11-23 12:15:36,266 INFO L273 TraceCheckUtils]: 297: Hoare triple {64767#(<= rangesum_~i~1 11)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {64777#(<= rangesum_~i~1 12)} is VALID [2018-11-23 12:15:36,266 INFO L273 TraceCheckUtils]: 298: Hoare triple {64777#(<= rangesum_~i~1 12)} assume !!(~i~1 < 40); {64777#(<= rangesum_~i~1 12)} is VALID [2018-11-23 12:15:36,268 INFO L273 TraceCheckUtils]: 299: Hoare triple {64777#(<= rangesum_~i~1 12)} assume !(~i~1 > 20); {64777#(<= rangesum_~i~1 12)} is VALID [2018-11-23 12:15:36,268 INFO L273 TraceCheckUtils]: 300: Hoare triple {64777#(<= rangesum_~i~1 12)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {64787#(<= rangesum_~i~1 13)} is VALID [2018-11-23 12:15:36,270 INFO L273 TraceCheckUtils]: 301: Hoare triple {64787#(<= rangesum_~i~1 13)} assume !!(~i~1 < 40); {64787#(<= rangesum_~i~1 13)} is VALID [2018-11-23 12:15:36,270 INFO L273 TraceCheckUtils]: 302: Hoare triple {64787#(<= rangesum_~i~1 13)} assume !(~i~1 > 20); {64787#(<= rangesum_~i~1 13)} is VALID [2018-11-23 12:15:36,272 INFO L273 TraceCheckUtils]: 303: Hoare triple {64787#(<= rangesum_~i~1 13)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {64797#(<= rangesum_~i~1 14)} is VALID [2018-11-23 12:15:36,272 INFO L273 TraceCheckUtils]: 304: Hoare triple {64797#(<= rangesum_~i~1 14)} assume !!(~i~1 < 40); {64797#(<= rangesum_~i~1 14)} is VALID [2018-11-23 12:15:36,274 INFO L273 TraceCheckUtils]: 305: Hoare triple {64797#(<= rangesum_~i~1 14)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {63870#false} is VALID [2018-11-23 12:15:36,274 INFO L273 TraceCheckUtils]: 306: Hoare triple {63870#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63870#false} is VALID [2018-11-23 12:15:36,274 INFO L273 TraceCheckUtils]: 307: Hoare triple {63870#false} assume !!(~i~1 < 40); {63870#false} is VALID [2018-11-23 12:15:36,274 INFO L273 TraceCheckUtils]: 308: Hoare triple {63870#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {63870#false} is VALID [2018-11-23 12:15:36,274 INFO L273 TraceCheckUtils]: 309: Hoare triple {63870#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63870#false} is VALID [2018-11-23 12:15:36,274 INFO L273 TraceCheckUtils]: 310: Hoare triple {63870#false} assume !!(~i~1 < 40); {63870#false} is VALID [2018-11-23 12:15:36,274 INFO L273 TraceCheckUtils]: 311: Hoare triple {63870#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {63870#false} is VALID [2018-11-23 12:15:36,274 INFO L273 TraceCheckUtils]: 312: Hoare triple {63870#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63870#false} is VALID [2018-11-23 12:15:36,275 INFO L273 TraceCheckUtils]: 313: Hoare triple {63870#false} assume !!(~i~1 < 40); {63870#false} is VALID [2018-11-23 12:15:36,275 INFO L273 TraceCheckUtils]: 314: Hoare triple {63870#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {63870#false} is VALID [2018-11-23 12:15:36,275 INFO L273 TraceCheckUtils]: 315: Hoare triple {63870#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63870#false} is VALID [2018-11-23 12:15:36,275 INFO L273 TraceCheckUtils]: 316: Hoare triple {63870#false} assume !!(~i~1 < 40); {63870#false} is VALID [2018-11-23 12:15:36,275 INFO L273 TraceCheckUtils]: 317: Hoare triple {63870#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {63870#false} is VALID [2018-11-23 12:15:36,275 INFO L273 TraceCheckUtils]: 318: Hoare triple {63870#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63870#false} is VALID [2018-11-23 12:15:36,275 INFO L273 TraceCheckUtils]: 319: Hoare triple {63870#false} assume !!(~i~1 < 40); {63870#false} is VALID [2018-11-23 12:15:36,275 INFO L273 TraceCheckUtils]: 320: Hoare triple {63870#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {63870#false} is VALID [2018-11-23 12:15:36,275 INFO L273 TraceCheckUtils]: 321: Hoare triple {63870#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63870#false} is VALID [2018-11-23 12:15:36,275 INFO L273 TraceCheckUtils]: 322: Hoare triple {63870#false} assume !!(~i~1 < 40); {63870#false} is VALID [2018-11-23 12:15:36,276 INFO L273 TraceCheckUtils]: 323: Hoare triple {63870#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {63870#false} is VALID [2018-11-23 12:15:36,276 INFO L273 TraceCheckUtils]: 324: Hoare triple {63870#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63870#false} is VALID [2018-11-23 12:15:36,276 INFO L273 TraceCheckUtils]: 325: Hoare triple {63870#false} assume !!(~i~1 < 40); {63870#false} is VALID [2018-11-23 12:15:36,276 INFO L273 TraceCheckUtils]: 326: Hoare triple {63870#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {63870#false} is VALID [2018-11-23 12:15:36,276 INFO L273 TraceCheckUtils]: 327: Hoare triple {63870#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63870#false} is VALID [2018-11-23 12:15:36,276 INFO L273 TraceCheckUtils]: 328: Hoare triple {63870#false} assume !!(~i~1 < 40); {63870#false} is VALID [2018-11-23 12:15:36,276 INFO L273 TraceCheckUtils]: 329: Hoare triple {63870#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {63870#false} is VALID [2018-11-23 12:15:36,276 INFO L273 TraceCheckUtils]: 330: Hoare triple {63870#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63870#false} is VALID [2018-11-23 12:15:36,276 INFO L273 TraceCheckUtils]: 331: Hoare triple {63870#false} assume !!(~i~1 < 40); {63870#false} is VALID [2018-11-23 12:15:36,276 INFO L273 TraceCheckUtils]: 332: Hoare triple {63870#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {63870#false} is VALID [2018-11-23 12:15:36,277 INFO L273 TraceCheckUtils]: 333: Hoare triple {63870#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63870#false} is VALID [2018-11-23 12:15:36,277 INFO L273 TraceCheckUtils]: 334: Hoare triple {63870#false} assume !!(~i~1 < 40); {63870#false} is VALID [2018-11-23 12:15:36,277 INFO L273 TraceCheckUtils]: 335: Hoare triple {63870#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {63870#false} is VALID [2018-11-23 12:15:36,277 INFO L273 TraceCheckUtils]: 336: Hoare triple {63870#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63870#false} is VALID [2018-11-23 12:15:36,277 INFO L273 TraceCheckUtils]: 337: Hoare triple {63870#false} assume !!(~i~1 < 40); {63870#false} is VALID [2018-11-23 12:15:36,277 INFO L273 TraceCheckUtils]: 338: Hoare triple {63870#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {63870#false} is VALID [2018-11-23 12:15:36,277 INFO L273 TraceCheckUtils]: 339: Hoare triple {63870#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63870#false} is VALID [2018-11-23 12:15:36,277 INFO L273 TraceCheckUtils]: 340: Hoare triple {63870#false} assume !!(~i~1 < 40); {63870#false} is VALID [2018-11-23 12:15:36,277 INFO L273 TraceCheckUtils]: 341: Hoare triple {63870#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {63870#false} is VALID [2018-11-23 12:15:36,277 INFO L273 TraceCheckUtils]: 342: Hoare triple {63870#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {63870#false} is VALID [2018-11-23 12:15:36,278 INFO L273 TraceCheckUtils]: 343: Hoare triple {63870#false} assume !(~i~1 < 40); {63870#false} is VALID [2018-11-23 12:15:36,278 INFO L273 TraceCheckUtils]: 344: Hoare triple {63870#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {63870#false} is VALID [2018-11-23 12:15:36,278 INFO L273 TraceCheckUtils]: 345: Hoare triple {63870#false} assume true; {63870#false} is VALID [2018-11-23 12:15:36,278 INFO L268 TraceCheckUtils]: 346: Hoare quadruple {63870#false} {63869#true} #88#return; {63870#false} is VALID [2018-11-23 12:15:36,278 INFO L273 TraceCheckUtils]: 347: Hoare triple {63870#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {63870#false} is VALID [2018-11-23 12:15:36,278 INFO L273 TraceCheckUtils]: 348: Hoare triple {63870#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {63870#false} is VALID [2018-11-23 12:15:36,278 INFO L273 TraceCheckUtils]: 349: Hoare triple {63870#false} assume !false; {63870#false} is VALID [2018-11-23 12:15:36,321 INFO L134 CoverageAnalysis]: Checked inductivity of 10615 backedges. 5047 proven. 301 refuted. 0 times theorem prover too weak. 5267 trivial. 0 not checked. [2018-11-23 12:15:36,340 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:15:36,341 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [17] total 17 [2018-11-23 12:15:36,341 INFO L78 Accepts]: Start accepts. Automaton has 17 states. Word has length 350 [2018-11-23 12:15:36,342 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:15:36,342 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states. [2018-11-23 12:15:36,458 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-23 12:15:36,458 INFO L459 AbstractCegarLoop]: Interpolant automaton has 17 states [2018-11-23 12:15:36,459 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2018-11-23 12:15:36,459 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=136, Invalid=136, Unknown=0, NotChecked=0, Total=272 [2018-11-23 12:15:36,459 INFO L87 Difference]: Start difference. First operand 179 states and 197 transitions. Second operand 17 states. [2018-11-23 12:15:37,136 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:37,136 INFO L93 Difference]: Finished difference Result 307 states and 345 transitions. [2018-11-23 12:15:37,136 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2018-11-23 12:15:37,136 INFO L78 Accepts]: Start accepts. Automaton has 17 states. Word has length 350 [2018-11-23 12:15:37,136 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:15:37,136 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 17 states. [2018-11-23 12:15:37,137 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 109 transitions. [2018-11-23 12:15:37,137 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 17 states. [2018-11-23 12:15:37,138 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 109 transitions. [2018-11-23 12:15:37,138 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states and 109 transitions. [2018-11-23 12:15:37,238 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-23 12:15:37,242 INFO L225 Difference]: With dead ends: 307 [2018-11-23 12:15:37,242 INFO L226 Difference]: Without dead ends: 183 [2018-11-23 12:15:37,242 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 349 GetRequests, 334 SyntacticMatches, 0 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=136, Invalid=136, Unknown=0, NotChecked=0, Total=272 [2018-11-23 12:15:37,243 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 183 states. [2018-11-23 12:15:37,365 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 183 to 182. [2018-11-23 12:15:37,365 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:15:37,365 INFO L82 GeneralOperation]: Start isEquivalent. First operand 183 states. Second operand 182 states. [2018-11-23 12:15:37,366 INFO L74 IsIncluded]: Start isIncluded. First operand 183 states. Second operand 182 states. [2018-11-23 12:15:37,366 INFO L87 Difference]: Start difference. First operand 183 states. Second operand 182 states. [2018-11-23 12:15:37,369 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:37,369 INFO L93 Difference]: Finished difference Result 183 states and 201 transitions. [2018-11-23 12:15:37,369 INFO L276 IsEmpty]: Start isEmpty. Operand 183 states and 201 transitions. [2018-11-23 12:15:37,369 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:15:37,369 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:15:37,370 INFO L74 IsIncluded]: Start isIncluded. First operand 182 states. Second operand 183 states. [2018-11-23 12:15:37,370 INFO L87 Difference]: Start difference. First operand 182 states. Second operand 183 states. [2018-11-23 12:15:37,372 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:37,372 INFO L93 Difference]: Finished difference Result 183 states and 201 transitions. [2018-11-23 12:15:37,372 INFO L276 IsEmpty]: Start isEmpty. Operand 183 states and 201 transitions. [2018-11-23 12:15:37,373 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:15:37,373 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:15:37,373 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:15:37,373 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:15:37,373 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 182 states. [2018-11-23 12:15:37,375 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 182 states to 182 states and 200 transitions. [2018-11-23 12:15:37,376 INFO L78 Accepts]: Start accepts. Automaton has 182 states and 200 transitions. Word has length 350 [2018-11-23 12:15:37,376 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:15:37,376 INFO L480 AbstractCegarLoop]: Abstraction has 182 states and 200 transitions. [2018-11-23 12:15:37,376 INFO L481 AbstractCegarLoop]: Interpolant automaton has 17 states. [2018-11-23 12:15:37,376 INFO L276 IsEmpty]: Start isEmpty. Operand 182 states and 200 transitions. [2018-11-23 12:15:37,377 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 360 [2018-11-23 12:15:37,378 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:15:37,378 INFO L402 BasicCegarLoop]: trace histogram [84, 84, 45, 39, 21, 21, 14, 14, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:15:37,378 INFO L423 AbstractCegarLoop]: === Iteration 58 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:15:37,378 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:15:37,378 INFO L82 PathProgramCache]: Analyzing trace with hash -692464432, now seen corresponding path program 53 times [2018-11-23 12:15:37,378 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:15:37,378 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:15:37,379 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:15:37,379 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:15:37,379 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:15:37,392 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:15:37,393 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:15:37,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 59 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 59 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:15:37,409 INFO L103 rtionOrderModulation]: Keeping assertion order INSIDE_LOOP_FIRST1 [2018-11-23 12:15:37,465 INFO L249 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 14 check-sat command(s) [2018-11-23 12:15:37,466 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:15:37,527 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:15:37,529 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:15:38,777 INFO L256 TraceCheckUtils]: 0: Hoare triple {65988#true} call ULTIMATE.init(); {65988#true} is VALID [2018-11-23 12:15:38,778 INFO L273 TraceCheckUtils]: 1: Hoare triple {65988#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {65988#true} is VALID [2018-11-23 12:15:38,778 INFO L273 TraceCheckUtils]: 2: Hoare triple {65988#true} assume true; {65988#true} is VALID [2018-11-23 12:15:38,778 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {65988#true} {65988#true} #78#return; {65988#true} is VALID [2018-11-23 12:15:38,778 INFO L256 TraceCheckUtils]: 4: Hoare triple {65988#true} call #t~ret12 := main(); {65988#true} is VALID [2018-11-23 12:15:38,779 INFO L273 TraceCheckUtils]: 5: Hoare triple {65988#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {65988#true} is VALID [2018-11-23 12:15:38,779 INFO L256 TraceCheckUtils]: 6: Hoare triple {65988#true} call init_nondet(~#x~0.base, ~#x~0.offset); {65988#true} is VALID [2018-11-23 12:15:38,779 INFO L273 TraceCheckUtils]: 7: Hoare triple {65988#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {65988#true} is VALID [2018-11-23 12:15:38,779 INFO L273 TraceCheckUtils]: 8: Hoare triple {65988#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {65988#true} is VALID [2018-11-23 12:15:38,779 INFO L273 TraceCheckUtils]: 9: Hoare triple {65988#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {65988#true} is VALID [2018-11-23 12:15:38,779 INFO L273 TraceCheckUtils]: 10: Hoare triple {65988#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {65988#true} is VALID [2018-11-23 12:15:38,780 INFO L273 TraceCheckUtils]: 11: Hoare triple {65988#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {65988#true} is VALID [2018-11-23 12:15:38,780 INFO L273 TraceCheckUtils]: 12: Hoare triple {65988#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {65988#true} is VALID [2018-11-23 12:15:38,780 INFO L273 TraceCheckUtils]: 13: Hoare triple {65988#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {65988#true} is VALID [2018-11-23 12:15:38,780 INFO L273 TraceCheckUtils]: 14: Hoare triple {65988#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {65988#true} is VALID [2018-11-23 12:15:38,780 INFO L273 TraceCheckUtils]: 15: Hoare triple {65988#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {65988#true} is VALID [2018-11-23 12:15:38,780 INFO L273 TraceCheckUtils]: 16: Hoare triple {65988#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {65988#true} is VALID [2018-11-23 12:15:38,781 INFO L273 TraceCheckUtils]: 17: Hoare triple {65988#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {65988#true} is VALID [2018-11-23 12:15:38,781 INFO L273 TraceCheckUtils]: 18: Hoare triple {65988#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {65988#true} is VALID [2018-11-23 12:15:38,781 INFO L273 TraceCheckUtils]: 19: Hoare triple {65988#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {65988#true} is VALID [2018-11-23 12:15:38,781 INFO L273 TraceCheckUtils]: 20: Hoare triple {65988#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {65988#true} is VALID [2018-11-23 12:15:38,781 INFO L273 TraceCheckUtils]: 21: Hoare triple {65988#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {65988#true} is VALID [2018-11-23 12:15:38,781 INFO L273 TraceCheckUtils]: 22: Hoare triple {65988#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {65988#true} is VALID [2018-11-23 12:15:38,782 INFO L273 TraceCheckUtils]: 23: Hoare triple {65988#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {65988#true} is VALID [2018-11-23 12:15:38,782 INFO L273 TraceCheckUtils]: 24: Hoare triple {65988#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {65988#true} is VALID [2018-11-23 12:15:38,782 INFO L273 TraceCheckUtils]: 25: Hoare triple {65988#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {65988#true} is VALID [2018-11-23 12:15:38,782 INFO L273 TraceCheckUtils]: 26: Hoare triple {65988#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {65988#true} is VALID [2018-11-23 12:15:38,782 INFO L273 TraceCheckUtils]: 27: Hoare triple {65988#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {65988#true} is VALID [2018-11-23 12:15:38,783 INFO L273 TraceCheckUtils]: 28: Hoare triple {65988#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {65988#true} is VALID [2018-11-23 12:15:38,783 INFO L273 TraceCheckUtils]: 29: Hoare triple {65988#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {65988#true} is VALID [2018-11-23 12:15:38,783 INFO L273 TraceCheckUtils]: 30: Hoare triple {65988#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {65988#true} is VALID [2018-11-23 12:15:38,783 INFO L273 TraceCheckUtils]: 31: Hoare triple {65988#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {65988#true} is VALID [2018-11-23 12:15:38,783 INFO L273 TraceCheckUtils]: 32: Hoare triple {65988#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {65988#true} is VALID [2018-11-23 12:15:38,783 INFO L273 TraceCheckUtils]: 33: Hoare triple {65988#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {65988#true} is VALID [2018-11-23 12:15:38,783 INFO L273 TraceCheckUtils]: 34: Hoare triple {65988#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {65988#true} is VALID [2018-11-23 12:15:38,783 INFO L273 TraceCheckUtils]: 35: Hoare triple {65988#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {65988#true} is VALID [2018-11-23 12:15:38,783 INFO L273 TraceCheckUtils]: 36: Hoare triple {65988#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {65988#true} is VALID [2018-11-23 12:15:38,784 INFO L273 TraceCheckUtils]: 37: Hoare triple {65988#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {65988#true} is VALID [2018-11-23 12:15:38,784 INFO L273 TraceCheckUtils]: 38: Hoare triple {65988#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {65988#true} is VALID [2018-11-23 12:15:38,784 INFO L273 TraceCheckUtils]: 39: Hoare triple {65988#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {65988#true} is VALID [2018-11-23 12:15:38,784 INFO L273 TraceCheckUtils]: 40: Hoare triple {65988#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {65988#true} is VALID [2018-11-23 12:15:38,784 INFO L273 TraceCheckUtils]: 41: Hoare triple {65988#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {65988#true} is VALID [2018-11-23 12:15:38,784 INFO L273 TraceCheckUtils]: 42: Hoare triple {65988#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {65988#true} is VALID [2018-11-23 12:15:38,784 INFO L273 TraceCheckUtils]: 43: Hoare triple {65988#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {65988#true} is VALID [2018-11-23 12:15:38,784 INFO L273 TraceCheckUtils]: 44: Hoare triple {65988#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {65988#true} is VALID [2018-11-23 12:15:38,784 INFO L273 TraceCheckUtils]: 45: Hoare triple {65988#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {65988#true} is VALID [2018-11-23 12:15:38,784 INFO L273 TraceCheckUtils]: 46: Hoare triple {65988#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {65988#true} is VALID [2018-11-23 12:15:38,785 INFO L273 TraceCheckUtils]: 47: Hoare triple {65988#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {65988#true} is VALID [2018-11-23 12:15:38,785 INFO L273 TraceCheckUtils]: 48: Hoare triple {65988#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {65988#true} is VALID [2018-11-23 12:15:38,785 INFO L273 TraceCheckUtils]: 49: Hoare triple {65988#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {65988#true} is VALID [2018-11-23 12:15:38,785 INFO L273 TraceCheckUtils]: 50: Hoare triple {65988#true} assume !(~i~0 < 40); {65988#true} is VALID [2018-11-23 12:15:38,785 INFO L273 TraceCheckUtils]: 51: Hoare triple {65988#true} assume true; {65988#true} is VALID [2018-11-23 12:15:38,785 INFO L268 TraceCheckUtils]: 52: Hoare quadruple {65988#true} {65988#true} #82#return; {65988#true} is VALID [2018-11-23 12:15:38,785 INFO L273 TraceCheckUtils]: 53: Hoare triple {65988#true} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {65988#true} is VALID [2018-11-23 12:15:38,785 INFO L256 TraceCheckUtils]: 54: Hoare triple {65988#true} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {65988#true} is VALID [2018-11-23 12:15:38,785 INFO L273 TraceCheckUtils]: 55: Hoare triple {65988#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {65988#true} is VALID [2018-11-23 12:15:38,786 INFO L273 TraceCheckUtils]: 56: Hoare triple {65988#true} assume !!(~i~1 < 40); {65988#true} is VALID [2018-11-23 12:15:38,786 INFO L273 TraceCheckUtils]: 57: Hoare triple {65988#true} assume !(~i~1 > 20); {65988#true} is VALID [2018-11-23 12:15:38,786 INFO L273 TraceCheckUtils]: 58: Hoare triple {65988#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65988#true} is VALID [2018-11-23 12:15:38,786 INFO L273 TraceCheckUtils]: 59: Hoare triple {65988#true} assume !!(~i~1 < 40); {65988#true} is VALID [2018-11-23 12:15:38,786 INFO L273 TraceCheckUtils]: 60: Hoare triple {65988#true} assume !(~i~1 > 20); {65988#true} is VALID [2018-11-23 12:15:38,786 INFO L273 TraceCheckUtils]: 61: Hoare triple {65988#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65988#true} is VALID [2018-11-23 12:15:38,786 INFO L273 TraceCheckUtils]: 62: Hoare triple {65988#true} assume !!(~i~1 < 40); {65988#true} is VALID [2018-11-23 12:15:38,786 INFO L273 TraceCheckUtils]: 63: Hoare triple {65988#true} assume !(~i~1 > 20); {65988#true} is VALID [2018-11-23 12:15:38,786 INFO L273 TraceCheckUtils]: 64: Hoare triple {65988#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65988#true} is VALID [2018-11-23 12:15:38,786 INFO L273 TraceCheckUtils]: 65: Hoare triple {65988#true} assume !!(~i~1 < 40); {65988#true} is VALID [2018-11-23 12:15:38,787 INFO L273 TraceCheckUtils]: 66: Hoare triple {65988#true} assume !(~i~1 > 20); {65988#true} is VALID [2018-11-23 12:15:38,787 INFO L273 TraceCheckUtils]: 67: Hoare triple {65988#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65988#true} is VALID [2018-11-23 12:15:38,787 INFO L273 TraceCheckUtils]: 68: Hoare triple {65988#true} assume !!(~i~1 < 40); {65988#true} is VALID [2018-11-23 12:15:38,787 INFO L273 TraceCheckUtils]: 69: Hoare triple {65988#true} assume !(~i~1 > 20); {65988#true} is VALID [2018-11-23 12:15:38,787 INFO L273 TraceCheckUtils]: 70: Hoare triple {65988#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65988#true} is VALID [2018-11-23 12:15:38,787 INFO L273 TraceCheckUtils]: 71: Hoare triple {65988#true} assume !!(~i~1 < 40); {65988#true} is VALID [2018-11-23 12:15:38,787 INFO L273 TraceCheckUtils]: 72: Hoare triple {65988#true} assume !(~i~1 > 20); {65988#true} is VALID [2018-11-23 12:15:38,787 INFO L273 TraceCheckUtils]: 73: Hoare triple {65988#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65988#true} is VALID [2018-11-23 12:15:38,787 INFO L273 TraceCheckUtils]: 74: Hoare triple {65988#true} assume !!(~i~1 < 40); {65988#true} is VALID [2018-11-23 12:15:38,787 INFO L273 TraceCheckUtils]: 75: Hoare triple {65988#true} assume !(~i~1 > 20); {65988#true} is VALID [2018-11-23 12:15:38,788 INFO L273 TraceCheckUtils]: 76: Hoare triple {65988#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65988#true} is VALID [2018-11-23 12:15:38,788 INFO L273 TraceCheckUtils]: 77: Hoare triple {65988#true} assume !!(~i~1 < 40); {65988#true} is VALID [2018-11-23 12:15:38,788 INFO L273 TraceCheckUtils]: 78: Hoare triple {65988#true} assume !(~i~1 > 20); {65988#true} is VALID [2018-11-23 12:15:38,788 INFO L273 TraceCheckUtils]: 79: Hoare triple {65988#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65988#true} is VALID [2018-11-23 12:15:38,788 INFO L273 TraceCheckUtils]: 80: Hoare triple {65988#true} assume !!(~i~1 < 40); {65988#true} is VALID [2018-11-23 12:15:38,788 INFO L273 TraceCheckUtils]: 81: Hoare triple {65988#true} assume !(~i~1 > 20); {65988#true} is VALID [2018-11-23 12:15:38,788 INFO L273 TraceCheckUtils]: 82: Hoare triple {65988#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65988#true} is VALID [2018-11-23 12:15:38,788 INFO L273 TraceCheckUtils]: 83: Hoare triple {65988#true} assume !!(~i~1 < 40); {65988#true} is VALID [2018-11-23 12:15:38,788 INFO L273 TraceCheckUtils]: 84: Hoare triple {65988#true} assume !(~i~1 > 20); {65988#true} is VALID [2018-11-23 12:15:38,788 INFO L273 TraceCheckUtils]: 85: Hoare triple {65988#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65988#true} is VALID [2018-11-23 12:15:38,789 INFO L273 TraceCheckUtils]: 86: Hoare triple {65988#true} assume !!(~i~1 < 40); {65988#true} is VALID [2018-11-23 12:15:38,789 INFO L273 TraceCheckUtils]: 87: Hoare triple {65988#true} assume !(~i~1 > 20); {65988#true} is VALID [2018-11-23 12:15:38,789 INFO L273 TraceCheckUtils]: 88: Hoare triple {65988#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65988#true} is VALID [2018-11-23 12:15:38,789 INFO L273 TraceCheckUtils]: 89: Hoare triple {65988#true} assume !!(~i~1 < 40); {65988#true} is VALID [2018-11-23 12:15:38,789 INFO L273 TraceCheckUtils]: 90: Hoare triple {65988#true} assume !(~i~1 > 20); {65988#true} is VALID [2018-11-23 12:15:38,789 INFO L273 TraceCheckUtils]: 91: Hoare triple {65988#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65988#true} is VALID [2018-11-23 12:15:38,789 INFO L273 TraceCheckUtils]: 92: Hoare triple {65988#true} assume !!(~i~1 < 40); {65988#true} is VALID [2018-11-23 12:15:38,789 INFO L273 TraceCheckUtils]: 93: Hoare triple {65988#true} assume !(~i~1 > 20); {65988#true} is VALID [2018-11-23 12:15:38,789 INFO L273 TraceCheckUtils]: 94: Hoare triple {65988#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65988#true} is VALID [2018-11-23 12:15:38,790 INFO L273 TraceCheckUtils]: 95: Hoare triple {65988#true} assume !!(~i~1 < 40); {65988#true} is VALID [2018-11-23 12:15:38,790 INFO L273 TraceCheckUtils]: 96: Hoare triple {65988#true} assume !(~i~1 > 20); {65988#true} is VALID [2018-11-23 12:15:38,790 INFO L273 TraceCheckUtils]: 97: Hoare triple {65988#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65988#true} is VALID [2018-11-23 12:15:38,790 INFO L273 TraceCheckUtils]: 98: Hoare triple {65988#true} assume !!(~i~1 < 40); {65988#true} is VALID [2018-11-23 12:15:38,790 INFO L273 TraceCheckUtils]: 99: Hoare triple {65988#true} assume !(~i~1 > 20); {66290#(<= rangesum_~i~1 20)} is VALID [2018-11-23 12:15:38,791 INFO L273 TraceCheckUtils]: 100: Hoare triple {66290#(<= rangesum_~i~1 20)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {66294#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:15:38,791 INFO L273 TraceCheckUtils]: 101: Hoare triple {66294#(<= rangesum_~i~1 21)} assume !!(~i~1 < 40); {66294#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:15:38,791 INFO L273 TraceCheckUtils]: 102: Hoare triple {66294#(<= rangesum_~i~1 21)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {66294#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:15:38,792 INFO L273 TraceCheckUtils]: 103: Hoare triple {66294#(<= rangesum_~i~1 21)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {66304#(<= rangesum_~i~1 22)} is VALID [2018-11-23 12:15:38,792 INFO L273 TraceCheckUtils]: 104: Hoare triple {66304#(<= rangesum_~i~1 22)} assume !!(~i~1 < 40); {66304#(<= rangesum_~i~1 22)} is VALID [2018-11-23 12:15:38,792 INFO L273 TraceCheckUtils]: 105: Hoare triple {66304#(<= rangesum_~i~1 22)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {66304#(<= rangesum_~i~1 22)} is VALID [2018-11-23 12:15:38,793 INFO L273 TraceCheckUtils]: 106: Hoare triple {66304#(<= rangesum_~i~1 22)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {66314#(<= rangesum_~i~1 23)} is VALID [2018-11-23 12:15:38,793 INFO L273 TraceCheckUtils]: 107: Hoare triple {66314#(<= rangesum_~i~1 23)} assume !!(~i~1 < 40); {66314#(<= rangesum_~i~1 23)} is VALID [2018-11-23 12:15:38,794 INFO L273 TraceCheckUtils]: 108: Hoare triple {66314#(<= rangesum_~i~1 23)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {66314#(<= rangesum_~i~1 23)} is VALID [2018-11-23 12:15:38,794 INFO L273 TraceCheckUtils]: 109: Hoare triple {66314#(<= rangesum_~i~1 23)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {66324#(<= rangesum_~i~1 24)} is VALID [2018-11-23 12:15:38,795 INFO L273 TraceCheckUtils]: 110: Hoare triple {66324#(<= rangesum_~i~1 24)} assume !!(~i~1 < 40); {66324#(<= rangesum_~i~1 24)} is VALID [2018-11-23 12:15:38,795 INFO L273 TraceCheckUtils]: 111: Hoare triple {66324#(<= rangesum_~i~1 24)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {66324#(<= rangesum_~i~1 24)} is VALID [2018-11-23 12:15:38,796 INFO L273 TraceCheckUtils]: 112: Hoare triple {66324#(<= rangesum_~i~1 24)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {66334#(<= rangesum_~i~1 25)} is VALID [2018-11-23 12:15:38,796 INFO L273 TraceCheckUtils]: 113: Hoare triple {66334#(<= rangesum_~i~1 25)} assume !!(~i~1 < 40); {66334#(<= rangesum_~i~1 25)} is VALID [2018-11-23 12:15:38,797 INFO L273 TraceCheckUtils]: 114: Hoare triple {66334#(<= rangesum_~i~1 25)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {66334#(<= rangesum_~i~1 25)} is VALID [2018-11-23 12:15:38,797 INFO L273 TraceCheckUtils]: 115: Hoare triple {66334#(<= rangesum_~i~1 25)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {66344#(<= rangesum_~i~1 26)} is VALID [2018-11-23 12:15:38,798 INFO L273 TraceCheckUtils]: 116: Hoare triple {66344#(<= rangesum_~i~1 26)} assume !!(~i~1 < 40); {66344#(<= rangesum_~i~1 26)} is VALID [2018-11-23 12:15:38,798 INFO L273 TraceCheckUtils]: 117: Hoare triple {66344#(<= rangesum_~i~1 26)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {66344#(<= rangesum_~i~1 26)} is VALID [2018-11-23 12:15:38,799 INFO L273 TraceCheckUtils]: 118: Hoare triple {66344#(<= rangesum_~i~1 26)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {66354#(<= rangesum_~i~1 27)} is VALID [2018-11-23 12:15:38,800 INFO L273 TraceCheckUtils]: 119: Hoare triple {66354#(<= rangesum_~i~1 27)} assume !!(~i~1 < 40); {66354#(<= rangesum_~i~1 27)} is VALID [2018-11-23 12:15:38,800 INFO L273 TraceCheckUtils]: 120: Hoare triple {66354#(<= rangesum_~i~1 27)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {66354#(<= rangesum_~i~1 27)} is VALID [2018-11-23 12:15:38,801 INFO L273 TraceCheckUtils]: 121: Hoare triple {66354#(<= rangesum_~i~1 27)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {66364#(<= rangesum_~i~1 28)} is VALID [2018-11-23 12:15:38,801 INFO L273 TraceCheckUtils]: 122: Hoare triple {66364#(<= rangesum_~i~1 28)} assume !!(~i~1 < 40); {66364#(<= rangesum_~i~1 28)} is VALID [2018-11-23 12:15:38,802 INFO L273 TraceCheckUtils]: 123: Hoare triple {66364#(<= rangesum_~i~1 28)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {66364#(<= rangesum_~i~1 28)} is VALID [2018-11-23 12:15:38,802 INFO L273 TraceCheckUtils]: 124: Hoare triple {66364#(<= rangesum_~i~1 28)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {66374#(<= rangesum_~i~1 29)} is VALID [2018-11-23 12:15:38,803 INFO L273 TraceCheckUtils]: 125: Hoare triple {66374#(<= rangesum_~i~1 29)} assume !!(~i~1 < 40); {66374#(<= rangesum_~i~1 29)} is VALID [2018-11-23 12:15:38,803 INFO L273 TraceCheckUtils]: 126: Hoare triple {66374#(<= rangesum_~i~1 29)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {66374#(<= rangesum_~i~1 29)} is VALID [2018-11-23 12:15:38,804 INFO L273 TraceCheckUtils]: 127: Hoare triple {66374#(<= rangesum_~i~1 29)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {66384#(<= rangesum_~i~1 30)} is VALID [2018-11-23 12:15:38,805 INFO L273 TraceCheckUtils]: 128: Hoare triple {66384#(<= rangesum_~i~1 30)} assume !!(~i~1 < 40); {66384#(<= rangesum_~i~1 30)} is VALID [2018-11-23 12:15:38,805 INFO L273 TraceCheckUtils]: 129: Hoare triple {66384#(<= rangesum_~i~1 30)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {66384#(<= rangesum_~i~1 30)} is VALID [2018-11-23 12:15:38,806 INFO L273 TraceCheckUtils]: 130: Hoare triple {66384#(<= rangesum_~i~1 30)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {66394#(<= rangesum_~i~1 31)} is VALID [2018-11-23 12:15:38,806 INFO L273 TraceCheckUtils]: 131: Hoare triple {66394#(<= rangesum_~i~1 31)} assume !!(~i~1 < 40); {66394#(<= rangesum_~i~1 31)} is VALID [2018-11-23 12:15:38,807 INFO L273 TraceCheckUtils]: 132: Hoare triple {66394#(<= rangesum_~i~1 31)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {66394#(<= rangesum_~i~1 31)} is VALID [2018-11-23 12:15:38,807 INFO L273 TraceCheckUtils]: 133: Hoare triple {66394#(<= rangesum_~i~1 31)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {66404#(<= rangesum_~i~1 32)} is VALID [2018-11-23 12:15:38,808 INFO L273 TraceCheckUtils]: 134: Hoare triple {66404#(<= rangesum_~i~1 32)} assume !!(~i~1 < 40); {66404#(<= rangesum_~i~1 32)} is VALID [2018-11-23 12:15:38,808 INFO L273 TraceCheckUtils]: 135: Hoare triple {66404#(<= rangesum_~i~1 32)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {66404#(<= rangesum_~i~1 32)} is VALID [2018-11-23 12:15:38,809 INFO L273 TraceCheckUtils]: 136: Hoare triple {66404#(<= rangesum_~i~1 32)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {66414#(<= rangesum_~i~1 33)} is VALID [2018-11-23 12:15:38,810 INFO L273 TraceCheckUtils]: 137: Hoare triple {66414#(<= rangesum_~i~1 33)} assume !!(~i~1 < 40); {66414#(<= rangesum_~i~1 33)} is VALID [2018-11-23 12:15:38,810 INFO L273 TraceCheckUtils]: 138: Hoare triple {66414#(<= rangesum_~i~1 33)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {66414#(<= rangesum_~i~1 33)} is VALID [2018-11-23 12:15:38,811 INFO L273 TraceCheckUtils]: 139: Hoare triple {66414#(<= rangesum_~i~1 33)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {66424#(<= rangesum_~i~1 34)} is VALID [2018-11-23 12:15:38,811 INFO L273 TraceCheckUtils]: 140: Hoare triple {66424#(<= rangesum_~i~1 34)} assume !(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,812 INFO L273 TraceCheckUtils]: 141: Hoare triple {65989#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {65989#false} is VALID [2018-11-23 12:15:38,812 INFO L273 TraceCheckUtils]: 142: Hoare triple {65989#false} assume true; {65989#false} is VALID [2018-11-23 12:15:38,812 INFO L268 TraceCheckUtils]: 143: Hoare quadruple {65989#false} {65988#true} #84#return; {65989#false} is VALID [2018-11-23 12:15:38,812 INFO L273 TraceCheckUtils]: 144: Hoare triple {65989#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {65989#false} is VALID [2018-11-23 12:15:38,812 INFO L256 TraceCheckUtils]: 145: Hoare triple {65989#false} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {65989#false} is VALID [2018-11-23 12:15:38,813 INFO L273 TraceCheckUtils]: 146: Hoare triple {65989#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {65989#false} is VALID [2018-11-23 12:15:38,813 INFO L273 TraceCheckUtils]: 147: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,813 INFO L273 TraceCheckUtils]: 148: Hoare triple {65989#false} assume !(~i~1 > 20); {65989#false} is VALID [2018-11-23 12:15:38,813 INFO L273 TraceCheckUtils]: 149: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,813 INFO L273 TraceCheckUtils]: 150: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,813 INFO L273 TraceCheckUtils]: 151: Hoare triple {65989#false} assume !(~i~1 > 20); {65989#false} is VALID [2018-11-23 12:15:38,814 INFO L273 TraceCheckUtils]: 152: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,814 INFO L273 TraceCheckUtils]: 153: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,814 INFO L273 TraceCheckUtils]: 154: Hoare triple {65989#false} assume !(~i~1 > 20); {65989#false} is VALID [2018-11-23 12:15:38,814 INFO L273 TraceCheckUtils]: 155: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,814 INFO L273 TraceCheckUtils]: 156: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,814 INFO L273 TraceCheckUtils]: 157: Hoare triple {65989#false} assume !(~i~1 > 20); {65989#false} is VALID [2018-11-23 12:15:38,815 INFO L273 TraceCheckUtils]: 158: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,815 INFO L273 TraceCheckUtils]: 159: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,815 INFO L273 TraceCheckUtils]: 160: Hoare triple {65989#false} assume !(~i~1 > 20); {65989#false} is VALID [2018-11-23 12:15:38,815 INFO L273 TraceCheckUtils]: 161: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,815 INFO L273 TraceCheckUtils]: 162: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,815 INFO L273 TraceCheckUtils]: 163: Hoare triple {65989#false} assume !(~i~1 > 20); {65989#false} is VALID [2018-11-23 12:15:38,815 INFO L273 TraceCheckUtils]: 164: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,815 INFO L273 TraceCheckUtils]: 165: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,815 INFO L273 TraceCheckUtils]: 166: Hoare triple {65989#false} assume !(~i~1 > 20); {65989#false} is VALID [2018-11-23 12:15:38,816 INFO L273 TraceCheckUtils]: 167: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,816 INFO L273 TraceCheckUtils]: 168: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,816 INFO L273 TraceCheckUtils]: 169: Hoare triple {65989#false} assume !(~i~1 > 20); {65989#false} is VALID [2018-11-23 12:15:38,816 INFO L273 TraceCheckUtils]: 170: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,816 INFO L273 TraceCheckUtils]: 171: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,816 INFO L273 TraceCheckUtils]: 172: Hoare triple {65989#false} assume !(~i~1 > 20); {65989#false} is VALID [2018-11-23 12:15:38,816 INFO L273 TraceCheckUtils]: 173: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,816 INFO L273 TraceCheckUtils]: 174: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,816 INFO L273 TraceCheckUtils]: 175: Hoare triple {65989#false} assume !(~i~1 > 20); {65989#false} is VALID [2018-11-23 12:15:38,817 INFO L273 TraceCheckUtils]: 176: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,817 INFO L273 TraceCheckUtils]: 177: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,817 INFO L273 TraceCheckUtils]: 178: Hoare triple {65989#false} assume !(~i~1 > 20); {65989#false} is VALID [2018-11-23 12:15:38,817 INFO L273 TraceCheckUtils]: 179: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,817 INFO L273 TraceCheckUtils]: 180: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,817 INFO L273 TraceCheckUtils]: 181: Hoare triple {65989#false} assume !(~i~1 > 20); {65989#false} is VALID [2018-11-23 12:15:38,817 INFO L273 TraceCheckUtils]: 182: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,817 INFO L273 TraceCheckUtils]: 183: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,817 INFO L273 TraceCheckUtils]: 184: Hoare triple {65989#false} assume !(~i~1 > 20); {65989#false} is VALID [2018-11-23 12:15:38,818 INFO L273 TraceCheckUtils]: 185: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,818 INFO L273 TraceCheckUtils]: 186: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,818 INFO L273 TraceCheckUtils]: 187: Hoare triple {65989#false} assume !(~i~1 > 20); {65989#false} is VALID [2018-11-23 12:15:38,818 INFO L273 TraceCheckUtils]: 188: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,818 INFO L273 TraceCheckUtils]: 189: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,818 INFO L273 TraceCheckUtils]: 190: Hoare triple {65989#false} assume !(~i~1 > 20); {65989#false} is VALID [2018-11-23 12:15:38,818 INFO L273 TraceCheckUtils]: 191: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,818 INFO L273 TraceCheckUtils]: 192: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,818 INFO L273 TraceCheckUtils]: 193: Hoare triple {65989#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {65989#false} is VALID [2018-11-23 12:15:38,818 INFO L273 TraceCheckUtils]: 194: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,819 INFO L273 TraceCheckUtils]: 195: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,819 INFO L273 TraceCheckUtils]: 196: Hoare triple {65989#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {65989#false} is VALID [2018-11-23 12:15:38,819 INFO L273 TraceCheckUtils]: 197: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,819 INFO L273 TraceCheckUtils]: 198: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,819 INFO L273 TraceCheckUtils]: 199: Hoare triple {65989#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {65989#false} is VALID [2018-11-23 12:15:38,819 INFO L273 TraceCheckUtils]: 200: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,819 INFO L273 TraceCheckUtils]: 201: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,819 INFO L273 TraceCheckUtils]: 202: Hoare triple {65989#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {65989#false} is VALID [2018-11-23 12:15:38,819 INFO L273 TraceCheckUtils]: 203: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,819 INFO L273 TraceCheckUtils]: 204: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,820 INFO L273 TraceCheckUtils]: 205: Hoare triple {65989#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {65989#false} is VALID [2018-11-23 12:15:38,820 INFO L273 TraceCheckUtils]: 206: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,820 INFO L273 TraceCheckUtils]: 207: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,820 INFO L273 TraceCheckUtils]: 208: Hoare triple {65989#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {65989#false} is VALID [2018-11-23 12:15:38,820 INFO L273 TraceCheckUtils]: 209: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,820 INFO L273 TraceCheckUtils]: 210: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,820 INFO L273 TraceCheckUtils]: 211: Hoare triple {65989#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {65989#false} is VALID [2018-11-23 12:15:38,820 INFO L273 TraceCheckUtils]: 212: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,820 INFO L273 TraceCheckUtils]: 213: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,821 INFO L273 TraceCheckUtils]: 214: Hoare triple {65989#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {65989#false} is VALID [2018-11-23 12:15:38,821 INFO L273 TraceCheckUtils]: 215: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,821 INFO L273 TraceCheckUtils]: 216: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,821 INFO L273 TraceCheckUtils]: 217: Hoare triple {65989#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {65989#false} is VALID [2018-11-23 12:15:38,821 INFO L273 TraceCheckUtils]: 218: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,821 INFO L273 TraceCheckUtils]: 219: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,821 INFO L273 TraceCheckUtils]: 220: Hoare triple {65989#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {65989#false} is VALID [2018-11-23 12:15:38,821 INFO L273 TraceCheckUtils]: 221: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,821 INFO L273 TraceCheckUtils]: 222: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,821 INFO L273 TraceCheckUtils]: 223: Hoare triple {65989#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {65989#false} is VALID [2018-11-23 12:15:38,822 INFO L273 TraceCheckUtils]: 224: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,822 INFO L273 TraceCheckUtils]: 225: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,822 INFO L273 TraceCheckUtils]: 226: Hoare triple {65989#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {65989#false} is VALID [2018-11-23 12:15:38,822 INFO L273 TraceCheckUtils]: 227: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,822 INFO L273 TraceCheckUtils]: 228: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,822 INFO L273 TraceCheckUtils]: 229: Hoare triple {65989#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {65989#false} is VALID [2018-11-23 12:15:38,822 INFO L273 TraceCheckUtils]: 230: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,822 INFO L273 TraceCheckUtils]: 231: Hoare triple {65989#false} assume !(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,822 INFO L273 TraceCheckUtils]: 232: Hoare triple {65989#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {65989#false} is VALID [2018-11-23 12:15:38,823 INFO L273 TraceCheckUtils]: 233: Hoare triple {65989#false} assume true; {65989#false} is VALID [2018-11-23 12:15:38,823 INFO L268 TraceCheckUtils]: 234: Hoare quadruple {65989#false} {65989#false} #86#return; {65989#false} is VALID [2018-11-23 12:15:38,823 INFO L273 TraceCheckUtils]: 235: Hoare triple {65989#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {65989#false} is VALID [2018-11-23 12:15:38,823 INFO L273 TraceCheckUtils]: 236: Hoare triple {65989#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {65989#false} is VALID [2018-11-23 12:15:38,823 INFO L273 TraceCheckUtils]: 237: Hoare triple {65989#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {65989#false} is VALID [2018-11-23 12:15:38,823 INFO L273 TraceCheckUtils]: 238: Hoare triple {65989#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {65989#false} is VALID [2018-11-23 12:15:38,823 INFO L273 TraceCheckUtils]: 239: Hoare triple {65989#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {65989#false} is VALID [2018-11-23 12:15:38,823 INFO L273 TraceCheckUtils]: 240: Hoare triple {65989#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {65989#false} is VALID [2018-11-23 12:15:38,823 INFO L273 TraceCheckUtils]: 241: Hoare triple {65989#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {65989#false} is VALID [2018-11-23 12:15:38,823 INFO L273 TraceCheckUtils]: 242: Hoare triple {65989#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {65989#false} is VALID [2018-11-23 12:15:38,824 INFO L273 TraceCheckUtils]: 243: Hoare triple {65989#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {65989#false} is VALID [2018-11-23 12:15:38,824 INFO L273 TraceCheckUtils]: 244: Hoare triple {65989#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {65989#false} is VALID [2018-11-23 12:15:38,824 INFO L273 TraceCheckUtils]: 245: Hoare triple {65989#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {65989#false} is VALID [2018-11-23 12:15:38,824 INFO L273 TraceCheckUtils]: 246: Hoare triple {65989#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {65989#false} is VALID [2018-11-23 12:15:38,824 INFO L273 TraceCheckUtils]: 247: Hoare triple {65989#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {65989#false} is VALID [2018-11-23 12:15:38,824 INFO L273 TraceCheckUtils]: 248: Hoare triple {65989#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {65989#false} is VALID [2018-11-23 12:15:38,824 INFO L273 TraceCheckUtils]: 249: Hoare triple {65989#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {65989#false} is VALID [2018-11-23 12:15:38,824 INFO L273 TraceCheckUtils]: 250: Hoare triple {65989#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {65989#false} is VALID [2018-11-23 12:15:38,824 INFO L273 TraceCheckUtils]: 251: Hoare triple {65989#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {65989#false} is VALID [2018-11-23 12:15:38,825 INFO L273 TraceCheckUtils]: 252: Hoare triple {65989#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {65989#false} is VALID [2018-11-23 12:15:38,825 INFO L273 TraceCheckUtils]: 253: Hoare triple {65989#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {65989#false} is VALID [2018-11-23 12:15:38,825 INFO L273 TraceCheckUtils]: 254: Hoare triple {65989#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {65989#false} is VALID [2018-11-23 12:15:38,825 INFO L273 TraceCheckUtils]: 255: Hoare triple {65989#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {65989#false} is VALID [2018-11-23 12:15:38,825 INFO L273 TraceCheckUtils]: 256: Hoare triple {65989#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {65989#false} is VALID [2018-11-23 12:15:38,825 INFO L273 TraceCheckUtils]: 257: Hoare triple {65989#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {65989#false} is VALID [2018-11-23 12:15:38,825 INFO L273 TraceCheckUtils]: 258: Hoare triple {65989#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {65989#false} is VALID [2018-11-23 12:15:38,825 INFO L273 TraceCheckUtils]: 259: Hoare triple {65989#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {65989#false} is VALID [2018-11-23 12:15:38,825 INFO L273 TraceCheckUtils]: 260: Hoare triple {65989#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {65989#false} is VALID [2018-11-23 12:15:38,825 INFO L273 TraceCheckUtils]: 261: Hoare triple {65989#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {65989#false} is VALID [2018-11-23 12:15:38,826 INFO L273 TraceCheckUtils]: 262: Hoare triple {65989#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {65989#false} is VALID [2018-11-23 12:15:38,826 INFO L273 TraceCheckUtils]: 263: Hoare triple {65989#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {65989#false} is VALID [2018-11-23 12:15:38,826 INFO L273 TraceCheckUtils]: 264: Hoare triple {65989#false} assume !(~i~2 < 39); {65989#false} is VALID [2018-11-23 12:15:38,826 INFO L273 TraceCheckUtils]: 265: Hoare triple {65989#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {65989#false} is VALID [2018-11-23 12:15:38,826 INFO L256 TraceCheckUtils]: 266: Hoare triple {65989#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {65989#false} is VALID [2018-11-23 12:15:38,826 INFO L273 TraceCheckUtils]: 267: Hoare triple {65989#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {65989#false} is VALID [2018-11-23 12:15:38,826 INFO L273 TraceCheckUtils]: 268: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,826 INFO L273 TraceCheckUtils]: 269: Hoare triple {65989#false} assume !(~i~1 > 20); {65989#false} is VALID [2018-11-23 12:15:38,826 INFO L273 TraceCheckUtils]: 270: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,826 INFO L273 TraceCheckUtils]: 271: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,827 INFO L273 TraceCheckUtils]: 272: Hoare triple {65989#false} assume !(~i~1 > 20); {65989#false} is VALID [2018-11-23 12:15:38,827 INFO L273 TraceCheckUtils]: 273: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,827 INFO L273 TraceCheckUtils]: 274: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,827 INFO L273 TraceCheckUtils]: 275: Hoare triple {65989#false} assume !(~i~1 > 20); {65989#false} is VALID [2018-11-23 12:15:38,827 INFO L273 TraceCheckUtils]: 276: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,827 INFO L273 TraceCheckUtils]: 277: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,827 INFO L273 TraceCheckUtils]: 278: Hoare triple {65989#false} assume !(~i~1 > 20); {65989#false} is VALID [2018-11-23 12:15:38,827 INFO L273 TraceCheckUtils]: 279: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,827 INFO L273 TraceCheckUtils]: 280: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,827 INFO L273 TraceCheckUtils]: 281: Hoare triple {65989#false} assume !(~i~1 > 20); {65989#false} is VALID [2018-11-23 12:15:38,828 INFO L273 TraceCheckUtils]: 282: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,828 INFO L273 TraceCheckUtils]: 283: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,828 INFO L273 TraceCheckUtils]: 284: Hoare triple {65989#false} assume !(~i~1 > 20); {65989#false} is VALID [2018-11-23 12:15:38,828 INFO L273 TraceCheckUtils]: 285: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,828 INFO L273 TraceCheckUtils]: 286: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,828 INFO L273 TraceCheckUtils]: 287: Hoare triple {65989#false} assume !(~i~1 > 20); {65989#false} is VALID [2018-11-23 12:15:38,828 INFO L273 TraceCheckUtils]: 288: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,828 INFO L273 TraceCheckUtils]: 289: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,828 INFO L273 TraceCheckUtils]: 290: Hoare triple {65989#false} assume !(~i~1 > 20); {65989#false} is VALID [2018-11-23 12:15:38,829 INFO L273 TraceCheckUtils]: 291: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,829 INFO L273 TraceCheckUtils]: 292: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,829 INFO L273 TraceCheckUtils]: 293: Hoare triple {65989#false} assume !(~i~1 > 20); {65989#false} is VALID [2018-11-23 12:15:38,829 INFO L273 TraceCheckUtils]: 294: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,829 INFO L273 TraceCheckUtils]: 295: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,829 INFO L273 TraceCheckUtils]: 296: Hoare triple {65989#false} assume !(~i~1 > 20); {65989#false} is VALID [2018-11-23 12:15:38,829 INFO L273 TraceCheckUtils]: 297: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,829 INFO L273 TraceCheckUtils]: 298: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,829 INFO L273 TraceCheckUtils]: 299: Hoare triple {65989#false} assume !(~i~1 > 20); {65989#false} is VALID [2018-11-23 12:15:38,829 INFO L273 TraceCheckUtils]: 300: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,830 INFO L273 TraceCheckUtils]: 301: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,830 INFO L273 TraceCheckUtils]: 302: Hoare triple {65989#false} assume !(~i~1 > 20); {65989#false} is VALID [2018-11-23 12:15:38,830 INFO L273 TraceCheckUtils]: 303: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,830 INFO L273 TraceCheckUtils]: 304: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,830 INFO L273 TraceCheckUtils]: 305: Hoare triple {65989#false} assume !(~i~1 > 20); {65989#false} is VALID [2018-11-23 12:15:38,830 INFO L273 TraceCheckUtils]: 306: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,830 INFO L273 TraceCheckUtils]: 307: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,830 INFO L273 TraceCheckUtils]: 308: Hoare triple {65989#false} assume !(~i~1 > 20); {65989#false} is VALID [2018-11-23 12:15:38,830 INFO L273 TraceCheckUtils]: 309: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,830 INFO L273 TraceCheckUtils]: 310: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,831 INFO L273 TraceCheckUtils]: 311: Hoare triple {65989#false} assume !(~i~1 > 20); {65989#false} is VALID [2018-11-23 12:15:38,831 INFO L273 TraceCheckUtils]: 312: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,831 INFO L273 TraceCheckUtils]: 313: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,831 INFO L273 TraceCheckUtils]: 314: Hoare triple {65989#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {65989#false} is VALID [2018-11-23 12:15:38,831 INFO L273 TraceCheckUtils]: 315: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,831 INFO L273 TraceCheckUtils]: 316: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,831 INFO L273 TraceCheckUtils]: 317: Hoare triple {65989#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {65989#false} is VALID [2018-11-23 12:15:38,831 INFO L273 TraceCheckUtils]: 318: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,831 INFO L273 TraceCheckUtils]: 319: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,832 INFO L273 TraceCheckUtils]: 320: Hoare triple {65989#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {65989#false} is VALID [2018-11-23 12:15:38,832 INFO L273 TraceCheckUtils]: 321: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,832 INFO L273 TraceCheckUtils]: 322: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,832 INFO L273 TraceCheckUtils]: 323: Hoare triple {65989#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {65989#false} is VALID [2018-11-23 12:15:38,832 INFO L273 TraceCheckUtils]: 324: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,832 INFO L273 TraceCheckUtils]: 325: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,832 INFO L273 TraceCheckUtils]: 326: Hoare triple {65989#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {65989#false} is VALID [2018-11-23 12:15:38,832 INFO L273 TraceCheckUtils]: 327: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,832 INFO L273 TraceCheckUtils]: 328: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,832 INFO L273 TraceCheckUtils]: 329: Hoare triple {65989#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {65989#false} is VALID [2018-11-23 12:15:38,833 INFO L273 TraceCheckUtils]: 330: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,833 INFO L273 TraceCheckUtils]: 331: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,833 INFO L273 TraceCheckUtils]: 332: Hoare triple {65989#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {65989#false} is VALID [2018-11-23 12:15:38,833 INFO L273 TraceCheckUtils]: 333: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,833 INFO L273 TraceCheckUtils]: 334: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,833 INFO L273 TraceCheckUtils]: 335: Hoare triple {65989#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {65989#false} is VALID [2018-11-23 12:15:38,833 INFO L273 TraceCheckUtils]: 336: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,833 INFO L273 TraceCheckUtils]: 337: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,833 INFO L273 TraceCheckUtils]: 338: Hoare triple {65989#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {65989#false} is VALID [2018-11-23 12:15:38,833 INFO L273 TraceCheckUtils]: 339: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,834 INFO L273 TraceCheckUtils]: 340: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,834 INFO L273 TraceCheckUtils]: 341: Hoare triple {65989#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {65989#false} is VALID [2018-11-23 12:15:38,834 INFO L273 TraceCheckUtils]: 342: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,834 INFO L273 TraceCheckUtils]: 343: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,834 INFO L273 TraceCheckUtils]: 344: Hoare triple {65989#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {65989#false} is VALID [2018-11-23 12:15:38,834 INFO L273 TraceCheckUtils]: 345: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,834 INFO L273 TraceCheckUtils]: 346: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,834 INFO L273 TraceCheckUtils]: 347: Hoare triple {65989#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {65989#false} is VALID [2018-11-23 12:15:38,834 INFO L273 TraceCheckUtils]: 348: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,834 INFO L273 TraceCheckUtils]: 349: Hoare triple {65989#false} assume !!(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,835 INFO L273 TraceCheckUtils]: 350: Hoare triple {65989#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {65989#false} is VALID [2018-11-23 12:15:38,835 INFO L273 TraceCheckUtils]: 351: Hoare triple {65989#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {65989#false} is VALID [2018-11-23 12:15:38,835 INFO L273 TraceCheckUtils]: 352: Hoare triple {65989#false} assume !(~i~1 < 40); {65989#false} is VALID [2018-11-23 12:15:38,835 INFO L273 TraceCheckUtils]: 353: Hoare triple {65989#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {65989#false} is VALID [2018-11-23 12:15:38,835 INFO L273 TraceCheckUtils]: 354: Hoare triple {65989#false} assume true; {65989#false} is VALID [2018-11-23 12:15:38,835 INFO L268 TraceCheckUtils]: 355: Hoare quadruple {65989#false} {65989#false} #88#return; {65989#false} is VALID [2018-11-23 12:15:38,835 INFO L273 TraceCheckUtils]: 356: Hoare triple {65989#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {65989#false} is VALID [2018-11-23 12:15:38,835 INFO L273 TraceCheckUtils]: 357: Hoare triple {65989#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {65989#false} is VALID [2018-11-23 12:15:38,835 INFO L273 TraceCheckUtils]: 358: Hoare triple {65989#false} assume !false; {65989#false} is VALID [2018-11-23 12:15:38,880 INFO L134 CoverageAnalysis]: Checked inductivity of 11362 backedges. 5421 proven. 260 refuted. 0 times theorem prover too weak. 5681 trivial. 0 not checked. [2018-11-23 12:15:38,899 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:15:38,899 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [17] total 17 [2018-11-23 12:15:38,900 INFO L78 Accepts]: Start accepts. Automaton has 17 states. Word has length 359 [2018-11-23 12:15:38,900 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:15:38,900 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states. [2018-11-23 12:15:38,982 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 83 edges. 83 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:15:38,982 INFO L459 AbstractCegarLoop]: Interpolant automaton has 17 states [2018-11-23 12:15:38,983 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2018-11-23 12:15:38,983 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=136, Invalid=136, Unknown=0, NotChecked=0, Total=272 [2018-11-23 12:15:38,983 INFO L87 Difference]: Start difference. First operand 182 states and 200 transitions. Second operand 17 states. [2018-11-23 12:15:39,903 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:39,903 INFO L93 Difference]: Finished difference Result 314 states and 354 transitions. [2018-11-23 12:15:39,903 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2018-11-23 12:15:39,903 INFO L78 Accepts]: Start accepts. Automaton has 17 states. Word has length 359 [2018-11-23 12:15:39,903 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:15:39,903 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 17 states. [2018-11-23 12:15:39,905 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 123 transitions. [2018-11-23 12:15:39,905 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 17 states. [2018-11-23 12:15:39,906 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 123 transitions. [2018-11-23 12:15:39,906 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states and 123 transitions. [2018-11-23 12:15:40,018 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 123 edges. 123 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:15:40,023 INFO L225 Difference]: With dead ends: 314 [2018-11-23 12:15:40,023 INFO L226 Difference]: Without dead ends: 187 [2018-11-23 12:15:40,024 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 358 GetRequests, 343 SyntacticMatches, 0 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=136, Invalid=136, Unknown=0, NotChecked=0, Total=272 [2018-11-23 12:15:40,024 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 187 states. [2018-11-23 12:15:40,159 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 187 to 185. [2018-11-23 12:15:40,159 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:15:40,159 INFO L82 GeneralOperation]: Start isEquivalent. First operand 187 states. Second operand 185 states. [2018-11-23 12:15:40,159 INFO L74 IsIncluded]: Start isIncluded. First operand 187 states. Second operand 185 states. [2018-11-23 12:15:40,160 INFO L87 Difference]: Start difference. First operand 187 states. Second operand 185 states. [2018-11-23 12:15:40,163 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:40,163 INFO L93 Difference]: Finished difference Result 187 states and 207 transitions. [2018-11-23 12:15:40,163 INFO L276 IsEmpty]: Start isEmpty. Operand 187 states and 207 transitions. [2018-11-23 12:15:40,163 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:15:40,164 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:15:40,164 INFO L74 IsIncluded]: Start isIncluded. First operand 185 states. Second operand 187 states. [2018-11-23 12:15:40,164 INFO L87 Difference]: Start difference. First operand 185 states. Second operand 187 states. [2018-11-23 12:15:40,166 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:40,166 INFO L93 Difference]: Finished difference Result 187 states and 207 transitions. [2018-11-23 12:15:40,167 INFO L276 IsEmpty]: Start isEmpty. Operand 187 states and 207 transitions. [2018-11-23 12:15:40,167 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:15:40,167 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:15:40,167 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:15:40,167 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:15:40,167 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 185 states. [2018-11-23 12:15:40,170 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 185 states to 185 states and 204 transitions. [2018-11-23 12:15:40,170 INFO L78 Accepts]: Start accepts. Automaton has 185 states and 204 transitions. Word has length 359 [2018-11-23 12:15:40,170 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:15:40,170 INFO L480 AbstractCegarLoop]: Abstraction has 185 states and 204 transitions. [2018-11-23 12:15:40,170 INFO L481 AbstractCegarLoop]: Interpolant automaton has 17 states. [2018-11-23 12:15:40,170 INFO L276 IsEmpty]: Start isEmpty. Operand 185 states and 204 transitions. [2018-11-23 12:15:40,172 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 369 [2018-11-23 12:15:40,172 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:15:40,172 INFO L402 BasicCegarLoop]: trace histogram [87, 87, 45, 42, 21, 21, 14, 14, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:15:40,172 INFO L423 AbstractCegarLoop]: === Iteration 59 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:15:40,172 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:15:40,173 INFO L82 PathProgramCache]: Analyzing trace with hash -435408630, now seen corresponding path program 54 times [2018-11-23 12:15:40,173 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:15:40,173 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:15:40,173 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:15:40,173 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:15:40,174 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:15:40,186 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:15:40,186 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:15:40,186 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 60 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 60 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:15:40,201 INFO L103 rtionOrderModulation]: Keeping assertion order MIX_INSIDE_OUTSIDE [2018-11-23 12:15:44,221 INFO L249 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 30 check-sat command(s) [2018-11-23 12:15:44,221 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:15:44,277 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:15:44,279 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:15:44,694 INFO L256 TraceCheckUtils]: 0: Hoare triple {68155#true} call ULTIMATE.init(); {68155#true} is VALID [2018-11-23 12:15:44,694 INFO L273 TraceCheckUtils]: 1: Hoare triple {68155#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {68155#true} is VALID [2018-11-23 12:15:44,694 INFO L273 TraceCheckUtils]: 2: Hoare triple {68155#true} assume true; {68155#true} is VALID [2018-11-23 12:15:44,695 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {68155#true} {68155#true} #78#return; {68155#true} is VALID [2018-11-23 12:15:44,695 INFO L256 TraceCheckUtils]: 4: Hoare triple {68155#true} call #t~ret12 := main(); {68155#true} is VALID [2018-11-23 12:15:44,695 INFO L273 TraceCheckUtils]: 5: Hoare triple {68155#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {68155#true} is VALID [2018-11-23 12:15:44,695 INFO L256 TraceCheckUtils]: 6: Hoare triple {68155#true} call init_nondet(~#x~0.base, ~#x~0.offset); {68155#true} is VALID [2018-11-23 12:15:44,695 INFO L273 TraceCheckUtils]: 7: Hoare triple {68155#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {68155#true} is VALID [2018-11-23 12:15:44,695 INFO L273 TraceCheckUtils]: 8: Hoare triple {68155#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {68155#true} is VALID [2018-11-23 12:15:44,696 INFO L273 TraceCheckUtils]: 9: Hoare triple {68155#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {68155#true} is VALID [2018-11-23 12:15:44,696 INFO L273 TraceCheckUtils]: 10: Hoare triple {68155#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {68155#true} is VALID [2018-11-23 12:15:44,696 INFO L273 TraceCheckUtils]: 11: Hoare triple {68155#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {68155#true} is VALID [2018-11-23 12:15:44,696 INFO L273 TraceCheckUtils]: 12: Hoare triple {68155#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {68155#true} is VALID [2018-11-23 12:15:44,696 INFO L273 TraceCheckUtils]: 13: Hoare triple {68155#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {68155#true} is VALID [2018-11-23 12:15:44,696 INFO L273 TraceCheckUtils]: 14: Hoare triple {68155#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {68155#true} is VALID [2018-11-23 12:15:44,697 INFO L273 TraceCheckUtils]: 15: Hoare triple {68155#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {68155#true} is VALID [2018-11-23 12:15:44,697 INFO L273 TraceCheckUtils]: 16: Hoare triple {68155#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {68155#true} is VALID [2018-11-23 12:15:44,697 INFO L273 TraceCheckUtils]: 17: Hoare triple {68155#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {68155#true} is VALID [2018-11-23 12:15:44,697 INFO L273 TraceCheckUtils]: 18: Hoare triple {68155#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {68155#true} is VALID [2018-11-23 12:15:44,697 INFO L273 TraceCheckUtils]: 19: Hoare triple {68155#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {68155#true} is VALID [2018-11-23 12:15:44,697 INFO L273 TraceCheckUtils]: 20: Hoare triple {68155#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {68155#true} is VALID [2018-11-23 12:15:44,697 INFO L273 TraceCheckUtils]: 21: Hoare triple {68155#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {68155#true} is VALID [2018-11-23 12:15:44,697 INFO L273 TraceCheckUtils]: 22: Hoare triple {68155#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {68155#true} is VALID [2018-11-23 12:15:44,698 INFO L273 TraceCheckUtils]: 23: Hoare triple {68155#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {68155#true} is VALID [2018-11-23 12:15:44,698 INFO L273 TraceCheckUtils]: 24: Hoare triple {68155#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {68155#true} is VALID [2018-11-23 12:15:44,698 INFO L273 TraceCheckUtils]: 25: Hoare triple {68155#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {68155#true} is VALID [2018-11-23 12:15:44,698 INFO L273 TraceCheckUtils]: 26: Hoare triple {68155#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {68155#true} is VALID [2018-11-23 12:15:44,698 INFO L273 TraceCheckUtils]: 27: Hoare triple {68155#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {68155#true} is VALID [2018-11-23 12:15:44,698 INFO L273 TraceCheckUtils]: 28: Hoare triple {68155#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {68155#true} is VALID [2018-11-23 12:15:44,698 INFO L273 TraceCheckUtils]: 29: Hoare triple {68155#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {68155#true} is VALID [2018-11-23 12:15:44,698 INFO L273 TraceCheckUtils]: 30: Hoare triple {68155#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {68155#true} is VALID [2018-11-23 12:15:44,698 INFO L273 TraceCheckUtils]: 31: Hoare triple {68155#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {68155#true} is VALID [2018-11-23 12:15:44,698 INFO L273 TraceCheckUtils]: 32: Hoare triple {68155#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {68155#true} is VALID [2018-11-23 12:15:44,699 INFO L273 TraceCheckUtils]: 33: Hoare triple {68155#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {68155#true} is VALID [2018-11-23 12:15:44,699 INFO L273 TraceCheckUtils]: 34: Hoare triple {68155#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {68155#true} is VALID [2018-11-23 12:15:44,699 INFO L273 TraceCheckUtils]: 35: Hoare triple {68155#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {68155#true} is VALID [2018-11-23 12:15:44,699 INFO L273 TraceCheckUtils]: 36: Hoare triple {68155#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {68155#true} is VALID [2018-11-23 12:15:44,699 INFO L273 TraceCheckUtils]: 37: Hoare triple {68155#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {68155#true} is VALID [2018-11-23 12:15:44,699 INFO L273 TraceCheckUtils]: 38: Hoare triple {68155#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {68155#true} is VALID [2018-11-23 12:15:44,699 INFO L273 TraceCheckUtils]: 39: Hoare triple {68155#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {68155#true} is VALID [2018-11-23 12:15:44,699 INFO L273 TraceCheckUtils]: 40: Hoare triple {68155#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {68155#true} is VALID [2018-11-23 12:15:44,699 INFO L273 TraceCheckUtils]: 41: Hoare triple {68155#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {68155#true} is VALID [2018-11-23 12:15:44,699 INFO L273 TraceCheckUtils]: 42: Hoare triple {68155#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {68155#true} is VALID [2018-11-23 12:15:44,700 INFO L273 TraceCheckUtils]: 43: Hoare triple {68155#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {68155#true} is VALID [2018-11-23 12:15:44,700 INFO L273 TraceCheckUtils]: 44: Hoare triple {68155#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {68155#true} is VALID [2018-11-23 12:15:44,700 INFO L273 TraceCheckUtils]: 45: Hoare triple {68155#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {68155#true} is VALID [2018-11-23 12:15:44,700 INFO L273 TraceCheckUtils]: 46: Hoare triple {68155#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {68155#true} is VALID [2018-11-23 12:15:44,700 INFO L273 TraceCheckUtils]: 47: Hoare triple {68155#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {68155#true} is VALID [2018-11-23 12:15:44,700 INFO L273 TraceCheckUtils]: 48: Hoare triple {68155#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {68155#true} is VALID [2018-11-23 12:15:44,700 INFO L273 TraceCheckUtils]: 49: Hoare triple {68155#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {68155#true} is VALID [2018-11-23 12:15:44,700 INFO L273 TraceCheckUtils]: 50: Hoare triple {68155#true} assume !(~i~0 < 40); {68155#true} is VALID [2018-11-23 12:15:44,700 INFO L273 TraceCheckUtils]: 51: Hoare triple {68155#true} assume true; {68155#true} is VALID [2018-11-23 12:15:44,701 INFO L268 TraceCheckUtils]: 52: Hoare quadruple {68155#true} {68155#true} #82#return; {68155#true} is VALID [2018-11-23 12:15:44,701 INFO L273 TraceCheckUtils]: 53: Hoare triple {68155#true} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {68155#true} is VALID [2018-11-23 12:15:44,701 INFO L256 TraceCheckUtils]: 54: Hoare triple {68155#true} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {68155#true} is VALID [2018-11-23 12:15:44,701 INFO L273 TraceCheckUtils]: 55: Hoare triple {68155#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {68155#true} is VALID [2018-11-23 12:15:44,701 INFO L273 TraceCheckUtils]: 56: Hoare triple {68155#true} assume !!(~i~1 < 40); {68155#true} is VALID [2018-11-23 12:15:44,701 INFO L273 TraceCheckUtils]: 57: Hoare triple {68155#true} assume !(~i~1 > 20); {68155#true} is VALID [2018-11-23 12:15:44,701 INFO L273 TraceCheckUtils]: 58: Hoare triple {68155#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68155#true} is VALID [2018-11-23 12:15:44,701 INFO L273 TraceCheckUtils]: 59: Hoare triple {68155#true} assume !!(~i~1 < 40); {68155#true} is VALID [2018-11-23 12:15:44,701 INFO L273 TraceCheckUtils]: 60: Hoare triple {68155#true} assume !(~i~1 > 20); {68155#true} is VALID [2018-11-23 12:15:44,701 INFO L273 TraceCheckUtils]: 61: Hoare triple {68155#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68155#true} is VALID [2018-11-23 12:15:44,702 INFO L273 TraceCheckUtils]: 62: Hoare triple {68155#true} assume !!(~i~1 < 40); {68155#true} is VALID [2018-11-23 12:15:44,702 INFO L273 TraceCheckUtils]: 63: Hoare triple {68155#true} assume !(~i~1 > 20); {68155#true} is VALID [2018-11-23 12:15:44,702 INFO L273 TraceCheckUtils]: 64: Hoare triple {68155#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68155#true} is VALID [2018-11-23 12:15:44,702 INFO L273 TraceCheckUtils]: 65: Hoare triple {68155#true} assume !!(~i~1 < 40); {68155#true} is VALID [2018-11-23 12:15:44,702 INFO L273 TraceCheckUtils]: 66: Hoare triple {68155#true} assume !(~i~1 > 20); {68155#true} is VALID [2018-11-23 12:15:44,702 INFO L273 TraceCheckUtils]: 67: Hoare triple {68155#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68155#true} is VALID [2018-11-23 12:15:44,702 INFO L273 TraceCheckUtils]: 68: Hoare triple {68155#true} assume !!(~i~1 < 40); {68155#true} is VALID [2018-11-23 12:15:44,702 INFO L273 TraceCheckUtils]: 69: Hoare triple {68155#true} assume !(~i~1 > 20); {68155#true} is VALID [2018-11-23 12:15:44,702 INFO L273 TraceCheckUtils]: 70: Hoare triple {68155#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68155#true} is VALID [2018-11-23 12:15:44,702 INFO L273 TraceCheckUtils]: 71: Hoare triple {68155#true} assume !!(~i~1 < 40); {68155#true} is VALID [2018-11-23 12:15:44,703 INFO L273 TraceCheckUtils]: 72: Hoare triple {68155#true} assume !(~i~1 > 20); {68155#true} is VALID [2018-11-23 12:15:44,703 INFO L273 TraceCheckUtils]: 73: Hoare triple {68155#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68155#true} is VALID [2018-11-23 12:15:44,703 INFO L273 TraceCheckUtils]: 74: Hoare triple {68155#true} assume !!(~i~1 < 40); {68155#true} is VALID [2018-11-23 12:15:44,703 INFO L273 TraceCheckUtils]: 75: Hoare triple {68155#true} assume !(~i~1 > 20); {68155#true} is VALID [2018-11-23 12:15:44,703 INFO L273 TraceCheckUtils]: 76: Hoare triple {68155#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68155#true} is VALID [2018-11-23 12:15:44,703 INFO L273 TraceCheckUtils]: 77: Hoare triple {68155#true} assume !!(~i~1 < 40); {68155#true} is VALID [2018-11-23 12:15:44,703 INFO L273 TraceCheckUtils]: 78: Hoare triple {68155#true} assume !(~i~1 > 20); {68155#true} is VALID [2018-11-23 12:15:44,703 INFO L273 TraceCheckUtils]: 79: Hoare triple {68155#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68155#true} is VALID [2018-11-23 12:15:44,703 INFO L273 TraceCheckUtils]: 80: Hoare triple {68155#true} assume !!(~i~1 < 40); {68155#true} is VALID [2018-11-23 12:15:44,703 INFO L273 TraceCheckUtils]: 81: Hoare triple {68155#true} assume !(~i~1 > 20); {68155#true} is VALID [2018-11-23 12:15:44,704 INFO L273 TraceCheckUtils]: 82: Hoare triple {68155#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68155#true} is VALID [2018-11-23 12:15:44,704 INFO L273 TraceCheckUtils]: 83: Hoare triple {68155#true} assume !!(~i~1 < 40); {68155#true} is VALID [2018-11-23 12:15:44,704 INFO L273 TraceCheckUtils]: 84: Hoare triple {68155#true} assume !(~i~1 > 20); {68155#true} is VALID [2018-11-23 12:15:44,704 INFO L273 TraceCheckUtils]: 85: Hoare triple {68155#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68155#true} is VALID [2018-11-23 12:15:44,704 INFO L273 TraceCheckUtils]: 86: Hoare triple {68155#true} assume !!(~i~1 < 40); {68155#true} is VALID [2018-11-23 12:15:44,704 INFO L273 TraceCheckUtils]: 87: Hoare triple {68155#true} assume !(~i~1 > 20); {68155#true} is VALID [2018-11-23 12:15:44,704 INFO L273 TraceCheckUtils]: 88: Hoare triple {68155#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68155#true} is VALID [2018-11-23 12:15:44,704 INFO L273 TraceCheckUtils]: 89: Hoare triple {68155#true} assume !!(~i~1 < 40); {68155#true} is VALID [2018-11-23 12:15:44,704 INFO L273 TraceCheckUtils]: 90: Hoare triple {68155#true} assume !(~i~1 > 20); {68155#true} is VALID [2018-11-23 12:15:44,704 INFO L273 TraceCheckUtils]: 91: Hoare triple {68155#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68155#true} is VALID [2018-11-23 12:15:44,705 INFO L273 TraceCheckUtils]: 92: Hoare triple {68155#true} assume !!(~i~1 < 40); {68155#true} is VALID [2018-11-23 12:15:44,705 INFO L273 TraceCheckUtils]: 93: Hoare triple {68155#true} assume !(~i~1 > 20); {68155#true} is VALID [2018-11-23 12:15:44,705 INFO L273 TraceCheckUtils]: 94: Hoare triple {68155#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68155#true} is VALID [2018-11-23 12:15:44,705 INFO L273 TraceCheckUtils]: 95: Hoare triple {68155#true} assume !!(~i~1 < 40); {68155#true} is VALID [2018-11-23 12:15:44,705 INFO L273 TraceCheckUtils]: 96: Hoare triple {68155#true} assume !(~i~1 > 20); {68155#true} is VALID [2018-11-23 12:15:44,705 INFO L273 TraceCheckUtils]: 97: Hoare triple {68155#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68155#true} is VALID [2018-11-23 12:15:44,705 INFO L273 TraceCheckUtils]: 98: Hoare triple {68155#true} assume !!(~i~1 < 40); {68155#true} is VALID [2018-11-23 12:15:44,706 INFO L273 TraceCheckUtils]: 99: Hoare triple {68155#true} assume !(~i~1 > 20); {68457#(<= rangesum_~i~1 20)} is VALID [2018-11-23 12:15:44,706 INFO L273 TraceCheckUtils]: 100: Hoare triple {68457#(<= rangesum_~i~1 20)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68461#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:15:44,706 INFO L273 TraceCheckUtils]: 101: Hoare triple {68461#(<= rangesum_~i~1 21)} assume !!(~i~1 < 40); {68461#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:15:44,707 INFO L273 TraceCheckUtils]: 102: Hoare triple {68461#(<= rangesum_~i~1 21)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {68461#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:15:44,707 INFO L273 TraceCheckUtils]: 103: Hoare triple {68461#(<= rangesum_~i~1 21)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68471#(<= rangesum_~i~1 22)} is VALID [2018-11-23 12:15:44,707 INFO L273 TraceCheckUtils]: 104: Hoare triple {68471#(<= rangesum_~i~1 22)} assume !!(~i~1 < 40); {68471#(<= rangesum_~i~1 22)} is VALID [2018-11-23 12:15:44,708 INFO L273 TraceCheckUtils]: 105: Hoare triple {68471#(<= rangesum_~i~1 22)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {68471#(<= rangesum_~i~1 22)} is VALID [2018-11-23 12:15:44,708 INFO L273 TraceCheckUtils]: 106: Hoare triple {68471#(<= rangesum_~i~1 22)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68481#(<= rangesum_~i~1 23)} is VALID [2018-11-23 12:15:44,709 INFO L273 TraceCheckUtils]: 107: Hoare triple {68481#(<= rangesum_~i~1 23)} assume !!(~i~1 < 40); {68481#(<= rangesum_~i~1 23)} is VALID [2018-11-23 12:15:44,709 INFO L273 TraceCheckUtils]: 108: Hoare triple {68481#(<= rangesum_~i~1 23)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {68481#(<= rangesum_~i~1 23)} is VALID [2018-11-23 12:15:44,710 INFO L273 TraceCheckUtils]: 109: Hoare triple {68481#(<= rangesum_~i~1 23)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68491#(<= rangesum_~i~1 24)} is VALID [2018-11-23 12:15:44,711 INFO L273 TraceCheckUtils]: 110: Hoare triple {68491#(<= rangesum_~i~1 24)} assume !!(~i~1 < 40); {68491#(<= rangesum_~i~1 24)} is VALID [2018-11-23 12:15:44,711 INFO L273 TraceCheckUtils]: 111: Hoare triple {68491#(<= rangesum_~i~1 24)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {68491#(<= rangesum_~i~1 24)} is VALID [2018-11-23 12:15:44,712 INFO L273 TraceCheckUtils]: 112: Hoare triple {68491#(<= rangesum_~i~1 24)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68501#(<= rangesum_~i~1 25)} is VALID [2018-11-23 12:15:44,713 INFO L273 TraceCheckUtils]: 113: Hoare triple {68501#(<= rangesum_~i~1 25)} assume !!(~i~1 < 40); {68501#(<= rangesum_~i~1 25)} is VALID [2018-11-23 12:15:44,713 INFO L273 TraceCheckUtils]: 114: Hoare triple {68501#(<= rangesum_~i~1 25)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {68501#(<= rangesum_~i~1 25)} is VALID [2018-11-23 12:15:44,714 INFO L273 TraceCheckUtils]: 115: Hoare triple {68501#(<= rangesum_~i~1 25)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68511#(<= rangesum_~i~1 26)} is VALID [2018-11-23 12:15:44,715 INFO L273 TraceCheckUtils]: 116: Hoare triple {68511#(<= rangesum_~i~1 26)} assume !!(~i~1 < 40); {68511#(<= rangesum_~i~1 26)} is VALID [2018-11-23 12:15:44,748 INFO L273 TraceCheckUtils]: 117: Hoare triple {68511#(<= rangesum_~i~1 26)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {68511#(<= rangesum_~i~1 26)} is VALID [2018-11-23 12:15:44,750 INFO L273 TraceCheckUtils]: 118: Hoare triple {68511#(<= rangesum_~i~1 26)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68521#(<= rangesum_~i~1 27)} is VALID [2018-11-23 12:15:44,750 INFO L273 TraceCheckUtils]: 119: Hoare triple {68521#(<= rangesum_~i~1 27)} assume !!(~i~1 < 40); {68521#(<= rangesum_~i~1 27)} is VALID [2018-11-23 12:15:44,751 INFO L273 TraceCheckUtils]: 120: Hoare triple {68521#(<= rangesum_~i~1 27)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {68521#(<= rangesum_~i~1 27)} is VALID [2018-11-23 12:15:44,753 INFO L273 TraceCheckUtils]: 121: Hoare triple {68521#(<= rangesum_~i~1 27)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68531#(<= rangesum_~i~1 28)} is VALID [2018-11-23 12:15:44,753 INFO L273 TraceCheckUtils]: 122: Hoare triple {68531#(<= rangesum_~i~1 28)} assume !!(~i~1 < 40); {68531#(<= rangesum_~i~1 28)} is VALID [2018-11-23 12:15:44,755 INFO L273 TraceCheckUtils]: 123: Hoare triple {68531#(<= rangesum_~i~1 28)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {68531#(<= rangesum_~i~1 28)} is VALID [2018-11-23 12:15:44,757 INFO L273 TraceCheckUtils]: 124: Hoare triple {68531#(<= rangesum_~i~1 28)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68541#(<= rangesum_~i~1 29)} is VALID [2018-11-23 12:15:44,757 INFO L273 TraceCheckUtils]: 125: Hoare triple {68541#(<= rangesum_~i~1 29)} assume !!(~i~1 < 40); {68541#(<= rangesum_~i~1 29)} is VALID [2018-11-23 12:15:44,759 INFO L273 TraceCheckUtils]: 126: Hoare triple {68541#(<= rangesum_~i~1 29)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {68541#(<= rangesum_~i~1 29)} is VALID [2018-11-23 12:15:44,759 INFO L273 TraceCheckUtils]: 127: Hoare triple {68541#(<= rangesum_~i~1 29)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68551#(<= rangesum_~i~1 30)} is VALID [2018-11-23 12:15:44,761 INFO L273 TraceCheckUtils]: 128: Hoare triple {68551#(<= rangesum_~i~1 30)} assume !!(~i~1 < 40); {68551#(<= rangesum_~i~1 30)} is VALID [2018-11-23 12:15:44,761 INFO L273 TraceCheckUtils]: 129: Hoare triple {68551#(<= rangesum_~i~1 30)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {68551#(<= rangesum_~i~1 30)} is VALID [2018-11-23 12:15:44,763 INFO L273 TraceCheckUtils]: 130: Hoare triple {68551#(<= rangesum_~i~1 30)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68561#(<= rangesum_~i~1 31)} is VALID [2018-11-23 12:15:44,763 INFO L273 TraceCheckUtils]: 131: Hoare triple {68561#(<= rangesum_~i~1 31)} assume !!(~i~1 < 40); {68561#(<= rangesum_~i~1 31)} is VALID [2018-11-23 12:15:44,765 INFO L273 TraceCheckUtils]: 132: Hoare triple {68561#(<= rangesum_~i~1 31)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {68561#(<= rangesum_~i~1 31)} is VALID [2018-11-23 12:15:44,765 INFO L273 TraceCheckUtils]: 133: Hoare triple {68561#(<= rangesum_~i~1 31)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68571#(<= rangesum_~i~1 32)} is VALID [2018-11-23 12:15:44,767 INFO L273 TraceCheckUtils]: 134: Hoare triple {68571#(<= rangesum_~i~1 32)} assume !!(~i~1 < 40); {68571#(<= rangesum_~i~1 32)} is VALID [2018-11-23 12:15:44,767 INFO L273 TraceCheckUtils]: 135: Hoare triple {68571#(<= rangesum_~i~1 32)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {68571#(<= rangesum_~i~1 32)} is VALID [2018-11-23 12:15:44,769 INFO L273 TraceCheckUtils]: 136: Hoare triple {68571#(<= rangesum_~i~1 32)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68581#(<= rangesum_~i~1 33)} is VALID [2018-11-23 12:15:44,769 INFO L273 TraceCheckUtils]: 137: Hoare triple {68581#(<= rangesum_~i~1 33)} assume !!(~i~1 < 40); {68581#(<= rangesum_~i~1 33)} is VALID [2018-11-23 12:15:44,772 INFO L273 TraceCheckUtils]: 138: Hoare triple {68581#(<= rangesum_~i~1 33)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {68581#(<= rangesum_~i~1 33)} is VALID [2018-11-23 12:15:44,772 INFO L273 TraceCheckUtils]: 139: Hoare triple {68581#(<= rangesum_~i~1 33)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68591#(<= rangesum_~i~1 34)} is VALID [2018-11-23 12:15:44,774 INFO L273 TraceCheckUtils]: 140: Hoare triple {68591#(<= rangesum_~i~1 34)} assume !!(~i~1 < 40); {68591#(<= rangesum_~i~1 34)} is VALID [2018-11-23 12:15:44,774 INFO L273 TraceCheckUtils]: 141: Hoare triple {68591#(<= rangesum_~i~1 34)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {68591#(<= rangesum_~i~1 34)} is VALID [2018-11-23 12:15:44,776 INFO L273 TraceCheckUtils]: 142: Hoare triple {68591#(<= rangesum_~i~1 34)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68601#(<= rangesum_~i~1 35)} is VALID [2018-11-23 12:15:44,776 INFO L273 TraceCheckUtils]: 143: Hoare triple {68601#(<= rangesum_~i~1 35)} assume !(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,776 INFO L273 TraceCheckUtils]: 144: Hoare triple {68156#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {68156#false} is VALID [2018-11-23 12:15:44,776 INFO L273 TraceCheckUtils]: 145: Hoare triple {68156#false} assume true; {68156#false} is VALID [2018-11-23 12:15:44,776 INFO L268 TraceCheckUtils]: 146: Hoare quadruple {68156#false} {68155#true} #84#return; {68156#false} is VALID [2018-11-23 12:15:44,776 INFO L273 TraceCheckUtils]: 147: Hoare triple {68156#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {68156#false} is VALID [2018-11-23 12:15:44,777 INFO L256 TraceCheckUtils]: 148: Hoare triple {68156#false} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {68156#false} is VALID [2018-11-23 12:15:44,777 INFO L273 TraceCheckUtils]: 149: Hoare triple {68156#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {68156#false} is VALID [2018-11-23 12:15:44,777 INFO L273 TraceCheckUtils]: 150: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,777 INFO L273 TraceCheckUtils]: 151: Hoare triple {68156#false} assume !(~i~1 > 20); {68156#false} is VALID [2018-11-23 12:15:44,777 INFO L273 TraceCheckUtils]: 152: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,777 INFO L273 TraceCheckUtils]: 153: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,777 INFO L273 TraceCheckUtils]: 154: Hoare triple {68156#false} assume !(~i~1 > 20); {68156#false} is VALID [2018-11-23 12:15:44,777 INFO L273 TraceCheckUtils]: 155: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,777 INFO L273 TraceCheckUtils]: 156: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,778 INFO L273 TraceCheckUtils]: 157: Hoare triple {68156#false} assume !(~i~1 > 20); {68156#false} is VALID [2018-11-23 12:15:44,778 INFO L273 TraceCheckUtils]: 158: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,778 INFO L273 TraceCheckUtils]: 159: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,778 INFO L273 TraceCheckUtils]: 160: Hoare triple {68156#false} assume !(~i~1 > 20); {68156#false} is VALID [2018-11-23 12:15:44,778 INFO L273 TraceCheckUtils]: 161: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,778 INFO L273 TraceCheckUtils]: 162: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,778 INFO L273 TraceCheckUtils]: 163: Hoare triple {68156#false} assume !(~i~1 > 20); {68156#false} is VALID [2018-11-23 12:15:44,778 INFO L273 TraceCheckUtils]: 164: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,778 INFO L273 TraceCheckUtils]: 165: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,778 INFO L273 TraceCheckUtils]: 166: Hoare triple {68156#false} assume !(~i~1 > 20); {68156#false} is VALID [2018-11-23 12:15:44,779 INFO L273 TraceCheckUtils]: 167: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,779 INFO L273 TraceCheckUtils]: 168: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,779 INFO L273 TraceCheckUtils]: 169: Hoare triple {68156#false} assume !(~i~1 > 20); {68156#false} is VALID [2018-11-23 12:15:44,779 INFO L273 TraceCheckUtils]: 170: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,779 INFO L273 TraceCheckUtils]: 171: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,779 INFO L273 TraceCheckUtils]: 172: Hoare triple {68156#false} assume !(~i~1 > 20); {68156#false} is VALID [2018-11-23 12:15:44,779 INFO L273 TraceCheckUtils]: 173: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,779 INFO L273 TraceCheckUtils]: 174: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,779 INFO L273 TraceCheckUtils]: 175: Hoare triple {68156#false} assume !(~i~1 > 20); {68156#false} is VALID [2018-11-23 12:15:44,780 INFO L273 TraceCheckUtils]: 176: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,780 INFO L273 TraceCheckUtils]: 177: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,780 INFO L273 TraceCheckUtils]: 178: Hoare triple {68156#false} assume !(~i~1 > 20); {68156#false} is VALID [2018-11-23 12:15:44,780 INFO L273 TraceCheckUtils]: 179: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,780 INFO L273 TraceCheckUtils]: 180: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,780 INFO L273 TraceCheckUtils]: 181: Hoare triple {68156#false} assume !(~i~1 > 20); {68156#false} is VALID [2018-11-23 12:15:44,780 INFO L273 TraceCheckUtils]: 182: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,780 INFO L273 TraceCheckUtils]: 183: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,780 INFO L273 TraceCheckUtils]: 184: Hoare triple {68156#false} assume !(~i~1 > 20); {68156#false} is VALID [2018-11-23 12:15:44,780 INFO L273 TraceCheckUtils]: 185: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,781 INFO L273 TraceCheckUtils]: 186: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,781 INFO L273 TraceCheckUtils]: 187: Hoare triple {68156#false} assume !(~i~1 > 20); {68156#false} is VALID [2018-11-23 12:15:44,781 INFO L273 TraceCheckUtils]: 188: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,781 INFO L273 TraceCheckUtils]: 189: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,781 INFO L273 TraceCheckUtils]: 190: Hoare triple {68156#false} assume !(~i~1 > 20); {68156#false} is VALID [2018-11-23 12:15:44,781 INFO L273 TraceCheckUtils]: 191: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,781 INFO L273 TraceCheckUtils]: 192: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,781 INFO L273 TraceCheckUtils]: 193: Hoare triple {68156#false} assume !(~i~1 > 20); {68156#false} is VALID [2018-11-23 12:15:44,781 INFO L273 TraceCheckUtils]: 194: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,781 INFO L273 TraceCheckUtils]: 195: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,782 INFO L273 TraceCheckUtils]: 196: Hoare triple {68156#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {68156#false} is VALID [2018-11-23 12:15:44,782 INFO L273 TraceCheckUtils]: 197: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,782 INFO L273 TraceCheckUtils]: 198: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,782 INFO L273 TraceCheckUtils]: 199: Hoare triple {68156#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {68156#false} is VALID [2018-11-23 12:15:44,782 INFO L273 TraceCheckUtils]: 200: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,782 INFO L273 TraceCheckUtils]: 201: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,782 INFO L273 TraceCheckUtils]: 202: Hoare triple {68156#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {68156#false} is VALID [2018-11-23 12:15:44,782 INFO L273 TraceCheckUtils]: 203: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,782 INFO L273 TraceCheckUtils]: 204: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,783 INFO L273 TraceCheckUtils]: 205: Hoare triple {68156#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {68156#false} is VALID [2018-11-23 12:15:44,783 INFO L273 TraceCheckUtils]: 206: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,783 INFO L273 TraceCheckUtils]: 207: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,783 INFO L273 TraceCheckUtils]: 208: Hoare triple {68156#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {68156#false} is VALID [2018-11-23 12:15:44,783 INFO L273 TraceCheckUtils]: 209: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,783 INFO L273 TraceCheckUtils]: 210: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,783 INFO L273 TraceCheckUtils]: 211: Hoare triple {68156#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {68156#false} is VALID [2018-11-23 12:15:44,783 INFO L273 TraceCheckUtils]: 212: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,783 INFO L273 TraceCheckUtils]: 213: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,783 INFO L273 TraceCheckUtils]: 214: Hoare triple {68156#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {68156#false} is VALID [2018-11-23 12:15:44,784 INFO L273 TraceCheckUtils]: 215: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,784 INFO L273 TraceCheckUtils]: 216: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,784 INFO L273 TraceCheckUtils]: 217: Hoare triple {68156#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {68156#false} is VALID [2018-11-23 12:15:44,784 INFO L273 TraceCheckUtils]: 218: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,784 INFO L273 TraceCheckUtils]: 219: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,784 INFO L273 TraceCheckUtils]: 220: Hoare triple {68156#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {68156#false} is VALID [2018-11-23 12:15:44,784 INFO L273 TraceCheckUtils]: 221: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,784 INFO L273 TraceCheckUtils]: 222: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,784 INFO L273 TraceCheckUtils]: 223: Hoare triple {68156#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {68156#false} is VALID [2018-11-23 12:15:44,784 INFO L273 TraceCheckUtils]: 224: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,785 INFO L273 TraceCheckUtils]: 225: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,785 INFO L273 TraceCheckUtils]: 226: Hoare triple {68156#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {68156#false} is VALID [2018-11-23 12:15:44,785 INFO L273 TraceCheckUtils]: 227: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,785 INFO L273 TraceCheckUtils]: 228: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,785 INFO L273 TraceCheckUtils]: 229: Hoare triple {68156#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {68156#false} is VALID [2018-11-23 12:15:44,785 INFO L273 TraceCheckUtils]: 230: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,785 INFO L273 TraceCheckUtils]: 231: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,785 INFO L273 TraceCheckUtils]: 232: Hoare triple {68156#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {68156#false} is VALID [2018-11-23 12:15:44,785 INFO L273 TraceCheckUtils]: 233: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,785 INFO L273 TraceCheckUtils]: 234: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,786 INFO L273 TraceCheckUtils]: 235: Hoare triple {68156#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {68156#false} is VALID [2018-11-23 12:15:44,786 INFO L273 TraceCheckUtils]: 236: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,786 INFO L273 TraceCheckUtils]: 237: Hoare triple {68156#false} assume !(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,786 INFO L273 TraceCheckUtils]: 238: Hoare triple {68156#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {68156#false} is VALID [2018-11-23 12:15:44,786 INFO L273 TraceCheckUtils]: 239: Hoare triple {68156#false} assume true; {68156#false} is VALID [2018-11-23 12:15:44,786 INFO L268 TraceCheckUtils]: 240: Hoare quadruple {68156#false} {68156#false} #86#return; {68156#false} is VALID [2018-11-23 12:15:44,786 INFO L273 TraceCheckUtils]: 241: Hoare triple {68156#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {68156#false} is VALID [2018-11-23 12:15:44,786 INFO L273 TraceCheckUtils]: 242: Hoare triple {68156#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {68156#false} is VALID [2018-11-23 12:15:44,786 INFO L273 TraceCheckUtils]: 243: Hoare triple {68156#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {68156#false} is VALID [2018-11-23 12:15:44,786 INFO L273 TraceCheckUtils]: 244: Hoare triple {68156#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {68156#false} is VALID [2018-11-23 12:15:44,787 INFO L273 TraceCheckUtils]: 245: Hoare triple {68156#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {68156#false} is VALID [2018-11-23 12:15:44,787 INFO L273 TraceCheckUtils]: 246: Hoare triple {68156#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {68156#false} is VALID [2018-11-23 12:15:44,787 INFO L273 TraceCheckUtils]: 247: Hoare triple {68156#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {68156#false} is VALID [2018-11-23 12:15:44,787 INFO L273 TraceCheckUtils]: 248: Hoare triple {68156#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {68156#false} is VALID [2018-11-23 12:15:44,787 INFO L273 TraceCheckUtils]: 249: Hoare triple {68156#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {68156#false} is VALID [2018-11-23 12:15:44,787 INFO L273 TraceCheckUtils]: 250: Hoare triple {68156#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {68156#false} is VALID [2018-11-23 12:15:44,787 INFO L273 TraceCheckUtils]: 251: Hoare triple {68156#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {68156#false} is VALID [2018-11-23 12:15:44,787 INFO L273 TraceCheckUtils]: 252: Hoare triple {68156#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {68156#false} is VALID [2018-11-23 12:15:44,787 INFO L273 TraceCheckUtils]: 253: Hoare triple {68156#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {68156#false} is VALID [2018-11-23 12:15:44,787 INFO L273 TraceCheckUtils]: 254: Hoare triple {68156#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {68156#false} is VALID [2018-11-23 12:15:44,788 INFO L273 TraceCheckUtils]: 255: Hoare triple {68156#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {68156#false} is VALID [2018-11-23 12:15:44,788 INFO L273 TraceCheckUtils]: 256: Hoare triple {68156#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {68156#false} is VALID [2018-11-23 12:15:44,788 INFO L273 TraceCheckUtils]: 257: Hoare triple {68156#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {68156#false} is VALID [2018-11-23 12:15:44,788 INFO L273 TraceCheckUtils]: 258: Hoare triple {68156#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {68156#false} is VALID [2018-11-23 12:15:44,788 INFO L273 TraceCheckUtils]: 259: Hoare triple {68156#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {68156#false} is VALID [2018-11-23 12:15:44,788 INFO L273 TraceCheckUtils]: 260: Hoare triple {68156#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {68156#false} is VALID [2018-11-23 12:15:44,788 INFO L273 TraceCheckUtils]: 261: Hoare triple {68156#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {68156#false} is VALID [2018-11-23 12:15:44,788 INFO L273 TraceCheckUtils]: 262: Hoare triple {68156#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {68156#false} is VALID [2018-11-23 12:15:44,788 INFO L273 TraceCheckUtils]: 263: Hoare triple {68156#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {68156#false} is VALID [2018-11-23 12:15:44,788 INFO L273 TraceCheckUtils]: 264: Hoare triple {68156#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {68156#false} is VALID [2018-11-23 12:15:44,789 INFO L273 TraceCheckUtils]: 265: Hoare triple {68156#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {68156#false} is VALID [2018-11-23 12:15:44,789 INFO L273 TraceCheckUtils]: 266: Hoare triple {68156#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {68156#false} is VALID [2018-11-23 12:15:44,789 INFO L273 TraceCheckUtils]: 267: Hoare triple {68156#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {68156#false} is VALID [2018-11-23 12:15:44,789 INFO L273 TraceCheckUtils]: 268: Hoare triple {68156#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {68156#false} is VALID [2018-11-23 12:15:44,789 INFO L273 TraceCheckUtils]: 269: Hoare triple {68156#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {68156#false} is VALID [2018-11-23 12:15:44,789 INFO L273 TraceCheckUtils]: 270: Hoare triple {68156#false} assume !(~i~2 < 39); {68156#false} is VALID [2018-11-23 12:15:44,789 INFO L273 TraceCheckUtils]: 271: Hoare triple {68156#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {68156#false} is VALID [2018-11-23 12:15:44,789 INFO L256 TraceCheckUtils]: 272: Hoare triple {68156#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {68156#false} is VALID [2018-11-23 12:15:44,789 INFO L273 TraceCheckUtils]: 273: Hoare triple {68156#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {68156#false} is VALID [2018-11-23 12:15:44,789 INFO L273 TraceCheckUtils]: 274: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,790 INFO L273 TraceCheckUtils]: 275: Hoare triple {68156#false} assume !(~i~1 > 20); {68156#false} is VALID [2018-11-23 12:15:44,790 INFO L273 TraceCheckUtils]: 276: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,790 INFO L273 TraceCheckUtils]: 277: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,790 INFO L273 TraceCheckUtils]: 278: Hoare triple {68156#false} assume !(~i~1 > 20); {68156#false} is VALID [2018-11-23 12:15:44,790 INFO L273 TraceCheckUtils]: 279: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,790 INFO L273 TraceCheckUtils]: 280: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,790 INFO L273 TraceCheckUtils]: 281: Hoare triple {68156#false} assume !(~i~1 > 20); {68156#false} is VALID [2018-11-23 12:15:44,790 INFO L273 TraceCheckUtils]: 282: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,790 INFO L273 TraceCheckUtils]: 283: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,790 INFO L273 TraceCheckUtils]: 284: Hoare triple {68156#false} assume !(~i~1 > 20); {68156#false} is VALID [2018-11-23 12:15:44,791 INFO L273 TraceCheckUtils]: 285: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,791 INFO L273 TraceCheckUtils]: 286: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,791 INFO L273 TraceCheckUtils]: 287: Hoare triple {68156#false} assume !(~i~1 > 20); {68156#false} is VALID [2018-11-23 12:15:44,791 INFO L273 TraceCheckUtils]: 288: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,791 INFO L273 TraceCheckUtils]: 289: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,791 INFO L273 TraceCheckUtils]: 290: Hoare triple {68156#false} assume !(~i~1 > 20); {68156#false} is VALID [2018-11-23 12:15:44,791 INFO L273 TraceCheckUtils]: 291: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,791 INFO L273 TraceCheckUtils]: 292: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,791 INFO L273 TraceCheckUtils]: 293: Hoare triple {68156#false} assume !(~i~1 > 20); {68156#false} is VALID [2018-11-23 12:15:44,791 INFO L273 TraceCheckUtils]: 294: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,792 INFO L273 TraceCheckUtils]: 295: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,792 INFO L273 TraceCheckUtils]: 296: Hoare triple {68156#false} assume !(~i~1 > 20); {68156#false} is VALID [2018-11-23 12:15:44,792 INFO L273 TraceCheckUtils]: 297: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,792 INFO L273 TraceCheckUtils]: 298: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,792 INFO L273 TraceCheckUtils]: 299: Hoare triple {68156#false} assume !(~i~1 > 20); {68156#false} is VALID [2018-11-23 12:15:44,792 INFO L273 TraceCheckUtils]: 300: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,792 INFO L273 TraceCheckUtils]: 301: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,792 INFO L273 TraceCheckUtils]: 302: Hoare triple {68156#false} assume !(~i~1 > 20); {68156#false} is VALID [2018-11-23 12:15:44,792 INFO L273 TraceCheckUtils]: 303: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,792 INFO L273 TraceCheckUtils]: 304: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,793 INFO L273 TraceCheckUtils]: 305: Hoare triple {68156#false} assume !(~i~1 > 20); {68156#false} is VALID [2018-11-23 12:15:44,793 INFO L273 TraceCheckUtils]: 306: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,793 INFO L273 TraceCheckUtils]: 307: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,793 INFO L273 TraceCheckUtils]: 308: Hoare triple {68156#false} assume !(~i~1 > 20); {68156#false} is VALID [2018-11-23 12:15:44,793 INFO L273 TraceCheckUtils]: 309: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,793 INFO L273 TraceCheckUtils]: 310: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,793 INFO L273 TraceCheckUtils]: 311: Hoare triple {68156#false} assume !(~i~1 > 20); {68156#false} is VALID [2018-11-23 12:15:44,793 INFO L273 TraceCheckUtils]: 312: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,793 INFO L273 TraceCheckUtils]: 313: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,793 INFO L273 TraceCheckUtils]: 314: Hoare triple {68156#false} assume !(~i~1 > 20); {68156#false} is VALID [2018-11-23 12:15:44,794 INFO L273 TraceCheckUtils]: 315: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,794 INFO L273 TraceCheckUtils]: 316: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,794 INFO L273 TraceCheckUtils]: 317: Hoare triple {68156#false} assume !(~i~1 > 20); {68156#false} is VALID [2018-11-23 12:15:44,794 INFO L273 TraceCheckUtils]: 318: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,794 INFO L273 TraceCheckUtils]: 319: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,794 INFO L273 TraceCheckUtils]: 320: Hoare triple {68156#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {68156#false} is VALID [2018-11-23 12:15:44,794 INFO L273 TraceCheckUtils]: 321: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,794 INFO L273 TraceCheckUtils]: 322: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,794 INFO L273 TraceCheckUtils]: 323: Hoare triple {68156#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {68156#false} is VALID [2018-11-23 12:15:44,795 INFO L273 TraceCheckUtils]: 324: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,795 INFO L273 TraceCheckUtils]: 325: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,795 INFO L273 TraceCheckUtils]: 326: Hoare triple {68156#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {68156#false} is VALID [2018-11-23 12:15:44,795 INFO L273 TraceCheckUtils]: 327: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,795 INFO L273 TraceCheckUtils]: 328: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,795 INFO L273 TraceCheckUtils]: 329: Hoare triple {68156#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {68156#false} is VALID [2018-11-23 12:15:44,795 INFO L273 TraceCheckUtils]: 330: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,795 INFO L273 TraceCheckUtils]: 331: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,795 INFO L273 TraceCheckUtils]: 332: Hoare triple {68156#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {68156#false} is VALID [2018-11-23 12:15:44,795 INFO L273 TraceCheckUtils]: 333: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,796 INFO L273 TraceCheckUtils]: 334: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,796 INFO L273 TraceCheckUtils]: 335: Hoare triple {68156#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {68156#false} is VALID [2018-11-23 12:15:44,796 INFO L273 TraceCheckUtils]: 336: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,796 INFO L273 TraceCheckUtils]: 337: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,796 INFO L273 TraceCheckUtils]: 338: Hoare triple {68156#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {68156#false} is VALID [2018-11-23 12:15:44,796 INFO L273 TraceCheckUtils]: 339: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,796 INFO L273 TraceCheckUtils]: 340: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,796 INFO L273 TraceCheckUtils]: 341: Hoare triple {68156#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {68156#false} is VALID [2018-11-23 12:15:44,796 INFO L273 TraceCheckUtils]: 342: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,796 INFO L273 TraceCheckUtils]: 343: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,797 INFO L273 TraceCheckUtils]: 344: Hoare triple {68156#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {68156#false} is VALID [2018-11-23 12:15:44,797 INFO L273 TraceCheckUtils]: 345: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,797 INFO L273 TraceCheckUtils]: 346: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,797 INFO L273 TraceCheckUtils]: 347: Hoare triple {68156#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {68156#false} is VALID [2018-11-23 12:15:44,797 INFO L273 TraceCheckUtils]: 348: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,797 INFO L273 TraceCheckUtils]: 349: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,797 INFO L273 TraceCheckUtils]: 350: Hoare triple {68156#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {68156#false} is VALID [2018-11-23 12:15:44,797 INFO L273 TraceCheckUtils]: 351: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,797 INFO L273 TraceCheckUtils]: 352: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,797 INFO L273 TraceCheckUtils]: 353: Hoare triple {68156#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {68156#false} is VALID [2018-11-23 12:15:44,798 INFO L273 TraceCheckUtils]: 354: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,798 INFO L273 TraceCheckUtils]: 355: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,798 INFO L273 TraceCheckUtils]: 356: Hoare triple {68156#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {68156#false} is VALID [2018-11-23 12:15:44,798 INFO L273 TraceCheckUtils]: 357: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,798 INFO L273 TraceCheckUtils]: 358: Hoare triple {68156#false} assume !!(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,798 INFO L273 TraceCheckUtils]: 359: Hoare triple {68156#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {68156#false} is VALID [2018-11-23 12:15:44,798 INFO L273 TraceCheckUtils]: 360: Hoare triple {68156#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {68156#false} is VALID [2018-11-23 12:15:44,798 INFO L273 TraceCheckUtils]: 361: Hoare triple {68156#false} assume !(~i~1 < 40); {68156#false} is VALID [2018-11-23 12:15:44,798 INFO L273 TraceCheckUtils]: 362: Hoare triple {68156#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {68156#false} is VALID [2018-11-23 12:15:44,798 INFO L273 TraceCheckUtils]: 363: Hoare triple {68156#false} assume true; {68156#false} is VALID [2018-11-23 12:15:44,799 INFO L268 TraceCheckUtils]: 364: Hoare quadruple {68156#false} {68156#false} #88#return; {68156#false} is VALID [2018-11-23 12:15:44,799 INFO L273 TraceCheckUtils]: 365: Hoare triple {68156#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {68156#false} is VALID [2018-11-23 12:15:44,799 INFO L273 TraceCheckUtils]: 366: Hoare triple {68156#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {68156#false} is VALID [2018-11-23 12:15:44,799 INFO L273 TraceCheckUtils]: 367: Hoare triple {68156#false} assume !false; {68156#false} is VALID [2018-11-23 12:15:44,847 INFO L134 CoverageAnalysis]: Checked inductivity of 12136 backedges. 5811 proven. 301 refuted. 0 times theorem prover too weak. 6024 trivial. 0 not checked. [2018-11-23 12:15:44,868 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:15:44,868 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [18] total 18 [2018-11-23 12:15:44,869 INFO L78 Accepts]: Start accepts. Automaton has 18 states. Word has length 368 [2018-11-23 12:15:44,869 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:15:44,869 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 18 states. [2018-11-23 12:15:44,954 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 86 edges. 86 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:15:44,954 INFO L459 AbstractCegarLoop]: Interpolant automaton has 18 states [2018-11-23 12:15:44,954 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2018-11-23 12:15:44,955 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=153, Invalid=153, Unknown=0, NotChecked=0, Total=306 [2018-11-23 12:15:44,955 INFO L87 Difference]: Start difference. First operand 185 states and 204 transitions. Second operand 18 states. [2018-11-23 12:15:45,363 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:45,363 INFO L93 Difference]: Finished difference Result 320 states and 362 transitions. [2018-11-23 12:15:45,363 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2018-11-23 12:15:45,363 INFO L78 Accepts]: Start accepts. Automaton has 18 states. Word has length 368 [2018-11-23 12:15:45,364 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:15:45,364 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 18 states. [2018-11-23 12:15:45,365 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 127 transitions. [2018-11-23 12:15:45,365 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 18 states. [2018-11-23 12:15:45,365 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 127 transitions. [2018-11-23 12:15:45,366 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 18 states and 127 transitions. [2018-11-23 12:15:45,479 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 127 edges. 127 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:15:45,483 INFO L225 Difference]: With dead ends: 320 [2018-11-23 12:15:45,483 INFO L226 Difference]: Without dead ends: 190 [2018-11-23 12:15:45,484 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 367 GetRequests, 351 SyntacticMatches, 0 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=153, Invalid=153, Unknown=0, NotChecked=0, Total=306 [2018-11-23 12:15:45,484 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 190 states. [2018-11-23 12:15:45,567 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 190 to 188. [2018-11-23 12:15:45,567 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:15:45,567 INFO L82 GeneralOperation]: Start isEquivalent. First operand 190 states. Second operand 188 states. [2018-11-23 12:15:45,568 INFO L74 IsIncluded]: Start isIncluded. First operand 190 states. Second operand 188 states. [2018-11-23 12:15:45,568 INFO L87 Difference]: Start difference. First operand 190 states. Second operand 188 states. [2018-11-23 12:15:45,572 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:45,572 INFO L93 Difference]: Finished difference Result 190 states and 211 transitions. [2018-11-23 12:15:45,572 INFO L276 IsEmpty]: Start isEmpty. Operand 190 states and 211 transitions. [2018-11-23 12:15:45,572 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:15:45,573 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:15:45,573 INFO L74 IsIncluded]: Start isIncluded. First operand 188 states. Second operand 190 states. [2018-11-23 12:15:45,573 INFO L87 Difference]: Start difference. First operand 188 states. Second operand 190 states. [2018-11-23 12:15:45,575 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:45,575 INFO L93 Difference]: Finished difference Result 190 states and 211 transitions. [2018-11-23 12:15:45,576 INFO L276 IsEmpty]: Start isEmpty. Operand 190 states and 211 transitions. [2018-11-23 12:15:45,576 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:15:45,576 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:15:45,576 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:15:45,576 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:15:45,576 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 188 states. [2018-11-23 12:15:45,579 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 188 states to 188 states and 208 transitions. [2018-11-23 12:15:45,579 INFO L78 Accepts]: Start accepts. Automaton has 188 states and 208 transitions. Word has length 368 [2018-11-23 12:15:45,579 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:15:45,579 INFO L480 AbstractCegarLoop]: Abstraction has 188 states and 208 transitions. [2018-11-23 12:15:45,579 INFO L481 AbstractCegarLoop]: Interpolant automaton has 18 states. [2018-11-23 12:15:45,579 INFO L276 IsEmpty]: Start isEmpty. Operand 188 states and 208 transitions. [2018-11-23 12:15:45,581 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 378 [2018-11-23 12:15:45,581 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:15:45,581 INFO L402 BasicCegarLoop]: trace histogram [90, 90, 45, 45, 21, 21, 14, 14, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:15:45,581 INFO L423 AbstractCegarLoop]: === Iteration 60 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:15:45,581 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:15:45,582 INFO L82 PathProgramCache]: Analyzing trace with hash 273680144, now seen corresponding path program 55 times [2018-11-23 12:15:45,582 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:15:45,582 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:15:45,582 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:15:45,582 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:15:45,582 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:15:45,595 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:15:45,595 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:15:45,595 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 61 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 61 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:15:45,608 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:15:45,733 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:15:45,792 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:15:45,794 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:15:46,892 INFO L256 TraceCheckUtils]: 0: Hoare triple {70368#true} call ULTIMATE.init(); {70368#true} is VALID [2018-11-23 12:15:46,892 INFO L273 TraceCheckUtils]: 1: Hoare triple {70368#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {70368#true} is VALID [2018-11-23 12:15:46,892 INFO L273 TraceCheckUtils]: 2: Hoare triple {70368#true} assume true; {70368#true} is VALID [2018-11-23 12:15:46,893 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {70368#true} {70368#true} #78#return; {70368#true} is VALID [2018-11-23 12:15:46,893 INFO L256 TraceCheckUtils]: 4: Hoare triple {70368#true} call #t~ret12 := main(); {70368#true} is VALID [2018-11-23 12:15:46,893 INFO L273 TraceCheckUtils]: 5: Hoare triple {70368#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {70368#true} is VALID [2018-11-23 12:15:46,893 INFO L256 TraceCheckUtils]: 6: Hoare triple {70368#true} call init_nondet(~#x~0.base, ~#x~0.offset); {70368#true} is VALID [2018-11-23 12:15:46,894 INFO L273 TraceCheckUtils]: 7: Hoare triple {70368#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {70394#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:15:46,894 INFO L273 TraceCheckUtils]: 8: Hoare triple {70394#(<= init_nondet_~i~0 0)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {70394#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:15:46,894 INFO L273 TraceCheckUtils]: 9: Hoare triple {70394#(<= init_nondet_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {70401#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:15:46,895 INFO L273 TraceCheckUtils]: 10: Hoare triple {70401#(<= init_nondet_~i~0 1)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {70401#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:15:46,895 INFO L273 TraceCheckUtils]: 11: Hoare triple {70401#(<= init_nondet_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {70408#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:15:46,895 INFO L273 TraceCheckUtils]: 12: Hoare triple {70408#(<= init_nondet_~i~0 2)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {70408#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:15:46,896 INFO L273 TraceCheckUtils]: 13: Hoare triple {70408#(<= init_nondet_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {70415#(<= init_nondet_~i~0 3)} is VALID [2018-11-23 12:15:46,896 INFO L273 TraceCheckUtils]: 14: Hoare triple {70415#(<= init_nondet_~i~0 3)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {70415#(<= init_nondet_~i~0 3)} is VALID [2018-11-23 12:15:46,897 INFO L273 TraceCheckUtils]: 15: Hoare triple {70415#(<= init_nondet_~i~0 3)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {70422#(<= init_nondet_~i~0 4)} is VALID [2018-11-23 12:15:46,897 INFO L273 TraceCheckUtils]: 16: Hoare triple {70422#(<= init_nondet_~i~0 4)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {70422#(<= init_nondet_~i~0 4)} is VALID [2018-11-23 12:15:46,898 INFO L273 TraceCheckUtils]: 17: Hoare triple {70422#(<= init_nondet_~i~0 4)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {70429#(<= init_nondet_~i~0 5)} is VALID [2018-11-23 12:15:46,899 INFO L273 TraceCheckUtils]: 18: Hoare triple {70429#(<= init_nondet_~i~0 5)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {70429#(<= init_nondet_~i~0 5)} is VALID [2018-11-23 12:15:46,899 INFO L273 TraceCheckUtils]: 19: Hoare triple {70429#(<= init_nondet_~i~0 5)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {70436#(<= init_nondet_~i~0 6)} is VALID [2018-11-23 12:15:46,900 INFO L273 TraceCheckUtils]: 20: Hoare triple {70436#(<= init_nondet_~i~0 6)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {70436#(<= init_nondet_~i~0 6)} is VALID [2018-11-23 12:15:46,901 INFO L273 TraceCheckUtils]: 21: Hoare triple {70436#(<= init_nondet_~i~0 6)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {70443#(<= init_nondet_~i~0 7)} is VALID [2018-11-23 12:15:46,901 INFO L273 TraceCheckUtils]: 22: Hoare triple {70443#(<= init_nondet_~i~0 7)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {70443#(<= init_nondet_~i~0 7)} is VALID [2018-11-23 12:15:46,902 INFO L273 TraceCheckUtils]: 23: Hoare triple {70443#(<= init_nondet_~i~0 7)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {70450#(<= init_nondet_~i~0 8)} is VALID [2018-11-23 12:15:46,902 INFO L273 TraceCheckUtils]: 24: Hoare triple {70450#(<= init_nondet_~i~0 8)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {70450#(<= init_nondet_~i~0 8)} is VALID [2018-11-23 12:15:46,903 INFO L273 TraceCheckUtils]: 25: Hoare triple {70450#(<= init_nondet_~i~0 8)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {70457#(<= init_nondet_~i~0 9)} is VALID [2018-11-23 12:15:46,904 INFO L273 TraceCheckUtils]: 26: Hoare triple {70457#(<= init_nondet_~i~0 9)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {70457#(<= init_nondet_~i~0 9)} is VALID [2018-11-23 12:15:46,904 INFO L273 TraceCheckUtils]: 27: Hoare triple {70457#(<= init_nondet_~i~0 9)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {70464#(<= init_nondet_~i~0 10)} is VALID [2018-11-23 12:15:46,905 INFO L273 TraceCheckUtils]: 28: Hoare triple {70464#(<= init_nondet_~i~0 10)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {70464#(<= init_nondet_~i~0 10)} is VALID [2018-11-23 12:15:46,906 INFO L273 TraceCheckUtils]: 29: Hoare triple {70464#(<= init_nondet_~i~0 10)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {70471#(<= init_nondet_~i~0 11)} is VALID [2018-11-23 12:15:46,906 INFO L273 TraceCheckUtils]: 30: Hoare triple {70471#(<= init_nondet_~i~0 11)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {70471#(<= init_nondet_~i~0 11)} is VALID [2018-11-23 12:15:46,907 INFO L273 TraceCheckUtils]: 31: Hoare triple {70471#(<= init_nondet_~i~0 11)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {70478#(<= init_nondet_~i~0 12)} is VALID [2018-11-23 12:15:46,907 INFO L273 TraceCheckUtils]: 32: Hoare triple {70478#(<= init_nondet_~i~0 12)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {70478#(<= init_nondet_~i~0 12)} is VALID [2018-11-23 12:15:46,908 INFO L273 TraceCheckUtils]: 33: Hoare triple {70478#(<= init_nondet_~i~0 12)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {70485#(<= init_nondet_~i~0 13)} is VALID [2018-11-23 12:15:46,909 INFO L273 TraceCheckUtils]: 34: Hoare triple {70485#(<= init_nondet_~i~0 13)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {70485#(<= init_nondet_~i~0 13)} is VALID [2018-11-23 12:15:46,909 INFO L273 TraceCheckUtils]: 35: Hoare triple {70485#(<= init_nondet_~i~0 13)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {70492#(<= init_nondet_~i~0 14)} is VALID [2018-11-23 12:15:46,910 INFO L273 TraceCheckUtils]: 36: Hoare triple {70492#(<= init_nondet_~i~0 14)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {70492#(<= init_nondet_~i~0 14)} is VALID [2018-11-23 12:15:46,910 INFO L273 TraceCheckUtils]: 37: Hoare triple {70492#(<= init_nondet_~i~0 14)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {70499#(<= init_nondet_~i~0 15)} is VALID [2018-11-23 12:15:46,911 INFO L273 TraceCheckUtils]: 38: Hoare triple {70499#(<= init_nondet_~i~0 15)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {70499#(<= init_nondet_~i~0 15)} is VALID [2018-11-23 12:15:46,912 INFO L273 TraceCheckUtils]: 39: Hoare triple {70499#(<= init_nondet_~i~0 15)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {70506#(<= init_nondet_~i~0 16)} is VALID [2018-11-23 12:15:46,912 INFO L273 TraceCheckUtils]: 40: Hoare triple {70506#(<= init_nondet_~i~0 16)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {70506#(<= init_nondet_~i~0 16)} is VALID [2018-11-23 12:15:46,913 INFO L273 TraceCheckUtils]: 41: Hoare triple {70506#(<= init_nondet_~i~0 16)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {70513#(<= init_nondet_~i~0 17)} is VALID [2018-11-23 12:15:46,913 INFO L273 TraceCheckUtils]: 42: Hoare triple {70513#(<= init_nondet_~i~0 17)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {70513#(<= init_nondet_~i~0 17)} is VALID [2018-11-23 12:15:46,914 INFO L273 TraceCheckUtils]: 43: Hoare triple {70513#(<= init_nondet_~i~0 17)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {70520#(<= init_nondet_~i~0 18)} is VALID [2018-11-23 12:15:46,915 INFO L273 TraceCheckUtils]: 44: Hoare triple {70520#(<= init_nondet_~i~0 18)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {70520#(<= init_nondet_~i~0 18)} is VALID [2018-11-23 12:15:46,915 INFO L273 TraceCheckUtils]: 45: Hoare triple {70520#(<= init_nondet_~i~0 18)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {70527#(<= init_nondet_~i~0 19)} is VALID [2018-11-23 12:15:46,916 INFO L273 TraceCheckUtils]: 46: Hoare triple {70527#(<= init_nondet_~i~0 19)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {70527#(<= init_nondet_~i~0 19)} is VALID [2018-11-23 12:15:46,917 INFO L273 TraceCheckUtils]: 47: Hoare triple {70527#(<= init_nondet_~i~0 19)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {70534#(<= init_nondet_~i~0 20)} is VALID [2018-11-23 12:15:46,917 INFO L273 TraceCheckUtils]: 48: Hoare triple {70534#(<= init_nondet_~i~0 20)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {70534#(<= init_nondet_~i~0 20)} is VALID [2018-11-23 12:15:46,918 INFO L273 TraceCheckUtils]: 49: Hoare triple {70534#(<= init_nondet_~i~0 20)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {70541#(<= init_nondet_~i~0 21)} is VALID [2018-11-23 12:15:46,918 INFO L273 TraceCheckUtils]: 50: Hoare triple {70541#(<= init_nondet_~i~0 21)} assume !(~i~0 < 40); {70369#false} is VALID [2018-11-23 12:15:46,919 INFO L273 TraceCheckUtils]: 51: Hoare triple {70369#false} assume true; {70369#false} is VALID [2018-11-23 12:15:46,919 INFO L268 TraceCheckUtils]: 52: Hoare quadruple {70369#false} {70368#true} #82#return; {70369#false} is VALID [2018-11-23 12:15:46,919 INFO L273 TraceCheckUtils]: 53: Hoare triple {70369#false} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {70369#false} is VALID [2018-11-23 12:15:46,919 INFO L256 TraceCheckUtils]: 54: Hoare triple {70369#false} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {70369#false} is VALID [2018-11-23 12:15:46,919 INFO L273 TraceCheckUtils]: 55: Hoare triple {70369#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {70369#false} is VALID [2018-11-23 12:15:46,919 INFO L273 TraceCheckUtils]: 56: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,920 INFO L273 TraceCheckUtils]: 57: Hoare triple {70369#false} assume !(~i~1 > 20); {70369#false} is VALID [2018-11-23 12:15:46,920 INFO L273 TraceCheckUtils]: 58: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,920 INFO L273 TraceCheckUtils]: 59: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,920 INFO L273 TraceCheckUtils]: 60: Hoare triple {70369#false} assume !(~i~1 > 20); {70369#false} is VALID [2018-11-23 12:15:46,920 INFO L273 TraceCheckUtils]: 61: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,921 INFO L273 TraceCheckUtils]: 62: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,921 INFO L273 TraceCheckUtils]: 63: Hoare triple {70369#false} assume !(~i~1 > 20); {70369#false} is VALID [2018-11-23 12:15:46,921 INFO L273 TraceCheckUtils]: 64: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,921 INFO L273 TraceCheckUtils]: 65: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,921 INFO L273 TraceCheckUtils]: 66: Hoare triple {70369#false} assume !(~i~1 > 20); {70369#false} is VALID [2018-11-23 12:15:46,921 INFO L273 TraceCheckUtils]: 67: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,921 INFO L273 TraceCheckUtils]: 68: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,922 INFO L273 TraceCheckUtils]: 69: Hoare triple {70369#false} assume !(~i~1 > 20); {70369#false} is VALID [2018-11-23 12:15:46,922 INFO L273 TraceCheckUtils]: 70: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,922 INFO L273 TraceCheckUtils]: 71: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,922 INFO L273 TraceCheckUtils]: 72: Hoare triple {70369#false} assume !(~i~1 > 20); {70369#false} is VALID [2018-11-23 12:15:46,922 INFO L273 TraceCheckUtils]: 73: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,922 INFO L273 TraceCheckUtils]: 74: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,922 INFO L273 TraceCheckUtils]: 75: Hoare triple {70369#false} assume !(~i~1 > 20); {70369#false} is VALID [2018-11-23 12:15:46,922 INFO L273 TraceCheckUtils]: 76: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,922 INFO L273 TraceCheckUtils]: 77: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,922 INFO L273 TraceCheckUtils]: 78: Hoare triple {70369#false} assume !(~i~1 > 20); {70369#false} is VALID [2018-11-23 12:15:46,923 INFO L273 TraceCheckUtils]: 79: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,923 INFO L273 TraceCheckUtils]: 80: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,923 INFO L273 TraceCheckUtils]: 81: Hoare triple {70369#false} assume !(~i~1 > 20); {70369#false} is VALID [2018-11-23 12:15:46,923 INFO L273 TraceCheckUtils]: 82: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,923 INFO L273 TraceCheckUtils]: 83: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,923 INFO L273 TraceCheckUtils]: 84: Hoare triple {70369#false} assume !(~i~1 > 20); {70369#false} is VALID [2018-11-23 12:15:46,923 INFO L273 TraceCheckUtils]: 85: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,923 INFO L273 TraceCheckUtils]: 86: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,923 INFO L273 TraceCheckUtils]: 87: Hoare triple {70369#false} assume !(~i~1 > 20); {70369#false} is VALID [2018-11-23 12:15:46,923 INFO L273 TraceCheckUtils]: 88: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,924 INFO L273 TraceCheckUtils]: 89: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,924 INFO L273 TraceCheckUtils]: 90: Hoare triple {70369#false} assume !(~i~1 > 20); {70369#false} is VALID [2018-11-23 12:15:46,924 INFO L273 TraceCheckUtils]: 91: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,924 INFO L273 TraceCheckUtils]: 92: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,924 INFO L273 TraceCheckUtils]: 93: Hoare triple {70369#false} assume !(~i~1 > 20); {70369#false} is VALID [2018-11-23 12:15:46,924 INFO L273 TraceCheckUtils]: 94: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,924 INFO L273 TraceCheckUtils]: 95: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,924 INFO L273 TraceCheckUtils]: 96: Hoare triple {70369#false} assume !(~i~1 > 20); {70369#false} is VALID [2018-11-23 12:15:46,924 INFO L273 TraceCheckUtils]: 97: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,925 INFO L273 TraceCheckUtils]: 98: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,925 INFO L273 TraceCheckUtils]: 99: Hoare triple {70369#false} assume !(~i~1 > 20); {70369#false} is VALID [2018-11-23 12:15:46,925 INFO L273 TraceCheckUtils]: 100: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,925 INFO L273 TraceCheckUtils]: 101: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,925 INFO L273 TraceCheckUtils]: 102: Hoare triple {70369#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {70369#false} is VALID [2018-11-23 12:15:46,925 INFO L273 TraceCheckUtils]: 103: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,925 INFO L273 TraceCheckUtils]: 104: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,925 INFO L273 TraceCheckUtils]: 105: Hoare triple {70369#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {70369#false} is VALID [2018-11-23 12:15:46,925 INFO L273 TraceCheckUtils]: 106: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,925 INFO L273 TraceCheckUtils]: 107: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,926 INFO L273 TraceCheckUtils]: 108: Hoare triple {70369#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {70369#false} is VALID [2018-11-23 12:15:46,926 INFO L273 TraceCheckUtils]: 109: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,926 INFO L273 TraceCheckUtils]: 110: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,926 INFO L273 TraceCheckUtils]: 111: Hoare triple {70369#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {70369#false} is VALID [2018-11-23 12:15:46,926 INFO L273 TraceCheckUtils]: 112: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,926 INFO L273 TraceCheckUtils]: 113: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,926 INFO L273 TraceCheckUtils]: 114: Hoare triple {70369#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {70369#false} is VALID [2018-11-23 12:15:46,926 INFO L273 TraceCheckUtils]: 115: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,926 INFO L273 TraceCheckUtils]: 116: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,926 INFO L273 TraceCheckUtils]: 117: Hoare triple {70369#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {70369#false} is VALID [2018-11-23 12:15:46,927 INFO L273 TraceCheckUtils]: 118: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,927 INFO L273 TraceCheckUtils]: 119: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,927 INFO L273 TraceCheckUtils]: 120: Hoare triple {70369#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {70369#false} is VALID [2018-11-23 12:15:46,927 INFO L273 TraceCheckUtils]: 121: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,927 INFO L273 TraceCheckUtils]: 122: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,927 INFO L273 TraceCheckUtils]: 123: Hoare triple {70369#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {70369#false} is VALID [2018-11-23 12:15:46,927 INFO L273 TraceCheckUtils]: 124: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,927 INFO L273 TraceCheckUtils]: 125: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,927 INFO L273 TraceCheckUtils]: 126: Hoare triple {70369#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {70369#false} is VALID [2018-11-23 12:15:46,927 INFO L273 TraceCheckUtils]: 127: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,928 INFO L273 TraceCheckUtils]: 128: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,928 INFO L273 TraceCheckUtils]: 129: Hoare triple {70369#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {70369#false} is VALID [2018-11-23 12:15:46,928 INFO L273 TraceCheckUtils]: 130: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,928 INFO L273 TraceCheckUtils]: 131: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,928 INFO L273 TraceCheckUtils]: 132: Hoare triple {70369#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {70369#false} is VALID [2018-11-23 12:15:46,928 INFO L273 TraceCheckUtils]: 133: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,928 INFO L273 TraceCheckUtils]: 134: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,928 INFO L273 TraceCheckUtils]: 135: Hoare triple {70369#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {70369#false} is VALID [2018-11-23 12:15:46,928 INFO L273 TraceCheckUtils]: 136: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,928 INFO L273 TraceCheckUtils]: 137: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,929 INFO L273 TraceCheckUtils]: 138: Hoare triple {70369#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {70369#false} is VALID [2018-11-23 12:15:46,929 INFO L273 TraceCheckUtils]: 139: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,929 INFO L273 TraceCheckUtils]: 140: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,929 INFO L273 TraceCheckUtils]: 141: Hoare triple {70369#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {70369#false} is VALID [2018-11-23 12:15:46,929 INFO L273 TraceCheckUtils]: 142: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,929 INFO L273 TraceCheckUtils]: 143: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,929 INFO L273 TraceCheckUtils]: 144: Hoare triple {70369#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {70369#false} is VALID [2018-11-23 12:15:46,929 INFO L273 TraceCheckUtils]: 145: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,929 INFO L273 TraceCheckUtils]: 146: Hoare triple {70369#false} assume !(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,929 INFO L273 TraceCheckUtils]: 147: Hoare triple {70369#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {70369#false} is VALID [2018-11-23 12:15:46,930 INFO L273 TraceCheckUtils]: 148: Hoare triple {70369#false} assume true; {70369#false} is VALID [2018-11-23 12:15:46,930 INFO L268 TraceCheckUtils]: 149: Hoare quadruple {70369#false} {70369#false} #84#return; {70369#false} is VALID [2018-11-23 12:15:46,930 INFO L273 TraceCheckUtils]: 150: Hoare triple {70369#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {70369#false} is VALID [2018-11-23 12:15:46,930 INFO L256 TraceCheckUtils]: 151: Hoare triple {70369#false} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {70369#false} is VALID [2018-11-23 12:15:46,930 INFO L273 TraceCheckUtils]: 152: Hoare triple {70369#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {70369#false} is VALID [2018-11-23 12:15:46,930 INFO L273 TraceCheckUtils]: 153: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,930 INFO L273 TraceCheckUtils]: 154: Hoare triple {70369#false} assume !(~i~1 > 20); {70369#false} is VALID [2018-11-23 12:15:46,930 INFO L273 TraceCheckUtils]: 155: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,930 INFO L273 TraceCheckUtils]: 156: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,931 INFO L273 TraceCheckUtils]: 157: Hoare triple {70369#false} assume !(~i~1 > 20); {70369#false} is VALID [2018-11-23 12:15:46,931 INFO L273 TraceCheckUtils]: 158: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,931 INFO L273 TraceCheckUtils]: 159: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,931 INFO L273 TraceCheckUtils]: 160: Hoare triple {70369#false} assume !(~i~1 > 20); {70369#false} is VALID [2018-11-23 12:15:46,931 INFO L273 TraceCheckUtils]: 161: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,931 INFO L273 TraceCheckUtils]: 162: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,931 INFO L273 TraceCheckUtils]: 163: Hoare triple {70369#false} assume !(~i~1 > 20); {70369#false} is VALID [2018-11-23 12:15:46,931 INFO L273 TraceCheckUtils]: 164: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,931 INFO L273 TraceCheckUtils]: 165: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,931 INFO L273 TraceCheckUtils]: 166: Hoare triple {70369#false} assume !(~i~1 > 20); {70369#false} is VALID [2018-11-23 12:15:46,932 INFO L273 TraceCheckUtils]: 167: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,932 INFO L273 TraceCheckUtils]: 168: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,932 INFO L273 TraceCheckUtils]: 169: Hoare triple {70369#false} assume !(~i~1 > 20); {70369#false} is VALID [2018-11-23 12:15:46,932 INFO L273 TraceCheckUtils]: 170: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,932 INFO L273 TraceCheckUtils]: 171: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,932 INFO L273 TraceCheckUtils]: 172: Hoare triple {70369#false} assume !(~i~1 > 20); {70369#false} is VALID [2018-11-23 12:15:46,932 INFO L273 TraceCheckUtils]: 173: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,932 INFO L273 TraceCheckUtils]: 174: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,932 INFO L273 TraceCheckUtils]: 175: Hoare triple {70369#false} assume !(~i~1 > 20); {70369#false} is VALID [2018-11-23 12:15:46,932 INFO L273 TraceCheckUtils]: 176: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,933 INFO L273 TraceCheckUtils]: 177: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,933 INFO L273 TraceCheckUtils]: 178: Hoare triple {70369#false} assume !(~i~1 > 20); {70369#false} is VALID [2018-11-23 12:15:46,933 INFO L273 TraceCheckUtils]: 179: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,933 INFO L273 TraceCheckUtils]: 180: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,933 INFO L273 TraceCheckUtils]: 181: Hoare triple {70369#false} assume !(~i~1 > 20); {70369#false} is VALID [2018-11-23 12:15:46,933 INFO L273 TraceCheckUtils]: 182: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,933 INFO L273 TraceCheckUtils]: 183: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,933 INFO L273 TraceCheckUtils]: 184: Hoare triple {70369#false} assume !(~i~1 > 20); {70369#false} is VALID [2018-11-23 12:15:46,933 INFO L273 TraceCheckUtils]: 185: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,933 INFO L273 TraceCheckUtils]: 186: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,934 INFO L273 TraceCheckUtils]: 187: Hoare triple {70369#false} assume !(~i~1 > 20); {70369#false} is VALID [2018-11-23 12:15:46,934 INFO L273 TraceCheckUtils]: 188: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,934 INFO L273 TraceCheckUtils]: 189: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,934 INFO L273 TraceCheckUtils]: 190: Hoare triple {70369#false} assume !(~i~1 > 20); {70369#false} is VALID [2018-11-23 12:15:46,934 INFO L273 TraceCheckUtils]: 191: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,934 INFO L273 TraceCheckUtils]: 192: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,934 INFO L273 TraceCheckUtils]: 193: Hoare triple {70369#false} assume !(~i~1 > 20); {70369#false} is VALID [2018-11-23 12:15:46,934 INFO L273 TraceCheckUtils]: 194: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,934 INFO L273 TraceCheckUtils]: 195: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,934 INFO L273 TraceCheckUtils]: 196: Hoare triple {70369#false} assume !(~i~1 > 20); {70369#false} is VALID [2018-11-23 12:15:46,934 INFO L273 TraceCheckUtils]: 197: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,935 INFO L273 TraceCheckUtils]: 198: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,935 INFO L273 TraceCheckUtils]: 199: Hoare triple {70369#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {70369#false} is VALID [2018-11-23 12:15:46,935 INFO L273 TraceCheckUtils]: 200: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,935 INFO L273 TraceCheckUtils]: 201: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,935 INFO L273 TraceCheckUtils]: 202: Hoare triple {70369#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {70369#false} is VALID [2018-11-23 12:15:46,935 INFO L273 TraceCheckUtils]: 203: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,935 INFO L273 TraceCheckUtils]: 204: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,935 INFO L273 TraceCheckUtils]: 205: Hoare triple {70369#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {70369#false} is VALID [2018-11-23 12:15:46,935 INFO L273 TraceCheckUtils]: 206: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,935 INFO L273 TraceCheckUtils]: 207: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,936 INFO L273 TraceCheckUtils]: 208: Hoare triple {70369#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {70369#false} is VALID [2018-11-23 12:15:46,936 INFO L273 TraceCheckUtils]: 209: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,936 INFO L273 TraceCheckUtils]: 210: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,936 INFO L273 TraceCheckUtils]: 211: Hoare triple {70369#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {70369#false} is VALID [2018-11-23 12:15:46,936 INFO L273 TraceCheckUtils]: 212: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,936 INFO L273 TraceCheckUtils]: 213: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,936 INFO L273 TraceCheckUtils]: 214: Hoare triple {70369#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {70369#false} is VALID [2018-11-23 12:15:46,936 INFO L273 TraceCheckUtils]: 215: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,936 INFO L273 TraceCheckUtils]: 216: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,937 INFO L273 TraceCheckUtils]: 217: Hoare triple {70369#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {70369#false} is VALID [2018-11-23 12:15:46,937 INFO L273 TraceCheckUtils]: 218: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,937 INFO L273 TraceCheckUtils]: 219: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,937 INFO L273 TraceCheckUtils]: 220: Hoare triple {70369#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {70369#false} is VALID [2018-11-23 12:15:46,937 INFO L273 TraceCheckUtils]: 221: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,937 INFO L273 TraceCheckUtils]: 222: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,937 INFO L273 TraceCheckUtils]: 223: Hoare triple {70369#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {70369#false} is VALID [2018-11-23 12:15:46,937 INFO L273 TraceCheckUtils]: 224: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,937 INFO L273 TraceCheckUtils]: 225: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,937 INFO L273 TraceCheckUtils]: 226: Hoare triple {70369#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {70369#false} is VALID [2018-11-23 12:15:46,938 INFO L273 TraceCheckUtils]: 227: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,938 INFO L273 TraceCheckUtils]: 228: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,938 INFO L273 TraceCheckUtils]: 229: Hoare triple {70369#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {70369#false} is VALID [2018-11-23 12:15:46,938 INFO L273 TraceCheckUtils]: 230: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,938 INFO L273 TraceCheckUtils]: 231: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,938 INFO L273 TraceCheckUtils]: 232: Hoare triple {70369#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {70369#false} is VALID [2018-11-23 12:15:46,938 INFO L273 TraceCheckUtils]: 233: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,938 INFO L273 TraceCheckUtils]: 234: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,938 INFO L273 TraceCheckUtils]: 235: Hoare triple {70369#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {70369#false} is VALID [2018-11-23 12:15:46,938 INFO L273 TraceCheckUtils]: 236: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,939 INFO L273 TraceCheckUtils]: 237: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,939 INFO L273 TraceCheckUtils]: 238: Hoare triple {70369#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {70369#false} is VALID [2018-11-23 12:15:46,939 INFO L273 TraceCheckUtils]: 239: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,939 INFO L273 TraceCheckUtils]: 240: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,939 INFO L273 TraceCheckUtils]: 241: Hoare triple {70369#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {70369#false} is VALID [2018-11-23 12:15:46,939 INFO L273 TraceCheckUtils]: 242: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,939 INFO L273 TraceCheckUtils]: 243: Hoare triple {70369#false} assume !(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,939 INFO L273 TraceCheckUtils]: 244: Hoare triple {70369#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {70369#false} is VALID [2018-11-23 12:15:46,939 INFO L273 TraceCheckUtils]: 245: Hoare triple {70369#false} assume true; {70369#false} is VALID [2018-11-23 12:15:46,939 INFO L268 TraceCheckUtils]: 246: Hoare quadruple {70369#false} {70369#false} #86#return; {70369#false} is VALID [2018-11-23 12:15:46,940 INFO L273 TraceCheckUtils]: 247: Hoare triple {70369#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {70369#false} is VALID [2018-11-23 12:15:46,940 INFO L273 TraceCheckUtils]: 248: Hoare triple {70369#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {70369#false} is VALID [2018-11-23 12:15:46,940 INFO L273 TraceCheckUtils]: 249: Hoare triple {70369#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {70369#false} is VALID [2018-11-23 12:15:46,940 INFO L273 TraceCheckUtils]: 250: Hoare triple {70369#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {70369#false} is VALID [2018-11-23 12:15:46,940 INFO L273 TraceCheckUtils]: 251: Hoare triple {70369#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {70369#false} is VALID [2018-11-23 12:15:46,940 INFO L273 TraceCheckUtils]: 252: Hoare triple {70369#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {70369#false} is VALID [2018-11-23 12:15:46,940 INFO L273 TraceCheckUtils]: 253: Hoare triple {70369#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {70369#false} is VALID [2018-11-23 12:15:46,940 INFO L273 TraceCheckUtils]: 254: Hoare triple {70369#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {70369#false} is VALID [2018-11-23 12:15:46,940 INFO L273 TraceCheckUtils]: 255: Hoare triple {70369#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {70369#false} is VALID [2018-11-23 12:15:46,940 INFO L273 TraceCheckUtils]: 256: Hoare triple {70369#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {70369#false} is VALID [2018-11-23 12:15:46,941 INFO L273 TraceCheckUtils]: 257: Hoare triple {70369#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {70369#false} is VALID [2018-11-23 12:15:46,941 INFO L273 TraceCheckUtils]: 258: Hoare triple {70369#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {70369#false} is VALID [2018-11-23 12:15:46,941 INFO L273 TraceCheckUtils]: 259: Hoare triple {70369#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {70369#false} is VALID [2018-11-23 12:15:46,941 INFO L273 TraceCheckUtils]: 260: Hoare triple {70369#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {70369#false} is VALID [2018-11-23 12:15:46,941 INFO L273 TraceCheckUtils]: 261: Hoare triple {70369#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {70369#false} is VALID [2018-11-23 12:15:46,941 INFO L273 TraceCheckUtils]: 262: Hoare triple {70369#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {70369#false} is VALID [2018-11-23 12:15:46,941 INFO L273 TraceCheckUtils]: 263: Hoare triple {70369#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {70369#false} is VALID [2018-11-23 12:15:46,941 INFO L273 TraceCheckUtils]: 264: Hoare triple {70369#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {70369#false} is VALID [2018-11-23 12:15:46,941 INFO L273 TraceCheckUtils]: 265: Hoare triple {70369#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {70369#false} is VALID [2018-11-23 12:15:46,941 INFO L273 TraceCheckUtils]: 266: Hoare triple {70369#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {70369#false} is VALID [2018-11-23 12:15:46,942 INFO L273 TraceCheckUtils]: 267: Hoare triple {70369#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {70369#false} is VALID [2018-11-23 12:15:46,942 INFO L273 TraceCheckUtils]: 268: Hoare triple {70369#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {70369#false} is VALID [2018-11-23 12:15:46,942 INFO L273 TraceCheckUtils]: 269: Hoare triple {70369#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {70369#false} is VALID [2018-11-23 12:15:46,942 INFO L273 TraceCheckUtils]: 270: Hoare triple {70369#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {70369#false} is VALID [2018-11-23 12:15:46,942 INFO L273 TraceCheckUtils]: 271: Hoare triple {70369#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {70369#false} is VALID [2018-11-23 12:15:46,942 INFO L273 TraceCheckUtils]: 272: Hoare triple {70369#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {70369#false} is VALID [2018-11-23 12:15:46,942 INFO L273 TraceCheckUtils]: 273: Hoare triple {70369#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {70369#false} is VALID [2018-11-23 12:15:46,942 INFO L273 TraceCheckUtils]: 274: Hoare triple {70369#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {70369#false} is VALID [2018-11-23 12:15:46,942 INFO L273 TraceCheckUtils]: 275: Hoare triple {70369#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {70369#false} is VALID [2018-11-23 12:15:46,942 INFO L273 TraceCheckUtils]: 276: Hoare triple {70369#false} assume !(~i~2 < 39); {70369#false} is VALID [2018-11-23 12:15:46,943 INFO L273 TraceCheckUtils]: 277: Hoare triple {70369#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {70369#false} is VALID [2018-11-23 12:15:46,943 INFO L256 TraceCheckUtils]: 278: Hoare triple {70369#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {70369#false} is VALID [2018-11-23 12:15:46,943 INFO L273 TraceCheckUtils]: 279: Hoare triple {70369#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {70369#false} is VALID [2018-11-23 12:15:46,943 INFO L273 TraceCheckUtils]: 280: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,943 INFO L273 TraceCheckUtils]: 281: Hoare triple {70369#false} assume !(~i~1 > 20); {70369#false} is VALID [2018-11-23 12:15:46,943 INFO L273 TraceCheckUtils]: 282: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,943 INFO L273 TraceCheckUtils]: 283: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,943 INFO L273 TraceCheckUtils]: 284: Hoare triple {70369#false} assume !(~i~1 > 20); {70369#false} is VALID [2018-11-23 12:15:46,943 INFO L273 TraceCheckUtils]: 285: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,943 INFO L273 TraceCheckUtils]: 286: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,944 INFO L273 TraceCheckUtils]: 287: Hoare triple {70369#false} assume !(~i~1 > 20); {70369#false} is VALID [2018-11-23 12:15:46,944 INFO L273 TraceCheckUtils]: 288: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,944 INFO L273 TraceCheckUtils]: 289: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,944 INFO L273 TraceCheckUtils]: 290: Hoare triple {70369#false} assume !(~i~1 > 20); {70369#false} is VALID [2018-11-23 12:15:46,944 INFO L273 TraceCheckUtils]: 291: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,944 INFO L273 TraceCheckUtils]: 292: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,944 INFO L273 TraceCheckUtils]: 293: Hoare triple {70369#false} assume !(~i~1 > 20); {70369#false} is VALID [2018-11-23 12:15:46,944 INFO L273 TraceCheckUtils]: 294: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,944 INFO L273 TraceCheckUtils]: 295: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,944 INFO L273 TraceCheckUtils]: 296: Hoare triple {70369#false} assume !(~i~1 > 20); {70369#false} is VALID [2018-11-23 12:15:46,945 INFO L273 TraceCheckUtils]: 297: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,945 INFO L273 TraceCheckUtils]: 298: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,945 INFO L273 TraceCheckUtils]: 299: Hoare triple {70369#false} assume !(~i~1 > 20); {70369#false} is VALID [2018-11-23 12:15:46,945 INFO L273 TraceCheckUtils]: 300: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,945 INFO L273 TraceCheckUtils]: 301: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,945 INFO L273 TraceCheckUtils]: 302: Hoare triple {70369#false} assume !(~i~1 > 20); {70369#false} is VALID [2018-11-23 12:15:46,945 INFO L273 TraceCheckUtils]: 303: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,945 INFO L273 TraceCheckUtils]: 304: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,945 INFO L273 TraceCheckUtils]: 305: Hoare triple {70369#false} assume !(~i~1 > 20); {70369#false} is VALID [2018-11-23 12:15:46,945 INFO L273 TraceCheckUtils]: 306: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,945 INFO L273 TraceCheckUtils]: 307: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,946 INFO L273 TraceCheckUtils]: 308: Hoare triple {70369#false} assume !(~i~1 > 20); {70369#false} is VALID [2018-11-23 12:15:46,946 INFO L273 TraceCheckUtils]: 309: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,946 INFO L273 TraceCheckUtils]: 310: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,946 INFO L273 TraceCheckUtils]: 311: Hoare triple {70369#false} assume !(~i~1 > 20); {70369#false} is VALID [2018-11-23 12:15:46,946 INFO L273 TraceCheckUtils]: 312: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,946 INFO L273 TraceCheckUtils]: 313: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,946 INFO L273 TraceCheckUtils]: 314: Hoare triple {70369#false} assume !(~i~1 > 20); {70369#false} is VALID [2018-11-23 12:15:46,946 INFO L273 TraceCheckUtils]: 315: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,946 INFO L273 TraceCheckUtils]: 316: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,946 INFO L273 TraceCheckUtils]: 317: Hoare triple {70369#false} assume !(~i~1 > 20); {70369#false} is VALID [2018-11-23 12:15:46,947 INFO L273 TraceCheckUtils]: 318: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,947 INFO L273 TraceCheckUtils]: 319: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,947 INFO L273 TraceCheckUtils]: 320: Hoare triple {70369#false} assume !(~i~1 > 20); {70369#false} is VALID [2018-11-23 12:15:46,947 INFO L273 TraceCheckUtils]: 321: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,947 INFO L273 TraceCheckUtils]: 322: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,947 INFO L273 TraceCheckUtils]: 323: Hoare triple {70369#false} assume !(~i~1 > 20); {70369#false} is VALID [2018-11-23 12:15:46,947 INFO L273 TraceCheckUtils]: 324: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,947 INFO L273 TraceCheckUtils]: 325: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,947 INFO L273 TraceCheckUtils]: 326: Hoare triple {70369#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {70369#false} is VALID [2018-11-23 12:15:46,947 INFO L273 TraceCheckUtils]: 327: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,948 INFO L273 TraceCheckUtils]: 328: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,948 INFO L273 TraceCheckUtils]: 329: Hoare triple {70369#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {70369#false} is VALID [2018-11-23 12:15:46,948 INFO L273 TraceCheckUtils]: 330: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,948 INFO L273 TraceCheckUtils]: 331: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,948 INFO L273 TraceCheckUtils]: 332: Hoare triple {70369#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {70369#false} is VALID [2018-11-23 12:15:46,948 INFO L273 TraceCheckUtils]: 333: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,948 INFO L273 TraceCheckUtils]: 334: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,948 INFO L273 TraceCheckUtils]: 335: Hoare triple {70369#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {70369#false} is VALID [2018-11-23 12:15:46,948 INFO L273 TraceCheckUtils]: 336: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,949 INFO L273 TraceCheckUtils]: 337: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,949 INFO L273 TraceCheckUtils]: 338: Hoare triple {70369#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {70369#false} is VALID [2018-11-23 12:15:46,949 INFO L273 TraceCheckUtils]: 339: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,949 INFO L273 TraceCheckUtils]: 340: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,949 INFO L273 TraceCheckUtils]: 341: Hoare triple {70369#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {70369#false} is VALID [2018-11-23 12:15:46,949 INFO L273 TraceCheckUtils]: 342: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,949 INFO L273 TraceCheckUtils]: 343: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,949 INFO L273 TraceCheckUtils]: 344: Hoare triple {70369#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {70369#false} is VALID [2018-11-23 12:15:46,949 INFO L273 TraceCheckUtils]: 345: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,949 INFO L273 TraceCheckUtils]: 346: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,950 INFO L273 TraceCheckUtils]: 347: Hoare triple {70369#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {70369#false} is VALID [2018-11-23 12:15:46,950 INFO L273 TraceCheckUtils]: 348: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,950 INFO L273 TraceCheckUtils]: 349: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,950 INFO L273 TraceCheckUtils]: 350: Hoare triple {70369#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {70369#false} is VALID [2018-11-23 12:15:46,950 INFO L273 TraceCheckUtils]: 351: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,950 INFO L273 TraceCheckUtils]: 352: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,950 INFO L273 TraceCheckUtils]: 353: Hoare triple {70369#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {70369#false} is VALID [2018-11-23 12:15:46,950 INFO L273 TraceCheckUtils]: 354: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,950 INFO L273 TraceCheckUtils]: 355: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,950 INFO L273 TraceCheckUtils]: 356: Hoare triple {70369#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {70369#false} is VALID [2018-11-23 12:15:46,951 INFO L273 TraceCheckUtils]: 357: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,951 INFO L273 TraceCheckUtils]: 358: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,951 INFO L273 TraceCheckUtils]: 359: Hoare triple {70369#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {70369#false} is VALID [2018-11-23 12:15:46,951 INFO L273 TraceCheckUtils]: 360: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,951 INFO L273 TraceCheckUtils]: 361: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,951 INFO L273 TraceCheckUtils]: 362: Hoare triple {70369#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {70369#false} is VALID [2018-11-23 12:15:46,951 INFO L273 TraceCheckUtils]: 363: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,951 INFO L273 TraceCheckUtils]: 364: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,951 INFO L273 TraceCheckUtils]: 365: Hoare triple {70369#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {70369#false} is VALID [2018-11-23 12:15:46,951 INFO L273 TraceCheckUtils]: 366: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,952 INFO L273 TraceCheckUtils]: 367: Hoare triple {70369#false} assume !!(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,952 INFO L273 TraceCheckUtils]: 368: Hoare triple {70369#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {70369#false} is VALID [2018-11-23 12:15:46,952 INFO L273 TraceCheckUtils]: 369: Hoare triple {70369#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {70369#false} is VALID [2018-11-23 12:15:46,952 INFO L273 TraceCheckUtils]: 370: Hoare triple {70369#false} assume !(~i~1 < 40); {70369#false} is VALID [2018-11-23 12:15:46,952 INFO L273 TraceCheckUtils]: 371: Hoare triple {70369#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {70369#false} is VALID [2018-11-23 12:15:46,952 INFO L273 TraceCheckUtils]: 372: Hoare triple {70369#false} assume true; {70369#false} is VALID [2018-11-23 12:15:46,952 INFO L268 TraceCheckUtils]: 373: Hoare quadruple {70369#false} {70369#false} #88#return; {70369#false} is VALID [2018-11-23 12:15:46,952 INFO L273 TraceCheckUtils]: 374: Hoare triple {70369#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {70369#false} is VALID [2018-11-23 12:15:46,952 INFO L273 TraceCheckUtils]: 375: Hoare triple {70369#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {70369#false} is VALID [2018-11-23 12:15:46,952 INFO L273 TraceCheckUtils]: 376: Hoare triple {70369#false} assume !false; {70369#false} is VALID [2018-11-23 12:15:47,002 INFO L134 CoverageAnalysis]: Checked inductivity of 12937 backedges. 0 proven. 441 refuted. 0 times theorem prover too weak. 12496 trivial. 0 not checked. [2018-11-23 12:15:47,021 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:15:47,022 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [24] total 24 [2018-11-23 12:15:47,022 INFO L78 Accepts]: Start accepts. Automaton has 24 states. Word has length 377 [2018-11-23 12:15:47,022 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:15:47,022 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 24 states. [2018-11-23 12:15:47,108 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 77 edges. 77 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:15:47,109 INFO L459 AbstractCegarLoop]: Interpolant automaton has 24 states [2018-11-23 12:15:47,109 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 24 interpolants. [2018-11-23 12:15:47,109 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=276, Invalid=276, Unknown=0, NotChecked=0, Total=552 [2018-11-23 12:15:47,109 INFO L87 Difference]: Start difference. First operand 188 states and 208 transitions. Second operand 24 states. [2018-11-23 12:15:47,712 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:47,712 INFO L93 Difference]: Finished difference Result 328 states and 368 transitions. [2018-11-23 12:15:47,712 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 24 states. [2018-11-23 12:15:47,712 INFO L78 Accepts]: Start accepts. Automaton has 24 states. Word has length 377 [2018-11-23 12:15:47,712 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:15:47,713 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 24 states. [2018-11-23 12:15:47,713 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 110 transitions. [2018-11-23 12:15:47,713 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 24 states. [2018-11-23 12:15:47,714 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 110 transitions. [2018-11-23 12:15:47,714 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 24 states and 110 transitions. [2018-11-23 12:15:47,813 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 110 edges. 110 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:15:47,817 INFO L225 Difference]: With dead ends: 328 [2018-11-23 12:15:47,817 INFO L226 Difference]: Without dead ends: 191 [2018-11-23 12:15:47,818 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 376 GetRequests, 354 SyntacticMatches, 0 SemanticMatches, 22 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=276, Invalid=276, Unknown=0, NotChecked=0, Total=552 [2018-11-23 12:15:47,818 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 191 states. [2018-11-23 12:15:47,919 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 191 to 190. [2018-11-23 12:15:47,919 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:15:47,919 INFO L82 GeneralOperation]: Start isEquivalent. First operand 191 states. Second operand 190 states. [2018-11-23 12:15:47,919 INFO L74 IsIncluded]: Start isIncluded. First operand 191 states. Second operand 190 states. [2018-11-23 12:15:47,920 INFO L87 Difference]: Start difference. First operand 191 states. Second operand 190 states. [2018-11-23 12:15:47,923 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:47,923 INFO L93 Difference]: Finished difference Result 191 states and 211 transitions. [2018-11-23 12:15:47,923 INFO L276 IsEmpty]: Start isEmpty. Operand 191 states and 211 transitions. [2018-11-23 12:15:47,923 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:15:47,923 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:15:47,924 INFO L74 IsIncluded]: Start isIncluded. First operand 190 states. Second operand 191 states. [2018-11-23 12:15:47,924 INFO L87 Difference]: Start difference. First operand 190 states. Second operand 191 states. [2018-11-23 12:15:47,926 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:47,926 INFO L93 Difference]: Finished difference Result 191 states and 211 transitions. [2018-11-23 12:15:47,927 INFO L276 IsEmpty]: Start isEmpty. Operand 191 states and 211 transitions. [2018-11-23 12:15:47,927 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:15:47,927 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:15:47,927 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:15:47,927 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:15:47,927 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 190 states. [2018-11-23 12:15:47,930 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 190 states to 190 states and 210 transitions. [2018-11-23 12:15:47,930 INFO L78 Accepts]: Start accepts. Automaton has 190 states and 210 transitions. Word has length 377 [2018-11-23 12:15:47,930 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:15:47,930 INFO L480 AbstractCegarLoop]: Abstraction has 190 states and 210 transitions. [2018-11-23 12:15:47,930 INFO L481 AbstractCegarLoop]: Interpolant automaton has 24 states. [2018-11-23 12:15:47,930 INFO L276 IsEmpty]: Start isEmpty. Operand 190 states and 210 transitions. [2018-11-23 12:15:47,932 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 380 [2018-11-23 12:15:47,932 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:15:47,932 INFO L402 BasicCegarLoop]: trace histogram [90, 90, 45, 45, 22, 22, 14, 14, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:15:47,932 INFO L423 AbstractCegarLoop]: === Iteration 61 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:15:47,933 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:15:47,933 INFO L82 PathProgramCache]: Analyzing trace with hash 1475480462, now seen corresponding path program 56 times [2018-11-23 12:15:47,933 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:15:47,933 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:15:47,934 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:15:47,934 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:15:47,934 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:15:47,946 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:15:47,946 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:15:47,946 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 62 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 62 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:15:47,963 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-23 12:15:48,094 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-23 12:15:48,094 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:15:48,151 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:15:48,154 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:15:48,733 INFO L256 TraceCheckUtils]: 0: Hoare triple {72630#true} call ULTIMATE.init(); {72630#true} is VALID [2018-11-23 12:15:48,733 INFO L273 TraceCheckUtils]: 1: Hoare triple {72630#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {72630#true} is VALID [2018-11-23 12:15:48,733 INFO L273 TraceCheckUtils]: 2: Hoare triple {72630#true} assume true; {72630#true} is VALID [2018-11-23 12:15:48,734 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {72630#true} {72630#true} #78#return; {72630#true} is VALID [2018-11-23 12:15:48,734 INFO L256 TraceCheckUtils]: 4: Hoare triple {72630#true} call #t~ret12 := main(); {72630#true} is VALID [2018-11-23 12:15:48,734 INFO L273 TraceCheckUtils]: 5: Hoare triple {72630#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {72630#true} is VALID [2018-11-23 12:15:48,734 INFO L256 TraceCheckUtils]: 6: Hoare triple {72630#true} call init_nondet(~#x~0.base, ~#x~0.offset); {72630#true} is VALID [2018-11-23 12:15:48,735 INFO L273 TraceCheckUtils]: 7: Hoare triple {72630#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {72656#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:15:48,735 INFO L273 TraceCheckUtils]: 8: Hoare triple {72656#(<= init_nondet_~i~0 0)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {72656#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:15:48,736 INFO L273 TraceCheckUtils]: 9: Hoare triple {72656#(<= init_nondet_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {72663#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:15:48,736 INFO L273 TraceCheckUtils]: 10: Hoare triple {72663#(<= init_nondet_~i~0 1)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {72663#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:15:48,737 INFO L273 TraceCheckUtils]: 11: Hoare triple {72663#(<= init_nondet_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {72670#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:15:48,737 INFO L273 TraceCheckUtils]: 12: Hoare triple {72670#(<= init_nondet_~i~0 2)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {72670#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:15:48,737 INFO L273 TraceCheckUtils]: 13: Hoare triple {72670#(<= init_nondet_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {72677#(<= init_nondet_~i~0 3)} is VALID [2018-11-23 12:15:48,738 INFO L273 TraceCheckUtils]: 14: Hoare triple {72677#(<= init_nondet_~i~0 3)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {72677#(<= init_nondet_~i~0 3)} is VALID [2018-11-23 12:15:48,738 INFO L273 TraceCheckUtils]: 15: Hoare triple {72677#(<= init_nondet_~i~0 3)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {72684#(<= init_nondet_~i~0 4)} is VALID [2018-11-23 12:15:48,739 INFO L273 TraceCheckUtils]: 16: Hoare triple {72684#(<= init_nondet_~i~0 4)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {72684#(<= init_nondet_~i~0 4)} is VALID [2018-11-23 12:15:48,740 INFO L273 TraceCheckUtils]: 17: Hoare triple {72684#(<= init_nondet_~i~0 4)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {72691#(<= init_nondet_~i~0 5)} is VALID [2018-11-23 12:15:48,740 INFO L273 TraceCheckUtils]: 18: Hoare triple {72691#(<= init_nondet_~i~0 5)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {72691#(<= init_nondet_~i~0 5)} is VALID [2018-11-23 12:15:48,741 INFO L273 TraceCheckUtils]: 19: Hoare triple {72691#(<= init_nondet_~i~0 5)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {72698#(<= init_nondet_~i~0 6)} is VALID [2018-11-23 12:15:48,741 INFO L273 TraceCheckUtils]: 20: Hoare triple {72698#(<= init_nondet_~i~0 6)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {72698#(<= init_nondet_~i~0 6)} is VALID [2018-11-23 12:15:48,742 INFO L273 TraceCheckUtils]: 21: Hoare triple {72698#(<= init_nondet_~i~0 6)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {72705#(<= init_nondet_~i~0 7)} is VALID [2018-11-23 12:15:48,743 INFO L273 TraceCheckUtils]: 22: Hoare triple {72705#(<= init_nondet_~i~0 7)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {72705#(<= init_nondet_~i~0 7)} is VALID [2018-11-23 12:15:48,743 INFO L273 TraceCheckUtils]: 23: Hoare triple {72705#(<= init_nondet_~i~0 7)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {72712#(<= init_nondet_~i~0 8)} is VALID [2018-11-23 12:15:48,744 INFO L273 TraceCheckUtils]: 24: Hoare triple {72712#(<= init_nondet_~i~0 8)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {72712#(<= init_nondet_~i~0 8)} is VALID [2018-11-23 12:15:48,744 INFO L273 TraceCheckUtils]: 25: Hoare triple {72712#(<= init_nondet_~i~0 8)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {72719#(<= init_nondet_~i~0 9)} is VALID [2018-11-23 12:15:48,745 INFO L273 TraceCheckUtils]: 26: Hoare triple {72719#(<= init_nondet_~i~0 9)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {72719#(<= init_nondet_~i~0 9)} is VALID [2018-11-23 12:15:48,746 INFO L273 TraceCheckUtils]: 27: Hoare triple {72719#(<= init_nondet_~i~0 9)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {72726#(<= init_nondet_~i~0 10)} is VALID [2018-11-23 12:15:48,746 INFO L273 TraceCheckUtils]: 28: Hoare triple {72726#(<= init_nondet_~i~0 10)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {72726#(<= init_nondet_~i~0 10)} is VALID [2018-11-23 12:15:48,747 INFO L273 TraceCheckUtils]: 29: Hoare triple {72726#(<= init_nondet_~i~0 10)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {72733#(<= init_nondet_~i~0 11)} is VALID [2018-11-23 12:15:48,747 INFO L273 TraceCheckUtils]: 30: Hoare triple {72733#(<= init_nondet_~i~0 11)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {72733#(<= init_nondet_~i~0 11)} is VALID [2018-11-23 12:15:48,748 INFO L273 TraceCheckUtils]: 31: Hoare triple {72733#(<= init_nondet_~i~0 11)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {72740#(<= init_nondet_~i~0 12)} is VALID [2018-11-23 12:15:48,748 INFO L273 TraceCheckUtils]: 32: Hoare triple {72740#(<= init_nondet_~i~0 12)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {72740#(<= init_nondet_~i~0 12)} is VALID [2018-11-23 12:15:48,749 INFO L273 TraceCheckUtils]: 33: Hoare triple {72740#(<= init_nondet_~i~0 12)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {72747#(<= init_nondet_~i~0 13)} is VALID [2018-11-23 12:15:48,750 INFO L273 TraceCheckUtils]: 34: Hoare triple {72747#(<= init_nondet_~i~0 13)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {72747#(<= init_nondet_~i~0 13)} is VALID [2018-11-23 12:15:48,750 INFO L273 TraceCheckUtils]: 35: Hoare triple {72747#(<= init_nondet_~i~0 13)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {72754#(<= init_nondet_~i~0 14)} is VALID [2018-11-23 12:15:48,751 INFO L273 TraceCheckUtils]: 36: Hoare triple {72754#(<= init_nondet_~i~0 14)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {72754#(<= init_nondet_~i~0 14)} is VALID [2018-11-23 12:15:48,751 INFO L273 TraceCheckUtils]: 37: Hoare triple {72754#(<= init_nondet_~i~0 14)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {72761#(<= init_nondet_~i~0 15)} is VALID [2018-11-23 12:15:48,752 INFO L273 TraceCheckUtils]: 38: Hoare triple {72761#(<= init_nondet_~i~0 15)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {72761#(<= init_nondet_~i~0 15)} is VALID [2018-11-23 12:15:48,753 INFO L273 TraceCheckUtils]: 39: Hoare triple {72761#(<= init_nondet_~i~0 15)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {72768#(<= init_nondet_~i~0 16)} is VALID [2018-11-23 12:15:48,753 INFO L273 TraceCheckUtils]: 40: Hoare triple {72768#(<= init_nondet_~i~0 16)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {72768#(<= init_nondet_~i~0 16)} is VALID [2018-11-23 12:15:48,754 INFO L273 TraceCheckUtils]: 41: Hoare triple {72768#(<= init_nondet_~i~0 16)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {72775#(<= init_nondet_~i~0 17)} is VALID [2018-11-23 12:15:48,754 INFO L273 TraceCheckUtils]: 42: Hoare triple {72775#(<= init_nondet_~i~0 17)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {72775#(<= init_nondet_~i~0 17)} is VALID [2018-11-23 12:15:48,755 INFO L273 TraceCheckUtils]: 43: Hoare triple {72775#(<= init_nondet_~i~0 17)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {72782#(<= init_nondet_~i~0 18)} is VALID [2018-11-23 12:15:48,755 INFO L273 TraceCheckUtils]: 44: Hoare triple {72782#(<= init_nondet_~i~0 18)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {72782#(<= init_nondet_~i~0 18)} is VALID [2018-11-23 12:15:48,756 INFO L273 TraceCheckUtils]: 45: Hoare triple {72782#(<= init_nondet_~i~0 18)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {72789#(<= init_nondet_~i~0 19)} is VALID [2018-11-23 12:15:48,757 INFO L273 TraceCheckUtils]: 46: Hoare triple {72789#(<= init_nondet_~i~0 19)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {72789#(<= init_nondet_~i~0 19)} is VALID [2018-11-23 12:15:48,757 INFO L273 TraceCheckUtils]: 47: Hoare triple {72789#(<= init_nondet_~i~0 19)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {72796#(<= init_nondet_~i~0 20)} is VALID [2018-11-23 12:15:48,758 INFO L273 TraceCheckUtils]: 48: Hoare triple {72796#(<= init_nondet_~i~0 20)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {72796#(<= init_nondet_~i~0 20)} is VALID [2018-11-23 12:15:48,758 INFO L273 TraceCheckUtils]: 49: Hoare triple {72796#(<= init_nondet_~i~0 20)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {72803#(<= init_nondet_~i~0 21)} is VALID [2018-11-23 12:15:48,759 INFO L273 TraceCheckUtils]: 50: Hoare triple {72803#(<= init_nondet_~i~0 21)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {72803#(<= init_nondet_~i~0 21)} is VALID [2018-11-23 12:15:48,760 INFO L273 TraceCheckUtils]: 51: Hoare triple {72803#(<= init_nondet_~i~0 21)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {72810#(<= init_nondet_~i~0 22)} is VALID [2018-11-23 12:15:48,760 INFO L273 TraceCheckUtils]: 52: Hoare triple {72810#(<= init_nondet_~i~0 22)} assume !(~i~0 < 40); {72631#false} is VALID [2018-11-23 12:15:48,760 INFO L273 TraceCheckUtils]: 53: Hoare triple {72631#false} assume true; {72631#false} is VALID [2018-11-23 12:15:48,761 INFO L268 TraceCheckUtils]: 54: Hoare quadruple {72631#false} {72630#true} #82#return; {72631#false} is VALID [2018-11-23 12:15:48,761 INFO L273 TraceCheckUtils]: 55: Hoare triple {72631#false} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {72631#false} is VALID [2018-11-23 12:15:48,761 INFO L256 TraceCheckUtils]: 56: Hoare triple {72631#false} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {72631#false} is VALID [2018-11-23 12:15:48,761 INFO L273 TraceCheckUtils]: 57: Hoare triple {72631#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {72631#false} is VALID [2018-11-23 12:15:48,761 INFO L273 TraceCheckUtils]: 58: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,762 INFO L273 TraceCheckUtils]: 59: Hoare triple {72631#false} assume !(~i~1 > 20); {72631#false} is VALID [2018-11-23 12:15:48,762 INFO L273 TraceCheckUtils]: 60: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,762 INFO L273 TraceCheckUtils]: 61: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,762 INFO L273 TraceCheckUtils]: 62: Hoare triple {72631#false} assume !(~i~1 > 20); {72631#false} is VALID [2018-11-23 12:15:48,762 INFO L273 TraceCheckUtils]: 63: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,762 INFO L273 TraceCheckUtils]: 64: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,763 INFO L273 TraceCheckUtils]: 65: Hoare triple {72631#false} assume !(~i~1 > 20); {72631#false} is VALID [2018-11-23 12:15:48,763 INFO L273 TraceCheckUtils]: 66: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,763 INFO L273 TraceCheckUtils]: 67: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,763 INFO L273 TraceCheckUtils]: 68: Hoare triple {72631#false} assume !(~i~1 > 20); {72631#false} is VALID [2018-11-23 12:15:48,763 INFO L273 TraceCheckUtils]: 69: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,763 INFO L273 TraceCheckUtils]: 70: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,764 INFO L273 TraceCheckUtils]: 71: Hoare triple {72631#false} assume !(~i~1 > 20); {72631#false} is VALID [2018-11-23 12:15:48,764 INFO L273 TraceCheckUtils]: 72: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,764 INFO L273 TraceCheckUtils]: 73: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,764 INFO L273 TraceCheckUtils]: 74: Hoare triple {72631#false} assume !(~i~1 > 20); {72631#false} is VALID [2018-11-23 12:15:48,764 INFO L273 TraceCheckUtils]: 75: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,764 INFO L273 TraceCheckUtils]: 76: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,765 INFO L273 TraceCheckUtils]: 77: Hoare triple {72631#false} assume !(~i~1 > 20); {72631#false} is VALID [2018-11-23 12:15:48,765 INFO L273 TraceCheckUtils]: 78: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,765 INFO L273 TraceCheckUtils]: 79: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,765 INFO L273 TraceCheckUtils]: 80: Hoare triple {72631#false} assume !(~i~1 > 20); {72631#false} is VALID [2018-11-23 12:15:48,765 INFO L273 TraceCheckUtils]: 81: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,765 INFO L273 TraceCheckUtils]: 82: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,766 INFO L273 TraceCheckUtils]: 83: Hoare triple {72631#false} assume !(~i~1 > 20); {72631#false} is VALID [2018-11-23 12:15:48,766 INFO L273 TraceCheckUtils]: 84: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,766 INFO L273 TraceCheckUtils]: 85: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,766 INFO L273 TraceCheckUtils]: 86: Hoare triple {72631#false} assume !(~i~1 > 20); {72631#false} is VALID [2018-11-23 12:15:48,766 INFO L273 TraceCheckUtils]: 87: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,766 INFO L273 TraceCheckUtils]: 88: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,766 INFO L273 TraceCheckUtils]: 89: Hoare triple {72631#false} assume !(~i~1 > 20); {72631#false} is VALID [2018-11-23 12:15:48,766 INFO L273 TraceCheckUtils]: 90: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,766 INFO L273 TraceCheckUtils]: 91: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,767 INFO L273 TraceCheckUtils]: 92: Hoare triple {72631#false} assume !(~i~1 > 20); {72631#false} is VALID [2018-11-23 12:15:48,767 INFO L273 TraceCheckUtils]: 93: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,767 INFO L273 TraceCheckUtils]: 94: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,767 INFO L273 TraceCheckUtils]: 95: Hoare triple {72631#false} assume !(~i~1 > 20); {72631#false} is VALID [2018-11-23 12:15:48,767 INFO L273 TraceCheckUtils]: 96: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,767 INFO L273 TraceCheckUtils]: 97: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,767 INFO L273 TraceCheckUtils]: 98: Hoare triple {72631#false} assume !(~i~1 > 20); {72631#false} is VALID [2018-11-23 12:15:48,767 INFO L273 TraceCheckUtils]: 99: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,767 INFO L273 TraceCheckUtils]: 100: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,767 INFO L273 TraceCheckUtils]: 101: Hoare triple {72631#false} assume !(~i~1 > 20); {72631#false} is VALID [2018-11-23 12:15:48,768 INFO L273 TraceCheckUtils]: 102: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,768 INFO L273 TraceCheckUtils]: 103: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,768 INFO L273 TraceCheckUtils]: 104: Hoare triple {72631#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {72631#false} is VALID [2018-11-23 12:15:48,768 INFO L273 TraceCheckUtils]: 105: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,768 INFO L273 TraceCheckUtils]: 106: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,768 INFO L273 TraceCheckUtils]: 107: Hoare triple {72631#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {72631#false} is VALID [2018-11-23 12:15:48,768 INFO L273 TraceCheckUtils]: 108: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,768 INFO L273 TraceCheckUtils]: 109: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,768 INFO L273 TraceCheckUtils]: 110: Hoare triple {72631#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {72631#false} is VALID [2018-11-23 12:15:48,768 INFO L273 TraceCheckUtils]: 111: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,769 INFO L273 TraceCheckUtils]: 112: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,769 INFO L273 TraceCheckUtils]: 113: Hoare triple {72631#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {72631#false} is VALID [2018-11-23 12:15:48,769 INFO L273 TraceCheckUtils]: 114: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,769 INFO L273 TraceCheckUtils]: 115: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,769 INFO L273 TraceCheckUtils]: 116: Hoare triple {72631#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {72631#false} is VALID [2018-11-23 12:15:48,769 INFO L273 TraceCheckUtils]: 117: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,769 INFO L273 TraceCheckUtils]: 118: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,769 INFO L273 TraceCheckUtils]: 119: Hoare triple {72631#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {72631#false} is VALID [2018-11-23 12:15:48,769 INFO L273 TraceCheckUtils]: 120: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,769 INFO L273 TraceCheckUtils]: 121: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,770 INFO L273 TraceCheckUtils]: 122: Hoare triple {72631#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {72631#false} is VALID [2018-11-23 12:15:48,770 INFO L273 TraceCheckUtils]: 123: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,770 INFO L273 TraceCheckUtils]: 124: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,770 INFO L273 TraceCheckUtils]: 125: Hoare triple {72631#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {72631#false} is VALID [2018-11-23 12:15:48,770 INFO L273 TraceCheckUtils]: 126: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,770 INFO L273 TraceCheckUtils]: 127: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,770 INFO L273 TraceCheckUtils]: 128: Hoare triple {72631#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {72631#false} is VALID [2018-11-23 12:15:48,770 INFO L273 TraceCheckUtils]: 129: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,770 INFO L273 TraceCheckUtils]: 130: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,770 INFO L273 TraceCheckUtils]: 131: Hoare triple {72631#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {72631#false} is VALID [2018-11-23 12:15:48,771 INFO L273 TraceCheckUtils]: 132: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,771 INFO L273 TraceCheckUtils]: 133: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,771 INFO L273 TraceCheckUtils]: 134: Hoare triple {72631#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {72631#false} is VALID [2018-11-23 12:15:48,771 INFO L273 TraceCheckUtils]: 135: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,771 INFO L273 TraceCheckUtils]: 136: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,771 INFO L273 TraceCheckUtils]: 137: Hoare triple {72631#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {72631#false} is VALID [2018-11-23 12:15:48,771 INFO L273 TraceCheckUtils]: 138: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,771 INFO L273 TraceCheckUtils]: 139: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,771 INFO L273 TraceCheckUtils]: 140: Hoare triple {72631#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {72631#false} is VALID [2018-11-23 12:15:48,771 INFO L273 TraceCheckUtils]: 141: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,772 INFO L273 TraceCheckUtils]: 142: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,772 INFO L273 TraceCheckUtils]: 143: Hoare triple {72631#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {72631#false} is VALID [2018-11-23 12:15:48,772 INFO L273 TraceCheckUtils]: 144: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,772 INFO L273 TraceCheckUtils]: 145: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,772 INFO L273 TraceCheckUtils]: 146: Hoare triple {72631#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {72631#false} is VALID [2018-11-23 12:15:48,772 INFO L273 TraceCheckUtils]: 147: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,772 INFO L273 TraceCheckUtils]: 148: Hoare triple {72631#false} assume !(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,772 INFO L273 TraceCheckUtils]: 149: Hoare triple {72631#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {72631#false} is VALID [2018-11-23 12:15:48,772 INFO L273 TraceCheckUtils]: 150: Hoare triple {72631#false} assume true; {72631#false} is VALID [2018-11-23 12:15:48,772 INFO L268 TraceCheckUtils]: 151: Hoare quadruple {72631#false} {72631#false} #84#return; {72631#false} is VALID [2018-11-23 12:15:48,773 INFO L273 TraceCheckUtils]: 152: Hoare triple {72631#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {72631#false} is VALID [2018-11-23 12:15:48,773 INFO L256 TraceCheckUtils]: 153: Hoare triple {72631#false} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {72631#false} is VALID [2018-11-23 12:15:48,773 INFO L273 TraceCheckUtils]: 154: Hoare triple {72631#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {72631#false} is VALID [2018-11-23 12:15:48,773 INFO L273 TraceCheckUtils]: 155: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,773 INFO L273 TraceCheckUtils]: 156: Hoare triple {72631#false} assume !(~i~1 > 20); {72631#false} is VALID [2018-11-23 12:15:48,773 INFO L273 TraceCheckUtils]: 157: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,773 INFO L273 TraceCheckUtils]: 158: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,773 INFO L273 TraceCheckUtils]: 159: Hoare triple {72631#false} assume !(~i~1 > 20); {72631#false} is VALID [2018-11-23 12:15:48,773 INFO L273 TraceCheckUtils]: 160: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,773 INFO L273 TraceCheckUtils]: 161: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,773 INFO L273 TraceCheckUtils]: 162: Hoare triple {72631#false} assume !(~i~1 > 20); {72631#false} is VALID [2018-11-23 12:15:48,774 INFO L273 TraceCheckUtils]: 163: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,774 INFO L273 TraceCheckUtils]: 164: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,774 INFO L273 TraceCheckUtils]: 165: Hoare triple {72631#false} assume !(~i~1 > 20); {72631#false} is VALID [2018-11-23 12:15:48,774 INFO L273 TraceCheckUtils]: 166: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,774 INFO L273 TraceCheckUtils]: 167: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,774 INFO L273 TraceCheckUtils]: 168: Hoare triple {72631#false} assume !(~i~1 > 20); {72631#false} is VALID [2018-11-23 12:15:48,774 INFO L273 TraceCheckUtils]: 169: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,774 INFO L273 TraceCheckUtils]: 170: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,774 INFO L273 TraceCheckUtils]: 171: Hoare triple {72631#false} assume !(~i~1 > 20); {72631#false} is VALID [2018-11-23 12:15:48,774 INFO L273 TraceCheckUtils]: 172: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,775 INFO L273 TraceCheckUtils]: 173: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,775 INFO L273 TraceCheckUtils]: 174: Hoare triple {72631#false} assume !(~i~1 > 20); {72631#false} is VALID [2018-11-23 12:15:48,775 INFO L273 TraceCheckUtils]: 175: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,775 INFO L273 TraceCheckUtils]: 176: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,775 INFO L273 TraceCheckUtils]: 177: Hoare triple {72631#false} assume !(~i~1 > 20); {72631#false} is VALID [2018-11-23 12:15:48,775 INFO L273 TraceCheckUtils]: 178: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,775 INFO L273 TraceCheckUtils]: 179: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,775 INFO L273 TraceCheckUtils]: 180: Hoare triple {72631#false} assume !(~i~1 > 20); {72631#false} is VALID [2018-11-23 12:15:48,775 INFO L273 TraceCheckUtils]: 181: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,775 INFO L273 TraceCheckUtils]: 182: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,776 INFO L273 TraceCheckUtils]: 183: Hoare triple {72631#false} assume !(~i~1 > 20); {72631#false} is VALID [2018-11-23 12:15:48,776 INFO L273 TraceCheckUtils]: 184: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,776 INFO L273 TraceCheckUtils]: 185: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,776 INFO L273 TraceCheckUtils]: 186: Hoare triple {72631#false} assume !(~i~1 > 20); {72631#false} is VALID [2018-11-23 12:15:48,776 INFO L273 TraceCheckUtils]: 187: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,776 INFO L273 TraceCheckUtils]: 188: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,776 INFO L273 TraceCheckUtils]: 189: Hoare triple {72631#false} assume !(~i~1 > 20); {72631#false} is VALID [2018-11-23 12:15:48,776 INFO L273 TraceCheckUtils]: 190: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,776 INFO L273 TraceCheckUtils]: 191: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,776 INFO L273 TraceCheckUtils]: 192: Hoare triple {72631#false} assume !(~i~1 > 20); {72631#false} is VALID [2018-11-23 12:15:48,777 INFO L273 TraceCheckUtils]: 193: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,777 INFO L273 TraceCheckUtils]: 194: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,777 INFO L273 TraceCheckUtils]: 195: Hoare triple {72631#false} assume !(~i~1 > 20); {72631#false} is VALID [2018-11-23 12:15:48,777 INFO L273 TraceCheckUtils]: 196: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,777 INFO L273 TraceCheckUtils]: 197: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,777 INFO L273 TraceCheckUtils]: 198: Hoare triple {72631#false} assume !(~i~1 > 20); {72631#false} is VALID [2018-11-23 12:15:48,777 INFO L273 TraceCheckUtils]: 199: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,777 INFO L273 TraceCheckUtils]: 200: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,777 INFO L273 TraceCheckUtils]: 201: Hoare triple {72631#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {72631#false} is VALID [2018-11-23 12:15:48,777 INFO L273 TraceCheckUtils]: 202: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,778 INFO L273 TraceCheckUtils]: 203: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,778 INFO L273 TraceCheckUtils]: 204: Hoare triple {72631#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {72631#false} is VALID [2018-11-23 12:15:48,778 INFO L273 TraceCheckUtils]: 205: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,778 INFO L273 TraceCheckUtils]: 206: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,778 INFO L273 TraceCheckUtils]: 207: Hoare triple {72631#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {72631#false} is VALID [2018-11-23 12:15:48,778 INFO L273 TraceCheckUtils]: 208: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,778 INFO L273 TraceCheckUtils]: 209: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,778 INFO L273 TraceCheckUtils]: 210: Hoare triple {72631#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {72631#false} is VALID [2018-11-23 12:15:48,778 INFO L273 TraceCheckUtils]: 211: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,778 INFO L273 TraceCheckUtils]: 212: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,779 INFO L273 TraceCheckUtils]: 213: Hoare triple {72631#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {72631#false} is VALID [2018-11-23 12:15:48,779 INFO L273 TraceCheckUtils]: 214: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,779 INFO L273 TraceCheckUtils]: 215: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,779 INFO L273 TraceCheckUtils]: 216: Hoare triple {72631#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {72631#false} is VALID [2018-11-23 12:15:48,779 INFO L273 TraceCheckUtils]: 217: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,779 INFO L273 TraceCheckUtils]: 218: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,779 INFO L273 TraceCheckUtils]: 219: Hoare triple {72631#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {72631#false} is VALID [2018-11-23 12:15:48,779 INFO L273 TraceCheckUtils]: 220: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,779 INFO L273 TraceCheckUtils]: 221: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,779 INFO L273 TraceCheckUtils]: 222: Hoare triple {72631#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {72631#false} is VALID [2018-11-23 12:15:48,780 INFO L273 TraceCheckUtils]: 223: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,780 INFO L273 TraceCheckUtils]: 224: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,780 INFO L273 TraceCheckUtils]: 225: Hoare triple {72631#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {72631#false} is VALID [2018-11-23 12:15:48,780 INFO L273 TraceCheckUtils]: 226: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,780 INFO L273 TraceCheckUtils]: 227: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,780 INFO L273 TraceCheckUtils]: 228: Hoare triple {72631#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {72631#false} is VALID [2018-11-23 12:15:48,780 INFO L273 TraceCheckUtils]: 229: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,780 INFO L273 TraceCheckUtils]: 230: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,780 INFO L273 TraceCheckUtils]: 231: Hoare triple {72631#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {72631#false} is VALID [2018-11-23 12:15:48,780 INFO L273 TraceCheckUtils]: 232: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,781 INFO L273 TraceCheckUtils]: 233: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,781 INFO L273 TraceCheckUtils]: 234: Hoare triple {72631#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {72631#false} is VALID [2018-11-23 12:15:48,781 INFO L273 TraceCheckUtils]: 235: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,781 INFO L273 TraceCheckUtils]: 236: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,781 INFO L273 TraceCheckUtils]: 237: Hoare triple {72631#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {72631#false} is VALID [2018-11-23 12:15:48,781 INFO L273 TraceCheckUtils]: 238: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,781 INFO L273 TraceCheckUtils]: 239: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,781 INFO L273 TraceCheckUtils]: 240: Hoare triple {72631#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {72631#false} is VALID [2018-11-23 12:15:48,781 INFO L273 TraceCheckUtils]: 241: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,781 INFO L273 TraceCheckUtils]: 242: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,782 INFO L273 TraceCheckUtils]: 243: Hoare triple {72631#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {72631#false} is VALID [2018-11-23 12:15:48,782 INFO L273 TraceCheckUtils]: 244: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,782 INFO L273 TraceCheckUtils]: 245: Hoare triple {72631#false} assume !(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,782 INFO L273 TraceCheckUtils]: 246: Hoare triple {72631#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {72631#false} is VALID [2018-11-23 12:15:48,782 INFO L273 TraceCheckUtils]: 247: Hoare triple {72631#false} assume true; {72631#false} is VALID [2018-11-23 12:15:48,782 INFO L268 TraceCheckUtils]: 248: Hoare quadruple {72631#false} {72631#false} #86#return; {72631#false} is VALID [2018-11-23 12:15:48,782 INFO L273 TraceCheckUtils]: 249: Hoare triple {72631#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {72631#false} is VALID [2018-11-23 12:15:48,782 INFO L273 TraceCheckUtils]: 250: Hoare triple {72631#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {72631#false} is VALID [2018-11-23 12:15:48,782 INFO L273 TraceCheckUtils]: 251: Hoare triple {72631#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {72631#false} is VALID [2018-11-23 12:15:48,782 INFO L273 TraceCheckUtils]: 252: Hoare triple {72631#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {72631#false} is VALID [2018-11-23 12:15:48,783 INFO L273 TraceCheckUtils]: 253: Hoare triple {72631#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {72631#false} is VALID [2018-11-23 12:15:48,783 INFO L273 TraceCheckUtils]: 254: Hoare triple {72631#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {72631#false} is VALID [2018-11-23 12:15:48,783 INFO L273 TraceCheckUtils]: 255: Hoare triple {72631#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {72631#false} is VALID [2018-11-23 12:15:48,783 INFO L273 TraceCheckUtils]: 256: Hoare triple {72631#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {72631#false} is VALID [2018-11-23 12:15:48,783 INFO L273 TraceCheckUtils]: 257: Hoare triple {72631#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {72631#false} is VALID [2018-11-23 12:15:48,783 INFO L273 TraceCheckUtils]: 258: Hoare triple {72631#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {72631#false} is VALID [2018-11-23 12:15:48,783 INFO L273 TraceCheckUtils]: 259: Hoare triple {72631#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {72631#false} is VALID [2018-11-23 12:15:48,783 INFO L273 TraceCheckUtils]: 260: Hoare triple {72631#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {72631#false} is VALID [2018-11-23 12:15:48,783 INFO L273 TraceCheckUtils]: 261: Hoare triple {72631#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {72631#false} is VALID [2018-11-23 12:15:48,783 INFO L273 TraceCheckUtils]: 262: Hoare triple {72631#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {72631#false} is VALID [2018-11-23 12:15:48,783 INFO L273 TraceCheckUtils]: 263: Hoare triple {72631#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {72631#false} is VALID [2018-11-23 12:15:48,784 INFO L273 TraceCheckUtils]: 264: Hoare triple {72631#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {72631#false} is VALID [2018-11-23 12:15:48,784 INFO L273 TraceCheckUtils]: 265: Hoare triple {72631#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {72631#false} is VALID [2018-11-23 12:15:48,784 INFO L273 TraceCheckUtils]: 266: Hoare triple {72631#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {72631#false} is VALID [2018-11-23 12:15:48,784 INFO L273 TraceCheckUtils]: 267: Hoare triple {72631#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {72631#false} is VALID [2018-11-23 12:15:48,784 INFO L273 TraceCheckUtils]: 268: Hoare triple {72631#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {72631#false} is VALID [2018-11-23 12:15:48,784 INFO L273 TraceCheckUtils]: 269: Hoare triple {72631#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {72631#false} is VALID [2018-11-23 12:15:48,784 INFO L273 TraceCheckUtils]: 270: Hoare triple {72631#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {72631#false} is VALID [2018-11-23 12:15:48,784 INFO L273 TraceCheckUtils]: 271: Hoare triple {72631#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {72631#false} is VALID [2018-11-23 12:15:48,784 INFO L273 TraceCheckUtils]: 272: Hoare triple {72631#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {72631#false} is VALID [2018-11-23 12:15:48,784 INFO L273 TraceCheckUtils]: 273: Hoare triple {72631#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {72631#false} is VALID [2018-11-23 12:15:48,785 INFO L273 TraceCheckUtils]: 274: Hoare triple {72631#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {72631#false} is VALID [2018-11-23 12:15:48,785 INFO L273 TraceCheckUtils]: 275: Hoare triple {72631#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {72631#false} is VALID [2018-11-23 12:15:48,785 INFO L273 TraceCheckUtils]: 276: Hoare triple {72631#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {72631#false} is VALID [2018-11-23 12:15:48,785 INFO L273 TraceCheckUtils]: 277: Hoare triple {72631#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {72631#false} is VALID [2018-11-23 12:15:48,785 INFO L273 TraceCheckUtils]: 278: Hoare triple {72631#false} assume !(~i~2 < 39); {72631#false} is VALID [2018-11-23 12:15:48,785 INFO L273 TraceCheckUtils]: 279: Hoare triple {72631#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {72631#false} is VALID [2018-11-23 12:15:48,785 INFO L256 TraceCheckUtils]: 280: Hoare triple {72631#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {72631#false} is VALID [2018-11-23 12:15:48,785 INFO L273 TraceCheckUtils]: 281: Hoare triple {72631#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {72631#false} is VALID [2018-11-23 12:15:48,785 INFO L273 TraceCheckUtils]: 282: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,785 INFO L273 TraceCheckUtils]: 283: Hoare triple {72631#false} assume !(~i~1 > 20); {72631#false} is VALID [2018-11-23 12:15:48,786 INFO L273 TraceCheckUtils]: 284: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,786 INFO L273 TraceCheckUtils]: 285: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,786 INFO L273 TraceCheckUtils]: 286: Hoare triple {72631#false} assume !(~i~1 > 20); {72631#false} is VALID [2018-11-23 12:15:48,786 INFO L273 TraceCheckUtils]: 287: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,786 INFO L273 TraceCheckUtils]: 288: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,786 INFO L273 TraceCheckUtils]: 289: Hoare triple {72631#false} assume !(~i~1 > 20); {72631#false} is VALID [2018-11-23 12:15:48,786 INFO L273 TraceCheckUtils]: 290: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,786 INFO L273 TraceCheckUtils]: 291: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,786 INFO L273 TraceCheckUtils]: 292: Hoare triple {72631#false} assume !(~i~1 > 20); {72631#false} is VALID [2018-11-23 12:15:48,786 INFO L273 TraceCheckUtils]: 293: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,787 INFO L273 TraceCheckUtils]: 294: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,787 INFO L273 TraceCheckUtils]: 295: Hoare triple {72631#false} assume !(~i~1 > 20); {72631#false} is VALID [2018-11-23 12:15:48,787 INFO L273 TraceCheckUtils]: 296: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,787 INFO L273 TraceCheckUtils]: 297: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,787 INFO L273 TraceCheckUtils]: 298: Hoare triple {72631#false} assume !(~i~1 > 20); {72631#false} is VALID [2018-11-23 12:15:48,787 INFO L273 TraceCheckUtils]: 299: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,787 INFO L273 TraceCheckUtils]: 300: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,787 INFO L273 TraceCheckUtils]: 301: Hoare triple {72631#false} assume !(~i~1 > 20); {72631#false} is VALID [2018-11-23 12:15:48,787 INFO L273 TraceCheckUtils]: 302: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,787 INFO L273 TraceCheckUtils]: 303: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,788 INFO L273 TraceCheckUtils]: 304: Hoare triple {72631#false} assume !(~i~1 > 20); {72631#false} is VALID [2018-11-23 12:15:48,788 INFO L273 TraceCheckUtils]: 305: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,788 INFO L273 TraceCheckUtils]: 306: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,788 INFO L273 TraceCheckUtils]: 307: Hoare triple {72631#false} assume !(~i~1 > 20); {72631#false} is VALID [2018-11-23 12:15:48,788 INFO L273 TraceCheckUtils]: 308: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,788 INFO L273 TraceCheckUtils]: 309: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,788 INFO L273 TraceCheckUtils]: 310: Hoare triple {72631#false} assume !(~i~1 > 20); {72631#false} is VALID [2018-11-23 12:15:48,788 INFO L273 TraceCheckUtils]: 311: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,788 INFO L273 TraceCheckUtils]: 312: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,788 INFO L273 TraceCheckUtils]: 313: Hoare triple {72631#false} assume !(~i~1 > 20); {72631#false} is VALID [2018-11-23 12:15:48,789 INFO L273 TraceCheckUtils]: 314: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,789 INFO L273 TraceCheckUtils]: 315: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,789 INFO L273 TraceCheckUtils]: 316: Hoare triple {72631#false} assume !(~i~1 > 20); {72631#false} is VALID [2018-11-23 12:15:48,789 INFO L273 TraceCheckUtils]: 317: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,789 INFO L273 TraceCheckUtils]: 318: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,789 INFO L273 TraceCheckUtils]: 319: Hoare triple {72631#false} assume !(~i~1 > 20); {72631#false} is VALID [2018-11-23 12:15:48,789 INFO L273 TraceCheckUtils]: 320: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,789 INFO L273 TraceCheckUtils]: 321: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,789 INFO L273 TraceCheckUtils]: 322: Hoare triple {72631#false} assume !(~i~1 > 20); {72631#false} is VALID [2018-11-23 12:15:48,789 INFO L273 TraceCheckUtils]: 323: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,790 INFO L273 TraceCheckUtils]: 324: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,790 INFO L273 TraceCheckUtils]: 325: Hoare triple {72631#false} assume !(~i~1 > 20); {72631#false} is VALID [2018-11-23 12:15:48,790 INFO L273 TraceCheckUtils]: 326: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,790 INFO L273 TraceCheckUtils]: 327: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,790 INFO L273 TraceCheckUtils]: 328: Hoare triple {72631#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {72631#false} is VALID [2018-11-23 12:15:48,790 INFO L273 TraceCheckUtils]: 329: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,790 INFO L273 TraceCheckUtils]: 330: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,790 INFO L273 TraceCheckUtils]: 331: Hoare triple {72631#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {72631#false} is VALID [2018-11-23 12:15:48,790 INFO L273 TraceCheckUtils]: 332: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,790 INFO L273 TraceCheckUtils]: 333: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,791 INFO L273 TraceCheckUtils]: 334: Hoare triple {72631#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {72631#false} is VALID [2018-11-23 12:15:48,791 INFO L273 TraceCheckUtils]: 335: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,791 INFO L273 TraceCheckUtils]: 336: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,791 INFO L273 TraceCheckUtils]: 337: Hoare triple {72631#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {72631#false} is VALID [2018-11-23 12:15:48,791 INFO L273 TraceCheckUtils]: 338: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,791 INFO L273 TraceCheckUtils]: 339: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,791 INFO L273 TraceCheckUtils]: 340: Hoare triple {72631#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {72631#false} is VALID [2018-11-23 12:15:48,791 INFO L273 TraceCheckUtils]: 341: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,791 INFO L273 TraceCheckUtils]: 342: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,791 INFO L273 TraceCheckUtils]: 343: Hoare triple {72631#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {72631#false} is VALID [2018-11-23 12:15:48,792 INFO L273 TraceCheckUtils]: 344: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,792 INFO L273 TraceCheckUtils]: 345: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,792 INFO L273 TraceCheckUtils]: 346: Hoare triple {72631#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {72631#false} is VALID [2018-11-23 12:15:48,792 INFO L273 TraceCheckUtils]: 347: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,792 INFO L273 TraceCheckUtils]: 348: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,792 INFO L273 TraceCheckUtils]: 349: Hoare triple {72631#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {72631#false} is VALID [2018-11-23 12:15:48,792 INFO L273 TraceCheckUtils]: 350: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,792 INFO L273 TraceCheckUtils]: 351: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,792 INFO L273 TraceCheckUtils]: 352: Hoare triple {72631#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {72631#false} is VALID [2018-11-23 12:15:48,792 INFO L273 TraceCheckUtils]: 353: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,793 INFO L273 TraceCheckUtils]: 354: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,793 INFO L273 TraceCheckUtils]: 355: Hoare triple {72631#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {72631#false} is VALID [2018-11-23 12:15:48,793 INFO L273 TraceCheckUtils]: 356: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,793 INFO L273 TraceCheckUtils]: 357: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,793 INFO L273 TraceCheckUtils]: 358: Hoare triple {72631#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {72631#false} is VALID [2018-11-23 12:15:48,793 INFO L273 TraceCheckUtils]: 359: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,793 INFO L273 TraceCheckUtils]: 360: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,793 INFO L273 TraceCheckUtils]: 361: Hoare triple {72631#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {72631#false} is VALID [2018-11-23 12:15:48,793 INFO L273 TraceCheckUtils]: 362: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,793 INFO L273 TraceCheckUtils]: 363: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,794 INFO L273 TraceCheckUtils]: 364: Hoare triple {72631#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {72631#false} is VALID [2018-11-23 12:15:48,794 INFO L273 TraceCheckUtils]: 365: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,794 INFO L273 TraceCheckUtils]: 366: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,794 INFO L273 TraceCheckUtils]: 367: Hoare triple {72631#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {72631#false} is VALID [2018-11-23 12:15:48,794 INFO L273 TraceCheckUtils]: 368: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,794 INFO L273 TraceCheckUtils]: 369: Hoare triple {72631#false} assume !!(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,794 INFO L273 TraceCheckUtils]: 370: Hoare triple {72631#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {72631#false} is VALID [2018-11-23 12:15:48,794 INFO L273 TraceCheckUtils]: 371: Hoare triple {72631#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {72631#false} is VALID [2018-11-23 12:15:48,794 INFO L273 TraceCheckUtils]: 372: Hoare triple {72631#false} assume !(~i~1 < 40); {72631#false} is VALID [2018-11-23 12:15:48,794 INFO L273 TraceCheckUtils]: 373: Hoare triple {72631#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {72631#false} is VALID [2018-11-23 12:15:48,795 INFO L273 TraceCheckUtils]: 374: Hoare triple {72631#false} assume true; {72631#false} is VALID [2018-11-23 12:15:48,795 INFO L268 TraceCheckUtils]: 375: Hoare quadruple {72631#false} {72631#false} #88#return; {72631#false} is VALID [2018-11-23 12:15:48,795 INFO L273 TraceCheckUtils]: 376: Hoare triple {72631#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {72631#false} is VALID [2018-11-23 12:15:48,795 INFO L273 TraceCheckUtils]: 377: Hoare triple {72631#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {72631#false} is VALID [2018-11-23 12:15:48,795 INFO L273 TraceCheckUtils]: 378: Hoare triple {72631#false} assume !false; {72631#false} is VALID [2018-11-23 12:15:48,873 INFO L134 CoverageAnalysis]: Checked inductivity of 12980 backedges. 0 proven. 484 refuted. 0 times theorem prover too weak. 12496 trivial. 0 not checked. [2018-11-23 12:15:48,891 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:15:48,892 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [25] total 25 [2018-11-23 12:15:48,892 INFO L78 Accepts]: Start accepts. Automaton has 25 states. Word has length 379 [2018-11-23 12:15:48,892 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:15:48,892 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 25 states. [2018-11-23 12:15:48,979 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-23 12:15:48,979 INFO L459 AbstractCegarLoop]: Interpolant automaton has 25 states [2018-11-23 12:15:48,979 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 25 interpolants. [2018-11-23 12:15:48,980 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=300, Invalid=300, Unknown=0, NotChecked=0, Total=600 [2018-11-23 12:15:48,980 INFO L87 Difference]: Start difference. First operand 190 states and 210 transitions. Second operand 25 states. [2018-11-23 12:15:49,533 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:49,533 INFO L93 Difference]: Finished difference Result 330 states and 370 transitions. [2018-11-23 12:15:49,533 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 25 states. [2018-11-23 12:15:49,533 INFO L78 Accepts]: Start accepts. Automaton has 25 states. Word has length 379 [2018-11-23 12:15:49,533 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:15:49,533 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 25 states. [2018-11-23 12:15:49,534 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 112 transitions. [2018-11-23 12:15:49,534 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 25 states. [2018-11-23 12:15:49,535 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 112 transitions. [2018-11-23 12:15:49,535 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 25 states and 112 transitions. [2018-11-23 12:15:49,637 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-23 12:15:49,641 INFO L225 Difference]: With dead ends: 330 [2018-11-23 12:15:49,641 INFO L226 Difference]: Without dead ends: 193 [2018-11-23 12:15:49,642 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 378 GetRequests, 355 SyntacticMatches, 0 SemanticMatches, 23 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=300, Invalid=300, Unknown=0, NotChecked=0, Total=600 [2018-11-23 12:15:49,642 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 193 states. [2018-11-23 12:15:49,773 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 193 to 192. [2018-11-23 12:15:49,773 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:15:49,773 INFO L82 GeneralOperation]: Start isEquivalent. First operand 193 states. Second operand 192 states. [2018-11-23 12:15:49,773 INFO L74 IsIncluded]: Start isIncluded. First operand 193 states. Second operand 192 states. [2018-11-23 12:15:49,774 INFO L87 Difference]: Start difference. First operand 193 states. Second operand 192 states. [2018-11-23 12:15:49,777 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:49,777 INFO L93 Difference]: Finished difference Result 193 states and 213 transitions. [2018-11-23 12:15:49,777 INFO L276 IsEmpty]: Start isEmpty. Operand 193 states and 213 transitions. [2018-11-23 12:15:49,778 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:15:49,778 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:15:49,778 INFO L74 IsIncluded]: Start isIncluded. First operand 192 states. Second operand 193 states. [2018-11-23 12:15:49,778 INFO L87 Difference]: Start difference. First operand 192 states. Second operand 193 states. [2018-11-23 12:15:49,781 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:49,781 INFO L93 Difference]: Finished difference Result 193 states and 213 transitions. [2018-11-23 12:15:49,781 INFO L276 IsEmpty]: Start isEmpty. Operand 193 states and 213 transitions. [2018-11-23 12:15:49,781 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:15:49,781 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:15:49,781 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:15:49,781 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:15:49,781 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 192 states. [2018-11-23 12:15:49,784 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 192 states to 192 states and 212 transitions. [2018-11-23 12:15:49,784 INFO L78 Accepts]: Start accepts. Automaton has 192 states and 212 transitions. Word has length 379 [2018-11-23 12:15:49,784 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:15:49,784 INFO L480 AbstractCegarLoop]: Abstraction has 192 states and 212 transitions. [2018-11-23 12:15:49,784 INFO L481 AbstractCegarLoop]: Interpolant automaton has 25 states. [2018-11-23 12:15:49,785 INFO L276 IsEmpty]: Start isEmpty. Operand 192 states and 212 transitions. [2018-11-23 12:15:49,786 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 382 [2018-11-23 12:15:49,786 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:15:49,786 INFO L402 BasicCegarLoop]: trace histogram [90, 90, 45, 45, 23, 23, 14, 14, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:15:49,787 INFO L423 AbstractCegarLoop]: === Iteration 62 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:15:49,787 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:15:49,787 INFO L82 PathProgramCache]: Analyzing trace with hash 1059383436, now seen corresponding path program 57 times [2018-11-23 12:15:49,787 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:15:49,787 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:15:49,788 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:15:49,788 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:15:49,788 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:15:49,801 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:15:49,801 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:15:49,801 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 63 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 63 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:15:49,816 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-23 12:15:55,017 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 16 check-sat command(s) [2018-11-23 12:15:55,017 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:15:55,072 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:15:55,075 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:15:55,461 INFO L256 TraceCheckUtils]: 0: Hoare triple {74909#true} call ULTIMATE.init(); {74909#true} is VALID [2018-11-23 12:15:55,461 INFO L273 TraceCheckUtils]: 1: Hoare triple {74909#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {74909#true} is VALID [2018-11-23 12:15:55,462 INFO L273 TraceCheckUtils]: 2: Hoare triple {74909#true} assume true; {74909#true} is VALID [2018-11-23 12:15:55,462 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {74909#true} {74909#true} #78#return; {74909#true} is VALID [2018-11-23 12:15:55,462 INFO L256 TraceCheckUtils]: 4: Hoare triple {74909#true} call #t~ret12 := main(); {74909#true} is VALID [2018-11-23 12:15:55,462 INFO L273 TraceCheckUtils]: 5: Hoare triple {74909#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {74909#true} is VALID [2018-11-23 12:15:55,462 INFO L256 TraceCheckUtils]: 6: Hoare triple {74909#true} call init_nondet(~#x~0.base, ~#x~0.offset); {74909#true} is VALID [2018-11-23 12:15:55,462 INFO L273 TraceCheckUtils]: 7: Hoare triple {74909#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {74909#true} is VALID [2018-11-23 12:15:55,463 INFO L273 TraceCheckUtils]: 8: Hoare triple {74909#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {74909#true} is VALID [2018-11-23 12:15:55,463 INFO L273 TraceCheckUtils]: 9: Hoare triple {74909#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {74909#true} is VALID [2018-11-23 12:15:55,463 INFO L273 TraceCheckUtils]: 10: Hoare triple {74909#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {74909#true} is VALID [2018-11-23 12:15:55,463 INFO L273 TraceCheckUtils]: 11: Hoare triple {74909#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {74909#true} is VALID [2018-11-23 12:15:55,463 INFO L273 TraceCheckUtils]: 12: Hoare triple {74909#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {74909#true} is VALID [2018-11-23 12:15:55,463 INFO L273 TraceCheckUtils]: 13: Hoare triple {74909#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {74909#true} is VALID [2018-11-23 12:15:55,464 INFO L273 TraceCheckUtils]: 14: Hoare triple {74909#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {74909#true} is VALID [2018-11-23 12:15:55,464 INFO L273 TraceCheckUtils]: 15: Hoare triple {74909#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {74909#true} is VALID [2018-11-23 12:15:55,464 INFO L273 TraceCheckUtils]: 16: Hoare triple {74909#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {74909#true} is VALID [2018-11-23 12:15:55,464 INFO L273 TraceCheckUtils]: 17: Hoare triple {74909#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {74909#true} is VALID [2018-11-23 12:15:55,464 INFO L273 TraceCheckUtils]: 18: Hoare triple {74909#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {74909#true} is VALID [2018-11-23 12:15:55,464 INFO L273 TraceCheckUtils]: 19: Hoare triple {74909#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {74909#true} is VALID [2018-11-23 12:15:55,464 INFO L273 TraceCheckUtils]: 20: Hoare triple {74909#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {74909#true} is VALID [2018-11-23 12:15:55,464 INFO L273 TraceCheckUtils]: 21: Hoare triple {74909#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {74909#true} is VALID [2018-11-23 12:15:55,464 INFO L273 TraceCheckUtils]: 22: Hoare triple {74909#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {74909#true} is VALID [2018-11-23 12:15:55,464 INFO L273 TraceCheckUtils]: 23: Hoare triple {74909#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {74909#true} is VALID [2018-11-23 12:15:55,464 INFO L273 TraceCheckUtils]: 24: Hoare triple {74909#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {74909#true} is VALID [2018-11-23 12:15:55,465 INFO L273 TraceCheckUtils]: 25: Hoare triple {74909#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {74909#true} is VALID [2018-11-23 12:15:55,465 INFO L273 TraceCheckUtils]: 26: Hoare triple {74909#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {74909#true} is VALID [2018-11-23 12:15:55,465 INFO L273 TraceCheckUtils]: 27: Hoare triple {74909#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {74909#true} is VALID [2018-11-23 12:15:55,465 INFO L273 TraceCheckUtils]: 28: Hoare triple {74909#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {74909#true} is VALID [2018-11-23 12:15:55,465 INFO L273 TraceCheckUtils]: 29: Hoare triple {74909#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {74909#true} is VALID [2018-11-23 12:15:55,465 INFO L273 TraceCheckUtils]: 30: Hoare triple {74909#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {74909#true} is VALID [2018-11-23 12:15:55,465 INFO L273 TraceCheckUtils]: 31: Hoare triple {74909#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {74909#true} is VALID [2018-11-23 12:15:55,465 INFO L273 TraceCheckUtils]: 32: Hoare triple {74909#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {74909#true} is VALID [2018-11-23 12:15:55,465 INFO L273 TraceCheckUtils]: 33: Hoare triple {74909#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {74909#true} is VALID [2018-11-23 12:15:55,465 INFO L273 TraceCheckUtils]: 34: Hoare triple {74909#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {74909#true} is VALID [2018-11-23 12:15:55,466 INFO L273 TraceCheckUtils]: 35: Hoare triple {74909#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {74909#true} is VALID [2018-11-23 12:15:55,466 INFO L273 TraceCheckUtils]: 36: Hoare triple {74909#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {74909#true} is VALID [2018-11-23 12:15:55,466 INFO L273 TraceCheckUtils]: 37: Hoare triple {74909#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {74909#true} is VALID [2018-11-23 12:15:55,466 INFO L273 TraceCheckUtils]: 38: Hoare triple {74909#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {74909#true} is VALID [2018-11-23 12:15:55,466 INFO L273 TraceCheckUtils]: 39: Hoare triple {74909#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {74909#true} is VALID [2018-11-23 12:15:55,466 INFO L273 TraceCheckUtils]: 40: Hoare triple {74909#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {74909#true} is VALID [2018-11-23 12:15:55,466 INFO L273 TraceCheckUtils]: 41: Hoare triple {74909#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {74909#true} is VALID [2018-11-23 12:15:55,466 INFO L273 TraceCheckUtils]: 42: Hoare triple {74909#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {74909#true} is VALID [2018-11-23 12:15:55,466 INFO L273 TraceCheckUtils]: 43: Hoare triple {74909#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {74909#true} is VALID [2018-11-23 12:15:55,466 INFO L273 TraceCheckUtils]: 44: Hoare triple {74909#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {74909#true} is VALID [2018-11-23 12:15:55,467 INFO L273 TraceCheckUtils]: 45: Hoare triple {74909#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {74909#true} is VALID [2018-11-23 12:15:55,467 INFO L273 TraceCheckUtils]: 46: Hoare triple {74909#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {74909#true} is VALID [2018-11-23 12:15:55,467 INFO L273 TraceCheckUtils]: 47: Hoare triple {74909#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {74909#true} is VALID [2018-11-23 12:15:55,467 INFO L273 TraceCheckUtils]: 48: Hoare triple {74909#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {74909#true} is VALID [2018-11-23 12:15:55,467 INFO L273 TraceCheckUtils]: 49: Hoare triple {74909#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {74909#true} is VALID [2018-11-23 12:15:55,467 INFO L273 TraceCheckUtils]: 50: Hoare triple {74909#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {74909#true} is VALID [2018-11-23 12:15:55,467 INFO L273 TraceCheckUtils]: 51: Hoare triple {74909#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {74909#true} is VALID [2018-11-23 12:15:55,467 INFO L273 TraceCheckUtils]: 52: Hoare triple {74909#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {74909#true} is VALID [2018-11-23 12:15:55,467 INFO L273 TraceCheckUtils]: 53: Hoare triple {74909#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {74909#true} is VALID [2018-11-23 12:15:55,467 INFO L273 TraceCheckUtils]: 54: Hoare triple {74909#true} assume !(~i~0 < 40); {74909#true} is VALID [2018-11-23 12:15:55,468 INFO L273 TraceCheckUtils]: 55: Hoare triple {74909#true} assume true; {74909#true} is VALID [2018-11-23 12:15:55,468 INFO L268 TraceCheckUtils]: 56: Hoare quadruple {74909#true} {74909#true} #82#return; {74909#true} is VALID [2018-11-23 12:15:55,468 INFO L273 TraceCheckUtils]: 57: Hoare triple {74909#true} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {74909#true} is VALID [2018-11-23 12:15:55,468 INFO L256 TraceCheckUtils]: 58: Hoare triple {74909#true} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {74909#true} is VALID [2018-11-23 12:15:55,468 INFO L273 TraceCheckUtils]: 59: Hoare triple {74909#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {74909#true} is VALID [2018-11-23 12:15:55,468 INFO L273 TraceCheckUtils]: 60: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,468 INFO L273 TraceCheckUtils]: 61: Hoare triple {74909#true} assume !(~i~1 > 20); {74909#true} is VALID [2018-11-23 12:15:55,468 INFO L273 TraceCheckUtils]: 62: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,468 INFO L273 TraceCheckUtils]: 63: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,468 INFO L273 TraceCheckUtils]: 64: Hoare triple {74909#true} assume !(~i~1 > 20); {74909#true} is VALID [2018-11-23 12:15:55,469 INFO L273 TraceCheckUtils]: 65: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,469 INFO L273 TraceCheckUtils]: 66: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,469 INFO L273 TraceCheckUtils]: 67: Hoare triple {74909#true} assume !(~i~1 > 20); {74909#true} is VALID [2018-11-23 12:15:55,469 INFO L273 TraceCheckUtils]: 68: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,469 INFO L273 TraceCheckUtils]: 69: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,469 INFO L273 TraceCheckUtils]: 70: Hoare triple {74909#true} assume !(~i~1 > 20); {74909#true} is VALID [2018-11-23 12:15:55,469 INFO L273 TraceCheckUtils]: 71: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,469 INFO L273 TraceCheckUtils]: 72: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,469 INFO L273 TraceCheckUtils]: 73: Hoare triple {74909#true} assume !(~i~1 > 20); {74909#true} is VALID [2018-11-23 12:15:55,469 INFO L273 TraceCheckUtils]: 74: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,470 INFO L273 TraceCheckUtils]: 75: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,470 INFO L273 TraceCheckUtils]: 76: Hoare triple {74909#true} assume !(~i~1 > 20); {74909#true} is VALID [2018-11-23 12:15:55,470 INFO L273 TraceCheckUtils]: 77: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,470 INFO L273 TraceCheckUtils]: 78: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,470 INFO L273 TraceCheckUtils]: 79: Hoare triple {74909#true} assume !(~i~1 > 20); {74909#true} is VALID [2018-11-23 12:15:55,470 INFO L273 TraceCheckUtils]: 80: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,470 INFO L273 TraceCheckUtils]: 81: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,470 INFO L273 TraceCheckUtils]: 82: Hoare triple {74909#true} assume !(~i~1 > 20); {74909#true} is VALID [2018-11-23 12:15:55,470 INFO L273 TraceCheckUtils]: 83: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,470 INFO L273 TraceCheckUtils]: 84: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,471 INFO L273 TraceCheckUtils]: 85: Hoare triple {74909#true} assume !(~i~1 > 20); {74909#true} is VALID [2018-11-23 12:15:55,471 INFO L273 TraceCheckUtils]: 86: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,471 INFO L273 TraceCheckUtils]: 87: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,471 INFO L273 TraceCheckUtils]: 88: Hoare triple {74909#true} assume !(~i~1 > 20); {74909#true} is VALID [2018-11-23 12:15:55,471 INFO L273 TraceCheckUtils]: 89: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,471 INFO L273 TraceCheckUtils]: 90: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,471 INFO L273 TraceCheckUtils]: 91: Hoare triple {74909#true} assume !(~i~1 > 20); {74909#true} is VALID [2018-11-23 12:15:55,471 INFO L273 TraceCheckUtils]: 92: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,471 INFO L273 TraceCheckUtils]: 93: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,471 INFO L273 TraceCheckUtils]: 94: Hoare triple {74909#true} assume !(~i~1 > 20); {74909#true} is VALID [2018-11-23 12:15:55,472 INFO L273 TraceCheckUtils]: 95: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,472 INFO L273 TraceCheckUtils]: 96: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,472 INFO L273 TraceCheckUtils]: 97: Hoare triple {74909#true} assume !(~i~1 > 20); {74909#true} is VALID [2018-11-23 12:15:55,472 INFO L273 TraceCheckUtils]: 98: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,472 INFO L273 TraceCheckUtils]: 99: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,472 INFO L273 TraceCheckUtils]: 100: Hoare triple {74909#true} assume !(~i~1 > 20); {74909#true} is VALID [2018-11-23 12:15:55,472 INFO L273 TraceCheckUtils]: 101: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,472 INFO L273 TraceCheckUtils]: 102: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,472 INFO L273 TraceCheckUtils]: 103: Hoare triple {74909#true} assume !(~i~1 > 20); {74909#true} is VALID [2018-11-23 12:15:55,472 INFO L273 TraceCheckUtils]: 104: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,473 INFO L273 TraceCheckUtils]: 105: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,473 INFO L273 TraceCheckUtils]: 106: Hoare triple {74909#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {74909#true} is VALID [2018-11-23 12:15:55,473 INFO L273 TraceCheckUtils]: 107: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,473 INFO L273 TraceCheckUtils]: 108: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,473 INFO L273 TraceCheckUtils]: 109: Hoare triple {74909#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {74909#true} is VALID [2018-11-23 12:15:55,473 INFO L273 TraceCheckUtils]: 110: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,473 INFO L273 TraceCheckUtils]: 111: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,473 INFO L273 TraceCheckUtils]: 112: Hoare triple {74909#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {74909#true} is VALID [2018-11-23 12:15:55,473 INFO L273 TraceCheckUtils]: 113: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,473 INFO L273 TraceCheckUtils]: 114: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,474 INFO L273 TraceCheckUtils]: 115: Hoare triple {74909#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {74909#true} is VALID [2018-11-23 12:15:55,474 INFO L273 TraceCheckUtils]: 116: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,474 INFO L273 TraceCheckUtils]: 117: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,474 INFO L273 TraceCheckUtils]: 118: Hoare triple {74909#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {74909#true} is VALID [2018-11-23 12:15:55,474 INFO L273 TraceCheckUtils]: 119: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,474 INFO L273 TraceCheckUtils]: 120: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,474 INFO L273 TraceCheckUtils]: 121: Hoare triple {74909#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {74909#true} is VALID [2018-11-23 12:15:55,474 INFO L273 TraceCheckUtils]: 122: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,474 INFO L273 TraceCheckUtils]: 123: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,474 INFO L273 TraceCheckUtils]: 124: Hoare triple {74909#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {74909#true} is VALID [2018-11-23 12:15:55,475 INFO L273 TraceCheckUtils]: 125: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,475 INFO L273 TraceCheckUtils]: 126: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,475 INFO L273 TraceCheckUtils]: 127: Hoare triple {74909#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {74909#true} is VALID [2018-11-23 12:15:55,475 INFO L273 TraceCheckUtils]: 128: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,475 INFO L273 TraceCheckUtils]: 129: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,475 INFO L273 TraceCheckUtils]: 130: Hoare triple {74909#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {74909#true} is VALID [2018-11-23 12:15:55,475 INFO L273 TraceCheckUtils]: 131: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,475 INFO L273 TraceCheckUtils]: 132: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,475 INFO L273 TraceCheckUtils]: 133: Hoare triple {74909#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {74909#true} is VALID [2018-11-23 12:15:55,475 INFO L273 TraceCheckUtils]: 134: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,475 INFO L273 TraceCheckUtils]: 135: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,476 INFO L273 TraceCheckUtils]: 136: Hoare triple {74909#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {74909#true} is VALID [2018-11-23 12:15:55,476 INFO L273 TraceCheckUtils]: 137: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,476 INFO L273 TraceCheckUtils]: 138: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,476 INFO L273 TraceCheckUtils]: 139: Hoare triple {74909#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {74909#true} is VALID [2018-11-23 12:15:55,476 INFO L273 TraceCheckUtils]: 140: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,476 INFO L273 TraceCheckUtils]: 141: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,476 INFO L273 TraceCheckUtils]: 142: Hoare triple {74909#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {74909#true} is VALID [2018-11-23 12:15:55,476 INFO L273 TraceCheckUtils]: 143: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,476 INFO L273 TraceCheckUtils]: 144: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,477 INFO L273 TraceCheckUtils]: 145: Hoare triple {74909#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {74909#true} is VALID [2018-11-23 12:15:55,477 INFO L273 TraceCheckUtils]: 146: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,477 INFO L273 TraceCheckUtils]: 147: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,477 INFO L273 TraceCheckUtils]: 148: Hoare triple {74909#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {74909#true} is VALID [2018-11-23 12:15:55,477 INFO L273 TraceCheckUtils]: 149: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,477 INFO L273 TraceCheckUtils]: 150: Hoare triple {74909#true} assume !(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,477 INFO L273 TraceCheckUtils]: 151: Hoare triple {74909#true} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {74909#true} is VALID [2018-11-23 12:15:55,477 INFO L273 TraceCheckUtils]: 152: Hoare triple {74909#true} assume true; {74909#true} is VALID [2018-11-23 12:15:55,477 INFO L268 TraceCheckUtils]: 153: Hoare quadruple {74909#true} {74909#true} #84#return; {74909#true} is VALID [2018-11-23 12:15:55,477 INFO L273 TraceCheckUtils]: 154: Hoare triple {74909#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {74909#true} is VALID [2018-11-23 12:15:55,478 INFO L256 TraceCheckUtils]: 155: Hoare triple {74909#true} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {74909#true} is VALID [2018-11-23 12:15:55,478 INFO L273 TraceCheckUtils]: 156: Hoare triple {74909#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {74909#true} is VALID [2018-11-23 12:15:55,478 INFO L273 TraceCheckUtils]: 157: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,478 INFO L273 TraceCheckUtils]: 158: Hoare triple {74909#true} assume !(~i~1 > 20); {74909#true} is VALID [2018-11-23 12:15:55,478 INFO L273 TraceCheckUtils]: 159: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,478 INFO L273 TraceCheckUtils]: 160: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,478 INFO L273 TraceCheckUtils]: 161: Hoare triple {74909#true} assume !(~i~1 > 20); {74909#true} is VALID [2018-11-23 12:15:55,478 INFO L273 TraceCheckUtils]: 162: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,478 INFO L273 TraceCheckUtils]: 163: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,478 INFO L273 TraceCheckUtils]: 164: Hoare triple {74909#true} assume !(~i~1 > 20); {74909#true} is VALID [2018-11-23 12:15:55,479 INFO L273 TraceCheckUtils]: 165: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,479 INFO L273 TraceCheckUtils]: 166: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,479 INFO L273 TraceCheckUtils]: 167: Hoare triple {74909#true} assume !(~i~1 > 20); {74909#true} is VALID [2018-11-23 12:15:55,479 INFO L273 TraceCheckUtils]: 168: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,479 INFO L273 TraceCheckUtils]: 169: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,479 INFO L273 TraceCheckUtils]: 170: Hoare triple {74909#true} assume !(~i~1 > 20); {74909#true} is VALID [2018-11-23 12:15:55,479 INFO L273 TraceCheckUtils]: 171: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,479 INFO L273 TraceCheckUtils]: 172: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,479 INFO L273 TraceCheckUtils]: 173: Hoare triple {74909#true} assume !(~i~1 > 20); {74909#true} is VALID [2018-11-23 12:15:55,479 INFO L273 TraceCheckUtils]: 174: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,479 INFO L273 TraceCheckUtils]: 175: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,480 INFO L273 TraceCheckUtils]: 176: Hoare triple {74909#true} assume !(~i~1 > 20); {74909#true} is VALID [2018-11-23 12:15:55,480 INFO L273 TraceCheckUtils]: 177: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,480 INFO L273 TraceCheckUtils]: 178: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,480 INFO L273 TraceCheckUtils]: 179: Hoare triple {74909#true} assume !(~i~1 > 20); {74909#true} is VALID [2018-11-23 12:15:55,480 INFO L273 TraceCheckUtils]: 180: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,480 INFO L273 TraceCheckUtils]: 181: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,480 INFO L273 TraceCheckUtils]: 182: Hoare triple {74909#true} assume !(~i~1 > 20); {74909#true} is VALID [2018-11-23 12:15:55,480 INFO L273 TraceCheckUtils]: 183: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,480 INFO L273 TraceCheckUtils]: 184: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,480 INFO L273 TraceCheckUtils]: 185: Hoare triple {74909#true} assume !(~i~1 > 20); {74909#true} is VALID [2018-11-23 12:15:55,481 INFO L273 TraceCheckUtils]: 186: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,481 INFO L273 TraceCheckUtils]: 187: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,481 INFO L273 TraceCheckUtils]: 188: Hoare triple {74909#true} assume !(~i~1 > 20); {74909#true} is VALID [2018-11-23 12:15:55,481 INFO L273 TraceCheckUtils]: 189: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,481 INFO L273 TraceCheckUtils]: 190: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,481 INFO L273 TraceCheckUtils]: 191: Hoare triple {74909#true} assume !(~i~1 > 20); {74909#true} is VALID [2018-11-23 12:15:55,481 INFO L273 TraceCheckUtils]: 192: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,481 INFO L273 TraceCheckUtils]: 193: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,481 INFO L273 TraceCheckUtils]: 194: Hoare triple {74909#true} assume !(~i~1 > 20); {74909#true} is VALID [2018-11-23 12:15:55,481 INFO L273 TraceCheckUtils]: 195: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,482 INFO L273 TraceCheckUtils]: 196: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,482 INFO L273 TraceCheckUtils]: 197: Hoare triple {74909#true} assume !(~i~1 > 20); {74909#true} is VALID [2018-11-23 12:15:55,482 INFO L273 TraceCheckUtils]: 198: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,482 INFO L273 TraceCheckUtils]: 199: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,482 INFO L273 TraceCheckUtils]: 200: Hoare triple {74909#true} assume !(~i~1 > 20); {74909#true} is VALID [2018-11-23 12:15:55,482 INFO L273 TraceCheckUtils]: 201: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,482 INFO L273 TraceCheckUtils]: 202: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,482 INFO L273 TraceCheckUtils]: 203: Hoare triple {74909#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {74909#true} is VALID [2018-11-23 12:15:55,482 INFO L273 TraceCheckUtils]: 204: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,483 INFO L273 TraceCheckUtils]: 205: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,483 INFO L273 TraceCheckUtils]: 206: Hoare triple {74909#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {74909#true} is VALID [2018-11-23 12:15:55,483 INFO L273 TraceCheckUtils]: 207: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,483 INFO L273 TraceCheckUtils]: 208: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,483 INFO L273 TraceCheckUtils]: 209: Hoare triple {74909#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {74909#true} is VALID [2018-11-23 12:15:55,483 INFO L273 TraceCheckUtils]: 210: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,483 INFO L273 TraceCheckUtils]: 211: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,483 INFO L273 TraceCheckUtils]: 212: Hoare triple {74909#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {74909#true} is VALID [2018-11-23 12:15:55,483 INFO L273 TraceCheckUtils]: 213: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,483 INFO L273 TraceCheckUtils]: 214: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,484 INFO L273 TraceCheckUtils]: 215: Hoare triple {74909#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {74909#true} is VALID [2018-11-23 12:15:55,484 INFO L273 TraceCheckUtils]: 216: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,484 INFO L273 TraceCheckUtils]: 217: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,484 INFO L273 TraceCheckUtils]: 218: Hoare triple {74909#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {74909#true} is VALID [2018-11-23 12:15:55,484 INFO L273 TraceCheckUtils]: 219: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,484 INFO L273 TraceCheckUtils]: 220: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,484 INFO L273 TraceCheckUtils]: 221: Hoare triple {74909#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {74909#true} is VALID [2018-11-23 12:15:55,484 INFO L273 TraceCheckUtils]: 222: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,484 INFO L273 TraceCheckUtils]: 223: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,484 INFO L273 TraceCheckUtils]: 224: Hoare triple {74909#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {74909#true} is VALID [2018-11-23 12:15:55,485 INFO L273 TraceCheckUtils]: 225: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,485 INFO L273 TraceCheckUtils]: 226: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,485 INFO L273 TraceCheckUtils]: 227: Hoare triple {74909#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {74909#true} is VALID [2018-11-23 12:15:55,485 INFO L273 TraceCheckUtils]: 228: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,485 INFO L273 TraceCheckUtils]: 229: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,485 INFO L273 TraceCheckUtils]: 230: Hoare triple {74909#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {74909#true} is VALID [2018-11-23 12:15:55,485 INFO L273 TraceCheckUtils]: 231: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,485 INFO L273 TraceCheckUtils]: 232: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,485 INFO L273 TraceCheckUtils]: 233: Hoare triple {74909#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {74909#true} is VALID [2018-11-23 12:15:55,485 INFO L273 TraceCheckUtils]: 234: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,486 INFO L273 TraceCheckUtils]: 235: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,486 INFO L273 TraceCheckUtils]: 236: Hoare triple {74909#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {74909#true} is VALID [2018-11-23 12:15:55,486 INFO L273 TraceCheckUtils]: 237: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,486 INFO L273 TraceCheckUtils]: 238: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,486 INFO L273 TraceCheckUtils]: 239: Hoare triple {74909#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {74909#true} is VALID [2018-11-23 12:15:55,486 INFO L273 TraceCheckUtils]: 240: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,486 INFO L273 TraceCheckUtils]: 241: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,486 INFO L273 TraceCheckUtils]: 242: Hoare triple {74909#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {74909#true} is VALID [2018-11-23 12:15:55,486 INFO L273 TraceCheckUtils]: 243: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,486 INFO L273 TraceCheckUtils]: 244: Hoare triple {74909#true} assume !!(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,487 INFO L273 TraceCheckUtils]: 245: Hoare triple {74909#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {74909#true} is VALID [2018-11-23 12:15:55,487 INFO L273 TraceCheckUtils]: 246: Hoare triple {74909#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74909#true} is VALID [2018-11-23 12:15:55,487 INFO L273 TraceCheckUtils]: 247: Hoare triple {74909#true} assume !(~i~1 < 40); {74909#true} is VALID [2018-11-23 12:15:55,487 INFO L273 TraceCheckUtils]: 248: Hoare triple {74909#true} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {74909#true} is VALID [2018-11-23 12:15:55,487 INFO L273 TraceCheckUtils]: 249: Hoare triple {74909#true} assume true; {74909#true} is VALID [2018-11-23 12:15:55,487 INFO L268 TraceCheckUtils]: 250: Hoare quadruple {74909#true} {74909#true} #86#return; {74909#true} is VALID [2018-11-23 12:15:55,488 INFO L273 TraceCheckUtils]: 251: Hoare triple {74909#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {75667#(<= main_~i~2 0)} is VALID [2018-11-23 12:15:55,490 INFO L273 TraceCheckUtils]: 252: Hoare triple {75667#(<= main_~i~2 0)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {75667#(<= main_~i~2 0)} is VALID [2018-11-23 12:15:55,494 INFO L273 TraceCheckUtils]: 253: Hoare triple {75667#(<= main_~i~2 0)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {75674#(<= main_~i~2 1)} is VALID [2018-11-23 12:15:55,495 INFO L273 TraceCheckUtils]: 254: Hoare triple {75674#(<= main_~i~2 1)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {75674#(<= main_~i~2 1)} is VALID [2018-11-23 12:15:55,495 INFO L273 TraceCheckUtils]: 255: Hoare triple {75674#(<= main_~i~2 1)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {75681#(<= main_~i~2 2)} is VALID [2018-11-23 12:15:55,495 INFO L273 TraceCheckUtils]: 256: Hoare triple {75681#(<= main_~i~2 2)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {75681#(<= main_~i~2 2)} is VALID [2018-11-23 12:15:55,496 INFO L273 TraceCheckUtils]: 257: Hoare triple {75681#(<= main_~i~2 2)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {75688#(<= main_~i~2 3)} is VALID [2018-11-23 12:15:55,497 INFO L273 TraceCheckUtils]: 258: Hoare triple {75688#(<= main_~i~2 3)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {75688#(<= main_~i~2 3)} is VALID [2018-11-23 12:15:55,497 INFO L273 TraceCheckUtils]: 259: Hoare triple {75688#(<= main_~i~2 3)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {75695#(<= main_~i~2 4)} is VALID [2018-11-23 12:15:55,498 INFO L273 TraceCheckUtils]: 260: Hoare triple {75695#(<= main_~i~2 4)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {75695#(<= main_~i~2 4)} is VALID [2018-11-23 12:15:55,498 INFO L273 TraceCheckUtils]: 261: Hoare triple {75695#(<= main_~i~2 4)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {75702#(<= main_~i~2 5)} is VALID [2018-11-23 12:15:55,499 INFO L273 TraceCheckUtils]: 262: Hoare triple {75702#(<= main_~i~2 5)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {75702#(<= main_~i~2 5)} is VALID [2018-11-23 12:15:55,500 INFO L273 TraceCheckUtils]: 263: Hoare triple {75702#(<= main_~i~2 5)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {75709#(<= main_~i~2 6)} is VALID [2018-11-23 12:15:55,500 INFO L273 TraceCheckUtils]: 264: Hoare triple {75709#(<= main_~i~2 6)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {75709#(<= main_~i~2 6)} is VALID [2018-11-23 12:15:55,501 INFO L273 TraceCheckUtils]: 265: Hoare triple {75709#(<= main_~i~2 6)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {75716#(<= main_~i~2 7)} is VALID [2018-11-23 12:15:55,501 INFO L273 TraceCheckUtils]: 266: Hoare triple {75716#(<= main_~i~2 7)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {75716#(<= main_~i~2 7)} is VALID [2018-11-23 12:15:55,502 INFO L273 TraceCheckUtils]: 267: Hoare triple {75716#(<= main_~i~2 7)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {75723#(<= main_~i~2 8)} is VALID [2018-11-23 12:15:55,503 INFO L273 TraceCheckUtils]: 268: Hoare triple {75723#(<= main_~i~2 8)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {75723#(<= main_~i~2 8)} is VALID [2018-11-23 12:15:55,503 INFO L273 TraceCheckUtils]: 269: Hoare triple {75723#(<= main_~i~2 8)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {75730#(<= main_~i~2 9)} is VALID [2018-11-23 12:15:55,504 INFO L273 TraceCheckUtils]: 270: Hoare triple {75730#(<= main_~i~2 9)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {75730#(<= main_~i~2 9)} is VALID [2018-11-23 12:15:55,504 INFO L273 TraceCheckUtils]: 271: Hoare triple {75730#(<= main_~i~2 9)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {75737#(<= main_~i~2 10)} is VALID [2018-11-23 12:15:55,505 INFO L273 TraceCheckUtils]: 272: Hoare triple {75737#(<= main_~i~2 10)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {75737#(<= main_~i~2 10)} is VALID [2018-11-23 12:15:55,506 INFO L273 TraceCheckUtils]: 273: Hoare triple {75737#(<= main_~i~2 10)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {75744#(<= main_~i~2 11)} is VALID [2018-11-23 12:15:55,506 INFO L273 TraceCheckUtils]: 274: Hoare triple {75744#(<= main_~i~2 11)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {75744#(<= main_~i~2 11)} is VALID [2018-11-23 12:15:55,507 INFO L273 TraceCheckUtils]: 275: Hoare triple {75744#(<= main_~i~2 11)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {75751#(<= main_~i~2 12)} is VALID [2018-11-23 12:15:55,507 INFO L273 TraceCheckUtils]: 276: Hoare triple {75751#(<= main_~i~2 12)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {75751#(<= main_~i~2 12)} is VALID [2018-11-23 12:15:55,509 INFO L273 TraceCheckUtils]: 277: Hoare triple {75751#(<= main_~i~2 12)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {75758#(<= main_~i~2 13)} is VALID [2018-11-23 12:15:55,509 INFO L273 TraceCheckUtils]: 278: Hoare triple {75758#(<= main_~i~2 13)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {75758#(<= main_~i~2 13)} is VALID [2018-11-23 12:15:55,510 INFO L273 TraceCheckUtils]: 279: Hoare triple {75758#(<= main_~i~2 13)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {75765#(<= main_~i~2 14)} is VALID [2018-11-23 12:15:55,510 INFO L273 TraceCheckUtils]: 280: Hoare triple {75765#(<= main_~i~2 14)} assume !(~i~2 < 39); {74910#false} is VALID [2018-11-23 12:15:55,511 INFO L273 TraceCheckUtils]: 281: Hoare triple {74910#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {74910#false} is VALID [2018-11-23 12:15:55,511 INFO L256 TraceCheckUtils]: 282: Hoare triple {74910#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {74910#false} is VALID [2018-11-23 12:15:55,511 INFO L273 TraceCheckUtils]: 283: Hoare triple {74910#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {74910#false} is VALID [2018-11-23 12:15:55,511 INFO L273 TraceCheckUtils]: 284: Hoare triple {74910#false} assume !!(~i~1 < 40); {74910#false} is VALID [2018-11-23 12:15:55,511 INFO L273 TraceCheckUtils]: 285: Hoare triple {74910#false} assume !(~i~1 > 20); {74910#false} is VALID [2018-11-23 12:15:55,511 INFO L273 TraceCheckUtils]: 286: Hoare triple {74910#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74910#false} is VALID [2018-11-23 12:15:55,512 INFO L273 TraceCheckUtils]: 287: Hoare triple {74910#false} assume !!(~i~1 < 40); {74910#false} is VALID [2018-11-23 12:15:55,512 INFO L273 TraceCheckUtils]: 288: Hoare triple {74910#false} assume !(~i~1 > 20); {74910#false} is VALID [2018-11-23 12:15:55,512 INFO L273 TraceCheckUtils]: 289: Hoare triple {74910#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74910#false} is VALID [2018-11-23 12:15:55,512 INFO L273 TraceCheckUtils]: 290: Hoare triple {74910#false} assume !!(~i~1 < 40); {74910#false} is VALID [2018-11-23 12:15:55,512 INFO L273 TraceCheckUtils]: 291: Hoare triple {74910#false} assume !(~i~1 > 20); {74910#false} is VALID [2018-11-23 12:15:55,512 INFO L273 TraceCheckUtils]: 292: Hoare triple {74910#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74910#false} is VALID [2018-11-23 12:15:55,512 INFO L273 TraceCheckUtils]: 293: Hoare triple {74910#false} assume !!(~i~1 < 40); {74910#false} is VALID [2018-11-23 12:15:55,512 INFO L273 TraceCheckUtils]: 294: Hoare triple {74910#false} assume !(~i~1 > 20); {74910#false} is VALID [2018-11-23 12:15:55,512 INFO L273 TraceCheckUtils]: 295: Hoare triple {74910#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74910#false} is VALID [2018-11-23 12:15:55,513 INFO L273 TraceCheckUtils]: 296: Hoare triple {74910#false} assume !!(~i~1 < 40); {74910#false} is VALID [2018-11-23 12:15:55,513 INFO L273 TraceCheckUtils]: 297: Hoare triple {74910#false} assume !(~i~1 > 20); {74910#false} is VALID [2018-11-23 12:15:55,513 INFO L273 TraceCheckUtils]: 298: Hoare triple {74910#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74910#false} is VALID [2018-11-23 12:15:55,513 INFO L273 TraceCheckUtils]: 299: Hoare triple {74910#false} assume !!(~i~1 < 40); {74910#false} is VALID [2018-11-23 12:15:55,513 INFO L273 TraceCheckUtils]: 300: Hoare triple {74910#false} assume !(~i~1 > 20); {74910#false} is VALID [2018-11-23 12:15:55,513 INFO L273 TraceCheckUtils]: 301: Hoare triple {74910#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74910#false} is VALID [2018-11-23 12:15:55,513 INFO L273 TraceCheckUtils]: 302: Hoare triple {74910#false} assume !!(~i~1 < 40); {74910#false} is VALID [2018-11-23 12:15:55,513 INFO L273 TraceCheckUtils]: 303: Hoare triple {74910#false} assume !(~i~1 > 20); {74910#false} is VALID [2018-11-23 12:15:55,513 INFO L273 TraceCheckUtils]: 304: Hoare triple {74910#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74910#false} is VALID [2018-11-23 12:15:55,513 INFO L273 TraceCheckUtils]: 305: Hoare triple {74910#false} assume !!(~i~1 < 40); {74910#false} is VALID [2018-11-23 12:15:55,514 INFO L273 TraceCheckUtils]: 306: Hoare triple {74910#false} assume !(~i~1 > 20); {74910#false} is VALID [2018-11-23 12:15:55,514 INFO L273 TraceCheckUtils]: 307: Hoare triple {74910#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74910#false} is VALID [2018-11-23 12:15:55,514 INFO L273 TraceCheckUtils]: 308: Hoare triple {74910#false} assume !!(~i~1 < 40); {74910#false} is VALID [2018-11-23 12:15:55,514 INFO L273 TraceCheckUtils]: 309: Hoare triple {74910#false} assume !(~i~1 > 20); {74910#false} is VALID [2018-11-23 12:15:55,514 INFO L273 TraceCheckUtils]: 310: Hoare triple {74910#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74910#false} is VALID [2018-11-23 12:15:55,514 INFO L273 TraceCheckUtils]: 311: Hoare triple {74910#false} assume !!(~i~1 < 40); {74910#false} is VALID [2018-11-23 12:15:55,514 INFO L273 TraceCheckUtils]: 312: Hoare triple {74910#false} assume !(~i~1 > 20); {74910#false} is VALID [2018-11-23 12:15:55,514 INFO L273 TraceCheckUtils]: 313: Hoare triple {74910#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74910#false} is VALID [2018-11-23 12:15:55,514 INFO L273 TraceCheckUtils]: 314: Hoare triple {74910#false} assume !!(~i~1 < 40); {74910#false} is VALID [2018-11-23 12:15:55,514 INFO L273 TraceCheckUtils]: 315: Hoare triple {74910#false} assume !(~i~1 > 20); {74910#false} is VALID [2018-11-23 12:15:55,515 INFO L273 TraceCheckUtils]: 316: Hoare triple {74910#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74910#false} is VALID [2018-11-23 12:15:55,515 INFO L273 TraceCheckUtils]: 317: Hoare triple {74910#false} assume !!(~i~1 < 40); {74910#false} is VALID [2018-11-23 12:15:55,515 INFO L273 TraceCheckUtils]: 318: Hoare triple {74910#false} assume !(~i~1 > 20); {74910#false} is VALID [2018-11-23 12:15:55,515 INFO L273 TraceCheckUtils]: 319: Hoare triple {74910#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74910#false} is VALID [2018-11-23 12:15:55,515 INFO L273 TraceCheckUtils]: 320: Hoare triple {74910#false} assume !!(~i~1 < 40); {74910#false} is VALID [2018-11-23 12:15:55,515 INFO L273 TraceCheckUtils]: 321: Hoare triple {74910#false} assume !(~i~1 > 20); {74910#false} is VALID [2018-11-23 12:15:55,515 INFO L273 TraceCheckUtils]: 322: Hoare triple {74910#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74910#false} is VALID [2018-11-23 12:15:55,515 INFO L273 TraceCheckUtils]: 323: Hoare triple {74910#false} assume !!(~i~1 < 40); {74910#false} is VALID [2018-11-23 12:15:55,515 INFO L273 TraceCheckUtils]: 324: Hoare triple {74910#false} assume !(~i~1 > 20); {74910#false} is VALID [2018-11-23 12:15:55,515 INFO L273 TraceCheckUtils]: 325: Hoare triple {74910#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74910#false} is VALID [2018-11-23 12:15:55,516 INFO L273 TraceCheckUtils]: 326: Hoare triple {74910#false} assume !!(~i~1 < 40); {74910#false} is VALID [2018-11-23 12:15:55,516 INFO L273 TraceCheckUtils]: 327: Hoare triple {74910#false} assume !(~i~1 > 20); {74910#false} is VALID [2018-11-23 12:15:55,516 INFO L273 TraceCheckUtils]: 328: Hoare triple {74910#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74910#false} is VALID [2018-11-23 12:15:55,516 INFO L273 TraceCheckUtils]: 329: Hoare triple {74910#false} assume !!(~i~1 < 40); {74910#false} is VALID [2018-11-23 12:15:55,516 INFO L273 TraceCheckUtils]: 330: Hoare triple {74910#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {74910#false} is VALID [2018-11-23 12:15:55,516 INFO L273 TraceCheckUtils]: 331: Hoare triple {74910#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74910#false} is VALID [2018-11-23 12:15:55,516 INFO L273 TraceCheckUtils]: 332: Hoare triple {74910#false} assume !!(~i~1 < 40); {74910#false} is VALID [2018-11-23 12:15:55,516 INFO L273 TraceCheckUtils]: 333: Hoare triple {74910#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {74910#false} is VALID [2018-11-23 12:15:55,516 INFO L273 TraceCheckUtils]: 334: Hoare triple {74910#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74910#false} is VALID [2018-11-23 12:15:55,516 INFO L273 TraceCheckUtils]: 335: Hoare triple {74910#false} assume !!(~i~1 < 40); {74910#false} is VALID [2018-11-23 12:15:55,517 INFO L273 TraceCheckUtils]: 336: Hoare triple {74910#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {74910#false} is VALID [2018-11-23 12:15:55,517 INFO L273 TraceCheckUtils]: 337: Hoare triple {74910#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74910#false} is VALID [2018-11-23 12:15:55,517 INFO L273 TraceCheckUtils]: 338: Hoare triple {74910#false} assume !!(~i~1 < 40); {74910#false} is VALID [2018-11-23 12:15:55,517 INFO L273 TraceCheckUtils]: 339: Hoare triple {74910#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {74910#false} is VALID [2018-11-23 12:15:55,517 INFO L273 TraceCheckUtils]: 340: Hoare triple {74910#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74910#false} is VALID [2018-11-23 12:15:55,517 INFO L273 TraceCheckUtils]: 341: Hoare triple {74910#false} assume !!(~i~1 < 40); {74910#false} is VALID [2018-11-23 12:15:55,517 INFO L273 TraceCheckUtils]: 342: Hoare triple {74910#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {74910#false} is VALID [2018-11-23 12:15:55,517 INFO L273 TraceCheckUtils]: 343: Hoare triple {74910#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74910#false} is VALID [2018-11-23 12:15:55,517 INFO L273 TraceCheckUtils]: 344: Hoare triple {74910#false} assume !!(~i~1 < 40); {74910#false} is VALID [2018-11-23 12:15:55,517 INFO L273 TraceCheckUtils]: 345: Hoare triple {74910#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {74910#false} is VALID [2018-11-23 12:15:55,518 INFO L273 TraceCheckUtils]: 346: Hoare triple {74910#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74910#false} is VALID [2018-11-23 12:15:55,518 INFO L273 TraceCheckUtils]: 347: Hoare triple {74910#false} assume !!(~i~1 < 40); {74910#false} is VALID [2018-11-23 12:15:55,518 INFO L273 TraceCheckUtils]: 348: Hoare triple {74910#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {74910#false} is VALID [2018-11-23 12:15:55,518 INFO L273 TraceCheckUtils]: 349: Hoare triple {74910#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74910#false} is VALID [2018-11-23 12:15:55,518 INFO L273 TraceCheckUtils]: 350: Hoare triple {74910#false} assume !!(~i~1 < 40); {74910#false} is VALID [2018-11-23 12:15:55,518 INFO L273 TraceCheckUtils]: 351: Hoare triple {74910#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {74910#false} is VALID [2018-11-23 12:15:55,518 INFO L273 TraceCheckUtils]: 352: Hoare triple {74910#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74910#false} is VALID [2018-11-23 12:15:55,518 INFO L273 TraceCheckUtils]: 353: Hoare triple {74910#false} assume !!(~i~1 < 40); {74910#false} is VALID [2018-11-23 12:15:55,518 INFO L273 TraceCheckUtils]: 354: Hoare triple {74910#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {74910#false} is VALID [2018-11-23 12:15:55,518 INFO L273 TraceCheckUtils]: 355: Hoare triple {74910#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74910#false} is VALID [2018-11-23 12:15:55,519 INFO L273 TraceCheckUtils]: 356: Hoare triple {74910#false} assume !!(~i~1 < 40); {74910#false} is VALID [2018-11-23 12:15:55,519 INFO L273 TraceCheckUtils]: 357: Hoare triple {74910#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {74910#false} is VALID [2018-11-23 12:15:55,519 INFO L273 TraceCheckUtils]: 358: Hoare triple {74910#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74910#false} is VALID [2018-11-23 12:15:55,519 INFO L273 TraceCheckUtils]: 359: Hoare triple {74910#false} assume !!(~i~1 < 40); {74910#false} is VALID [2018-11-23 12:15:55,519 INFO L273 TraceCheckUtils]: 360: Hoare triple {74910#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {74910#false} is VALID [2018-11-23 12:15:55,519 INFO L273 TraceCheckUtils]: 361: Hoare triple {74910#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74910#false} is VALID [2018-11-23 12:15:55,519 INFO L273 TraceCheckUtils]: 362: Hoare triple {74910#false} assume !!(~i~1 < 40); {74910#false} is VALID [2018-11-23 12:15:55,519 INFO L273 TraceCheckUtils]: 363: Hoare triple {74910#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {74910#false} is VALID [2018-11-23 12:15:55,519 INFO L273 TraceCheckUtils]: 364: Hoare triple {74910#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74910#false} is VALID [2018-11-23 12:15:55,519 INFO L273 TraceCheckUtils]: 365: Hoare triple {74910#false} assume !!(~i~1 < 40); {74910#false} is VALID [2018-11-23 12:15:55,520 INFO L273 TraceCheckUtils]: 366: Hoare triple {74910#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {74910#false} is VALID [2018-11-23 12:15:55,520 INFO L273 TraceCheckUtils]: 367: Hoare triple {74910#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74910#false} is VALID [2018-11-23 12:15:55,520 INFO L273 TraceCheckUtils]: 368: Hoare triple {74910#false} assume !!(~i~1 < 40); {74910#false} is VALID [2018-11-23 12:15:55,520 INFO L273 TraceCheckUtils]: 369: Hoare triple {74910#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {74910#false} is VALID [2018-11-23 12:15:55,520 INFO L273 TraceCheckUtils]: 370: Hoare triple {74910#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74910#false} is VALID [2018-11-23 12:15:55,520 INFO L273 TraceCheckUtils]: 371: Hoare triple {74910#false} assume !!(~i~1 < 40); {74910#false} is VALID [2018-11-23 12:15:55,520 INFO L273 TraceCheckUtils]: 372: Hoare triple {74910#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {74910#false} is VALID [2018-11-23 12:15:55,520 INFO L273 TraceCheckUtils]: 373: Hoare triple {74910#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {74910#false} is VALID [2018-11-23 12:15:55,520 INFO L273 TraceCheckUtils]: 374: Hoare triple {74910#false} assume !(~i~1 < 40); {74910#false} is VALID [2018-11-23 12:15:55,521 INFO L273 TraceCheckUtils]: 375: Hoare triple {74910#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {74910#false} is VALID [2018-11-23 12:15:55,521 INFO L273 TraceCheckUtils]: 376: Hoare triple {74910#false} assume true; {74910#false} is VALID [2018-11-23 12:15:55,521 INFO L268 TraceCheckUtils]: 377: Hoare quadruple {74910#false} {74910#false} #88#return; {74910#false} is VALID [2018-11-23 12:15:55,521 INFO L273 TraceCheckUtils]: 378: Hoare triple {74910#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {74910#false} is VALID [2018-11-23 12:15:55,521 INFO L273 TraceCheckUtils]: 379: Hoare triple {74910#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {74910#false} is VALID [2018-11-23 12:15:55,521 INFO L273 TraceCheckUtils]: 380: Hoare triple {74910#false} assume !false; {74910#false} is VALID [2018-11-23 12:15:55,570 INFO L134 CoverageAnalysis]: Checked inductivity of 13025 backedges. 5530 proven. 196 refuted. 0 times theorem prover too weak. 7299 trivial. 0 not checked. [2018-11-23 12:15:55,590 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:15:55,590 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [17] total 17 [2018-11-23 12:15:55,591 INFO L78 Accepts]: Start accepts. Automaton has 17 states. Word has length 381 [2018-11-23 12:15:55,591 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:15:55,591 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states. [2018-11-23 12:15:55,665 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 71 edges. 71 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:15:55,665 INFO L459 AbstractCegarLoop]: Interpolant automaton has 17 states [2018-11-23 12:15:55,665 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2018-11-23 12:15:55,666 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=136, Invalid=136, Unknown=0, NotChecked=0, Total=272 [2018-11-23 12:15:55,666 INFO L87 Difference]: Start difference. First operand 192 states and 212 transitions. Second operand 17 states. [2018-11-23 12:15:56,072 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:56,072 INFO L93 Difference]: Finished difference Result 296 states and 333 transitions. [2018-11-23 12:15:56,072 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2018-11-23 12:15:56,072 INFO L78 Accepts]: Start accepts. Automaton has 17 states. Word has length 381 [2018-11-23 12:15:56,072 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:15:56,072 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 17 states. [2018-11-23 12:15:56,073 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 84 transitions. [2018-11-23 12:15:56,073 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 17 states. [2018-11-23 12:15:56,074 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 84 transitions. [2018-11-23 12:15:56,074 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states and 84 transitions. [2018-11-23 12:15:56,148 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-23 12:15:56,153 INFO L225 Difference]: With dead ends: 296 [2018-11-23 12:15:56,153 INFO L226 Difference]: Without dead ends: 195 [2018-11-23 12:15:56,153 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 380 GetRequests, 365 SyntacticMatches, 0 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=136, Invalid=136, Unknown=0, NotChecked=0, Total=272 [2018-11-23 12:15:56,153 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 195 states. [2018-11-23 12:15:56,244 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 195 to 194. [2018-11-23 12:15:56,245 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:15:56,245 INFO L82 GeneralOperation]: Start isEquivalent. First operand 195 states. Second operand 194 states. [2018-11-23 12:15:56,245 INFO L74 IsIncluded]: Start isIncluded. First operand 195 states. Second operand 194 states. [2018-11-23 12:15:56,245 INFO L87 Difference]: Start difference. First operand 195 states. Second operand 194 states. [2018-11-23 12:15:56,250 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:56,250 INFO L93 Difference]: Finished difference Result 195 states and 215 transitions. [2018-11-23 12:15:56,250 INFO L276 IsEmpty]: Start isEmpty. Operand 195 states and 215 transitions. [2018-11-23 12:15:56,250 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:15:56,250 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:15:56,250 INFO L74 IsIncluded]: Start isIncluded. First operand 194 states. Second operand 195 states. [2018-11-23 12:15:56,250 INFO L87 Difference]: Start difference. First operand 194 states. Second operand 195 states. [2018-11-23 12:15:56,253 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:56,253 INFO L93 Difference]: Finished difference Result 195 states and 215 transitions. [2018-11-23 12:15:56,253 INFO L276 IsEmpty]: Start isEmpty. Operand 195 states and 215 transitions. [2018-11-23 12:15:56,254 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:15:56,254 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:15:56,254 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:15:56,254 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:15:56,254 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 194 states. [2018-11-23 12:15:56,257 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 194 states to 194 states and 214 transitions. [2018-11-23 12:15:56,257 INFO L78 Accepts]: Start accepts. Automaton has 194 states and 214 transitions. Word has length 381 [2018-11-23 12:15:56,257 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:15:56,257 INFO L480 AbstractCegarLoop]: Abstraction has 194 states and 214 transitions. [2018-11-23 12:15:56,257 INFO L481 AbstractCegarLoop]: Interpolant automaton has 17 states. [2018-11-23 12:15:56,257 INFO L276 IsEmpty]: Start isEmpty. Operand 194 states and 214 transitions. [2018-11-23 12:15:56,259 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 384 [2018-11-23 12:15:56,259 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:15:56,259 INFO L402 BasicCegarLoop]: trace histogram [90, 90, 45, 45, 23, 23, 15, 15, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:15:56,259 INFO L423 AbstractCegarLoop]: === Iteration 63 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:15:56,259 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:15:56,260 INFO L82 PathProgramCache]: Analyzing trace with hash 364378794, now seen corresponding path program 58 times [2018-11-23 12:15:56,260 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:15:56,260 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:15:56,260 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:15:56,260 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:15:56,260 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:15:56,272 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:15:56,272 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:15:56,272 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 64 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 64 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:15:56,286 INFO L103 rtionOrderModulation]: Keeping assertion order TERMS_WITH_SMALL_CONSTANTS_FIRST [2018-11-23 12:15:56,418 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2018-11-23 12:15:56,418 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:15:56,488 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:15:56,490 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:15:57,415 INFO L256 TraceCheckUtils]: 0: Hoare triple {77143#true} call ULTIMATE.init(); {77143#true} is VALID [2018-11-23 12:15:57,415 INFO L273 TraceCheckUtils]: 1: Hoare triple {77143#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {77143#true} is VALID [2018-11-23 12:15:57,416 INFO L273 TraceCheckUtils]: 2: Hoare triple {77143#true} assume true; {77143#true} is VALID [2018-11-23 12:15:57,416 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {77143#true} {77143#true} #78#return; {77143#true} is VALID [2018-11-23 12:15:57,416 INFO L256 TraceCheckUtils]: 4: Hoare triple {77143#true} call #t~ret12 := main(); {77143#true} is VALID [2018-11-23 12:15:57,416 INFO L273 TraceCheckUtils]: 5: Hoare triple {77143#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {77143#true} is VALID [2018-11-23 12:15:57,416 INFO L256 TraceCheckUtils]: 6: Hoare triple {77143#true} call init_nondet(~#x~0.base, ~#x~0.offset); {77143#true} is VALID [2018-11-23 12:15:57,417 INFO L273 TraceCheckUtils]: 7: Hoare triple {77143#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {77169#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:15:57,417 INFO L273 TraceCheckUtils]: 8: Hoare triple {77169#(<= init_nondet_~i~0 0)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {77169#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:15:57,418 INFO L273 TraceCheckUtils]: 9: Hoare triple {77169#(<= init_nondet_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {77176#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:15:57,418 INFO L273 TraceCheckUtils]: 10: Hoare triple {77176#(<= init_nondet_~i~0 1)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {77176#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:15:57,418 INFO L273 TraceCheckUtils]: 11: Hoare triple {77176#(<= init_nondet_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {77183#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:15:57,419 INFO L273 TraceCheckUtils]: 12: Hoare triple {77183#(<= init_nondet_~i~0 2)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {77183#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:15:57,419 INFO L273 TraceCheckUtils]: 13: Hoare triple {77183#(<= init_nondet_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {77190#(<= init_nondet_~i~0 3)} is VALID [2018-11-23 12:15:57,420 INFO L273 TraceCheckUtils]: 14: Hoare triple {77190#(<= init_nondet_~i~0 3)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {77190#(<= init_nondet_~i~0 3)} is VALID [2018-11-23 12:15:57,420 INFO L273 TraceCheckUtils]: 15: Hoare triple {77190#(<= init_nondet_~i~0 3)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {77197#(<= init_nondet_~i~0 4)} is VALID [2018-11-23 12:15:57,420 INFO L273 TraceCheckUtils]: 16: Hoare triple {77197#(<= init_nondet_~i~0 4)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {77197#(<= init_nondet_~i~0 4)} is VALID [2018-11-23 12:15:57,421 INFO L273 TraceCheckUtils]: 17: Hoare triple {77197#(<= init_nondet_~i~0 4)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {77204#(<= init_nondet_~i~0 5)} is VALID [2018-11-23 12:15:57,422 INFO L273 TraceCheckUtils]: 18: Hoare triple {77204#(<= init_nondet_~i~0 5)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {77204#(<= init_nondet_~i~0 5)} is VALID [2018-11-23 12:15:57,422 INFO L273 TraceCheckUtils]: 19: Hoare triple {77204#(<= init_nondet_~i~0 5)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {77211#(<= init_nondet_~i~0 6)} is VALID [2018-11-23 12:15:57,423 INFO L273 TraceCheckUtils]: 20: Hoare triple {77211#(<= init_nondet_~i~0 6)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {77211#(<= init_nondet_~i~0 6)} is VALID [2018-11-23 12:15:57,423 INFO L273 TraceCheckUtils]: 21: Hoare triple {77211#(<= init_nondet_~i~0 6)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {77218#(<= init_nondet_~i~0 7)} is VALID [2018-11-23 12:15:57,424 INFO L273 TraceCheckUtils]: 22: Hoare triple {77218#(<= init_nondet_~i~0 7)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {77218#(<= init_nondet_~i~0 7)} is VALID [2018-11-23 12:15:57,425 INFO L273 TraceCheckUtils]: 23: Hoare triple {77218#(<= init_nondet_~i~0 7)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {77225#(<= init_nondet_~i~0 8)} is VALID [2018-11-23 12:15:57,425 INFO L273 TraceCheckUtils]: 24: Hoare triple {77225#(<= init_nondet_~i~0 8)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {77225#(<= init_nondet_~i~0 8)} is VALID [2018-11-23 12:15:57,426 INFO L273 TraceCheckUtils]: 25: Hoare triple {77225#(<= init_nondet_~i~0 8)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {77232#(<= init_nondet_~i~0 9)} is VALID [2018-11-23 12:15:57,426 INFO L273 TraceCheckUtils]: 26: Hoare triple {77232#(<= init_nondet_~i~0 9)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {77232#(<= init_nondet_~i~0 9)} is VALID [2018-11-23 12:15:57,427 INFO L273 TraceCheckUtils]: 27: Hoare triple {77232#(<= init_nondet_~i~0 9)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {77239#(<= init_nondet_~i~0 10)} is VALID [2018-11-23 12:15:57,428 INFO L273 TraceCheckUtils]: 28: Hoare triple {77239#(<= init_nondet_~i~0 10)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {77239#(<= init_nondet_~i~0 10)} is VALID [2018-11-23 12:15:57,428 INFO L273 TraceCheckUtils]: 29: Hoare triple {77239#(<= init_nondet_~i~0 10)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {77246#(<= init_nondet_~i~0 11)} is VALID [2018-11-23 12:15:57,429 INFO L273 TraceCheckUtils]: 30: Hoare triple {77246#(<= init_nondet_~i~0 11)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {77246#(<= init_nondet_~i~0 11)} is VALID [2018-11-23 12:15:57,429 INFO L273 TraceCheckUtils]: 31: Hoare triple {77246#(<= init_nondet_~i~0 11)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {77253#(<= init_nondet_~i~0 12)} is VALID [2018-11-23 12:15:57,430 INFO L273 TraceCheckUtils]: 32: Hoare triple {77253#(<= init_nondet_~i~0 12)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {77253#(<= init_nondet_~i~0 12)} is VALID [2018-11-23 12:15:57,431 INFO L273 TraceCheckUtils]: 33: Hoare triple {77253#(<= init_nondet_~i~0 12)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {77260#(<= init_nondet_~i~0 13)} is VALID [2018-11-23 12:15:57,431 INFO L273 TraceCheckUtils]: 34: Hoare triple {77260#(<= init_nondet_~i~0 13)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {77260#(<= init_nondet_~i~0 13)} is VALID [2018-11-23 12:15:57,432 INFO L273 TraceCheckUtils]: 35: Hoare triple {77260#(<= init_nondet_~i~0 13)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {77267#(<= init_nondet_~i~0 14)} is VALID [2018-11-23 12:15:57,432 INFO L273 TraceCheckUtils]: 36: Hoare triple {77267#(<= init_nondet_~i~0 14)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {77267#(<= init_nondet_~i~0 14)} is VALID [2018-11-23 12:15:57,433 INFO L273 TraceCheckUtils]: 37: Hoare triple {77267#(<= init_nondet_~i~0 14)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {77274#(<= init_nondet_~i~0 15)} is VALID [2018-11-23 12:15:57,433 INFO L273 TraceCheckUtils]: 38: Hoare triple {77274#(<= init_nondet_~i~0 15)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {77274#(<= init_nondet_~i~0 15)} is VALID [2018-11-23 12:15:57,434 INFO L273 TraceCheckUtils]: 39: Hoare triple {77274#(<= init_nondet_~i~0 15)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {77281#(<= init_nondet_~i~0 16)} is VALID [2018-11-23 12:15:57,435 INFO L273 TraceCheckUtils]: 40: Hoare triple {77281#(<= init_nondet_~i~0 16)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {77281#(<= init_nondet_~i~0 16)} is VALID [2018-11-23 12:15:57,435 INFO L273 TraceCheckUtils]: 41: Hoare triple {77281#(<= init_nondet_~i~0 16)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {77288#(<= init_nondet_~i~0 17)} is VALID [2018-11-23 12:15:57,436 INFO L273 TraceCheckUtils]: 42: Hoare triple {77288#(<= init_nondet_~i~0 17)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {77288#(<= init_nondet_~i~0 17)} is VALID [2018-11-23 12:15:57,436 INFO L273 TraceCheckUtils]: 43: Hoare triple {77288#(<= init_nondet_~i~0 17)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {77295#(<= init_nondet_~i~0 18)} is VALID [2018-11-23 12:15:57,437 INFO L273 TraceCheckUtils]: 44: Hoare triple {77295#(<= init_nondet_~i~0 18)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {77295#(<= init_nondet_~i~0 18)} is VALID [2018-11-23 12:15:57,438 INFO L273 TraceCheckUtils]: 45: Hoare triple {77295#(<= init_nondet_~i~0 18)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {77302#(<= init_nondet_~i~0 19)} is VALID [2018-11-23 12:15:57,438 INFO L273 TraceCheckUtils]: 46: Hoare triple {77302#(<= init_nondet_~i~0 19)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {77302#(<= init_nondet_~i~0 19)} is VALID [2018-11-23 12:15:57,439 INFO L273 TraceCheckUtils]: 47: Hoare triple {77302#(<= init_nondet_~i~0 19)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {77309#(<= init_nondet_~i~0 20)} is VALID [2018-11-23 12:15:57,439 INFO L273 TraceCheckUtils]: 48: Hoare triple {77309#(<= init_nondet_~i~0 20)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {77309#(<= init_nondet_~i~0 20)} is VALID [2018-11-23 12:15:57,440 INFO L273 TraceCheckUtils]: 49: Hoare triple {77309#(<= init_nondet_~i~0 20)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {77316#(<= init_nondet_~i~0 21)} is VALID [2018-11-23 12:15:57,441 INFO L273 TraceCheckUtils]: 50: Hoare triple {77316#(<= init_nondet_~i~0 21)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {77316#(<= init_nondet_~i~0 21)} is VALID [2018-11-23 12:15:57,441 INFO L273 TraceCheckUtils]: 51: Hoare triple {77316#(<= init_nondet_~i~0 21)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {77323#(<= init_nondet_~i~0 22)} is VALID [2018-11-23 12:15:57,442 INFO L273 TraceCheckUtils]: 52: Hoare triple {77323#(<= init_nondet_~i~0 22)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {77323#(<= init_nondet_~i~0 22)} is VALID [2018-11-23 12:15:57,442 INFO L273 TraceCheckUtils]: 53: Hoare triple {77323#(<= init_nondet_~i~0 22)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {77330#(<= init_nondet_~i~0 23)} is VALID [2018-11-23 12:15:57,443 INFO L273 TraceCheckUtils]: 54: Hoare triple {77330#(<= init_nondet_~i~0 23)} assume !(~i~0 < 40); {77144#false} is VALID [2018-11-23 12:15:57,443 INFO L273 TraceCheckUtils]: 55: Hoare triple {77144#false} assume true; {77144#false} is VALID [2018-11-23 12:15:57,443 INFO L268 TraceCheckUtils]: 56: Hoare quadruple {77144#false} {77143#true} #82#return; {77144#false} is VALID [2018-11-23 12:15:57,444 INFO L273 TraceCheckUtils]: 57: Hoare triple {77144#false} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {77144#false} is VALID [2018-11-23 12:15:57,444 INFO L256 TraceCheckUtils]: 58: Hoare triple {77144#false} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {77144#false} is VALID [2018-11-23 12:15:57,444 INFO L273 TraceCheckUtils]: 59: Hoare triple {77144#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {77144#false} is VALID [2018-11-23 12:15:57,444 INFO L273 TraceCheckUtils]: 60: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,444 INFO L273 TraceCheckUtils]: 61: Hoare triple {77144#false} assume !(~i~1 > 20); {77144#false} is VALID [2018-11-23 12:15:57,444 INFO L273 TraceCheckUtils]: 62: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,445 INFO L273 TraceCheckUtils]: 63: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,445 INFO L273 TraceCheckUtils]: 64: Hoare triple {77144#false} assume !(~i~1 > 20); {77144#false} is VALID [2018-11-23 12:15:57,445 INFO L273 TraceCheckUtils]: 65: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,445 INFO L273 TraceCheckUtils]: 66: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,445 INFO L273 TraceCheckUtils]: 67: Hoare triple {77144#false} assume !(~i~1 > 20); {77144#false} is VALID [2018-11-23 12:15:57,445 INFO L273 TraceCheckUtils]: 68: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,446 INFO L273 TraceCheckUtils]: 69: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,446 INFO L273 TraceCheckUtils]: 70: Hoare triple {77144#false} assume !(~i~1 > 20); {77144#false} is VALID [2018-11-23 12:15:57,446 INFO L273 TraceCheckUtils]: 71: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,446 INFO L273 TraceCheckUtils]: 72: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,446 INFO L273 TraceCheckUtils]: 73: Hoare triple {77144#false} assume !(~i~1 > 20); {77144#false} is VALID [2018-11-23 12:15:57,446 INFO L273 TraceCheckUtils]: 74: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,446 INFO L273 TraceCheckUtils]: 75: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,447 INFO L273 TraceCheckUtils]: 76: Hoare triple {77144#false} assume !(~i~1 > 20); {77144#false} is VALID [2018-11-23 12:15:57,447 INFO L273 TraceCheckUtils]: 77: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,447 INFO L273 TraceCheckUtils]: 78: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,447 INFO L273 TraceCheckUtils]: 79: Hoare triple {77144#false} assume !(~i~1 > 20); {77144#false} is VALID [2018-11-23 12:15:57,447 INFO L273 TraceCheckUtils]: 80: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,447 INFO L273 TraceCheckUtils]: 81: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,447 INFO L273 TraceCheckUtils]: 82: Hoare triple {77144#false} assume !(~i~1 > 20); {77144#false} is VALID [2018-11-23 12:15:57,447 INFO L273 TraceCheckUtils]: 83: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,447 INFO L273 TraceCheckUtils]: 84: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,447 INFO L273 TraceCheckUtils]: 85: Hoare triple {77144#false} assume !(~i~1 > 20); {77144#false} is VALID [2018-11-23 12:15:57,448 INFO L273 TraceCheckUtils]: 86: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,448 INFO L273 TraceCheckUtils]: 87: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,448 INFO L273 TraceCheckUtils]: 88: Hoare triple {77144#false} assume !(~i~1 > 20); {77144#false} is VALID [2018-11-23 12:15:57,448 INFO L273 TraceCheckUtils]: 89: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,448 INFO L273 TraceCheckUtils]: 90: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,448 INFO L273 TraceCheckUtils]: 91: Hoare triple {77144#false} assume !(~i~1 > 20); {77144#false} is VALID [2018-11-23 12:15:57,448 INFO L273 TraceCheckUtils]: 92: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,448 INFO L273 TraceCheckUtils]: 93: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,448 INFO L273 TraceCheckUtils]: 94: Hoare triple {77144#false} assume !(~i~1 > 20); {77144#false} is VALID [2018-11-23 12:15:57,449 INFO L273 TraceCheckUtils]: 95: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,449 INFO L273 TraceCheckUtils]: 96: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,449 INFO L273 TraceCheckUtils]: 97: Hoare triple {77144#false} assume !(~i~1 > 20); {77144#false} is VALID [2018-11-23 12:15:57,449 INFO L273 TraceCheckUtils]: 98: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,449 INFO L273 TraceCheckUtils]: 99: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,449 INFO L273 TraceCheckUtils]: 100: Hoare triple {77144#false} assume !(~i~1 > 20); {77144#false} is VALID [2018-11-23 12:15:57,449 INFO L273 TraceCheckUtils]: 101: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,449 INFO L273 TraceCheckUtils]: 102: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,449 INFO L273 TraceCheckUtils]: 103: Hoare triple {77144#false} assume !(~i~1 > 20); {77144#false} is VALID [2018-11-23 12:15:57,449 INFO L273 TraceCheckUtils]: 104: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,450 INFO L273 TraceCheckUtils]: 105: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,450 INFO L273 TraceCheckUtils]: 106: Hoare triple {77144#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {77144#false} is VALID [2018-11-23 12:15:57,450 INFO L273 TraceCheckUtils]: 107: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,450 INFO L273 TraceCheckUtils]: 108: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,450 INFO L273 TraceCheckUtils]: 109: Hoare triple {77144#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {77144#false} is VALID [2018-11-23 12:15:57,450 INFO L273 TraceCheckUtils]: 110: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,450 INFO L273 TraceCheckUtils]: 111: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,450 INFO L273 TraceCheckUtils]: 112: Hoare triple {77144#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {77144#false} is VALID [2018-11-23 12:15:57,450 INFO L273 TraceCheckUtils]: 113: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,450 INFO L273 TraceCheckUtils]: 114: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,451 INFO L273 TraceCheckUtils]: 115: Hoare triple {77144#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {77144#false} is VALID [2018-11-23 12:15:57,451 INFO L273 TraceCheckUtils]: 116: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,451 INFO L273 TraceCheckUtils]: 117: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,451 INFO L273 TraceCheckUtils]: 118: Hoare triple {77144#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {77144#false} is VALID [2018-11-23 12:15:57,451 INFO L273 TraceCheckUtils]: 119: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,451 INFO L273 TraceCheckUtils]: 120: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,451 INFO L273 TraceCheckUtils]: 121: Hoare triple {77144#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {77144#false} is VALID [2018-11-23 12:15:57,451 INFO L273 TraceCheckUtils]: 122: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,451 INFO L273 TraceCheckUtils]: 123: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,451 INFO L273 TraceCheckUtils]: 124: Hoare triple {77144#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {77144#false} is VALID [2018-11-23 12:15:57,452 INFO L273 TraceCheckUtils]: 125: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,452 INFO L273 TraceCheckUtils]: 126: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,452 INFO L273 TraceCheckUtils]: 127: Hoare triple {77144#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {77144#false} is VALID [2018-11-23 12:15:57,452 INFO L273 TraceCheckUtils]: 128: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,452 INFO L273 TraceCheckUtils]: 129: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,452 INFO L273 TraceCheckUtils]: 130: Hoare triple {77144#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {77144#false} is VALID [2018-11-23 12:15:57,452 INFO L273 TraceCheckUtils]: 131: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,452 INFO L273 TraceCheckUtils]: 132: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,452 INFO L273 TraceCheckUtils]: 133: Hoare triple {77144#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {77144#false} is VALID [2018-11-23 12:15:57,452 INFO L273 TraceCheckUtils]: 134: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,453 INFO L273 TraceCheckUtils]: 135: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,453 INFO L273 TraceCheckUtils]: 136: Hoare triple {77144#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {77144#false} is VALID [2018-11-23 12:15:57,453 INFO L273 TraceCheckUtils]: 137: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,453 INFO L273 TraceCheckUtils]: 138: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,453 INFO L273 TraceCheckUtils]: 139: Hoare triple {77144#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {77144#false} is VALID [2018-11-23 12:15:57,453 INFO L273 TraceCheckUtils]: 140: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,453 INFO L273 TraceCheckUtils]: 141: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,453 INFO L273 TraceCheckUtils]: 142: Hoare triple {77144#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {77144#false} is VALID [2018-11-23 12:15:57,453 INFO L273 TraceCheckUtils]: 143: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,454 INFO L273 TraceCheckUtils]: 144: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,454 INFO L273 TraceCheckUtils]: 145: Hoare triple {77144#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {77144#false} is VALID [2018-11-23 12:15:57,454 INFO L273 TraceCheckUtils]: 146: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,454 INFO L273 TraceCheckUtils]: 147: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,454 INFO L273 TraceCheckUtils]: 148: Hoare triple {77144#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {77144#false} is VALID [2018-11-23 12:15:57,454 INFO L273 TraceCheckUtils]: 149: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,454 INFO L273 TraceCheckUtils]: 150: Hoare triple {77144#false} assume !(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,454 INFO L273 TraceCheckUtils]: 151: Hoare triple {77144#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {77144#false} is VALID [2018-11-23 12:15:57,454 INFO L273 TraceCheckUtils]: 152: Hoare triple {77144#false} assume true; {77144#false} is VALID [2018-11-23 12:15:57,454 INFO L268 TraceCheckUtils]: 153: Hoare quadruple {77144#false} {77144#false} #84#return; {77144#false} is VALID [2018-11-23 12:15:57,455 INFO L273 TraceCheckUtils]: 154: Hoare triple {77144#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {77144#false} is VALID [2018-11-23 12:15:57,455 INFO L256 TraceCheckUtils]: 155: Hoare triple {77144#false} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {77144#false} is VALID [2018-11-23 12:15:57,455 INFO L273 TraceCheckUtils]: 156: Hoare triple {77144#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {77144#false} is VALID [2018-11-23 12:15:57,455 INFO L273 TraceCheckUtils]: 157: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,455 INFO L273 TraceCheckUtils]: 158: Hoare triple {77144#false} assume !(~i~1 > 20); {77144#false} is VALID [2018-11-23 12:15:57,455 INFO L273 TraceCheckUtils]: 159: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,455 INFO L273 TraceCheckUtils]: 160: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,455 INFO L273 TraceCheckUtils]: 161: Hoare triple {77144#false} assume !(~i~1 > 20); {77144#false} is VALID [2018-11-23 12:15:57,455 INFO L273 TraceCheckUtils]: 162: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,455 INFO L273 TraceCheckUtils]: 163: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,456 INFO L273 TraceCheckUtils]: 164: Hoare triple {77144#false} assume !(~i~1 > 20); {77144#false} is VALID [2018-11-23 12:15:57,456 INFO L273 TraceCheckUtils]: 165: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,456 INFO L273 TraceCheckUtils]: 166: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,456 INFO L273 TraceCheckUtils]: 167: Hoare triple {77144#false} assume !(~i~1 > 20); {77144#false} is VALID [2018-11-23 12:15:57,456 INFO L273 TraceCheckUtils]: 168: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,456 INFO L273 TraceCheckUtils]: 169: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,456 INFO L273 TraceCheckUtils]: 170: Hoare triple {77144#false} assume !(~i~1 > 20); {77144#false} is VALID [2018-11-23 12:15:57,456 INFO L273 TraceCheckUtils]: 171: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,456 INFO L273 TraceCheckUtils]: 172: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,456 INFO L273 TraceCheckUtils]: 173: Hoare triple {77144#false} assume !(~i~1 > 20); {77144#false} is VALID [2018-11-23 12:15:57,457 INFO L273 TraceCheckUtils]: 174: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,457 INFO L273 TraceCheckUtils]: 175: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,457 INFO L273 TraceCheckUtils]: 176: Hoare triple {77144#false} assume !(~i~1 > 20); {77144#false} is VALID [2018-11-23 12:15:57,457 INFO L273 TraceCheckUtils]: 177: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,457 INFO L273 TraceCheckUtils]: 178: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,457 INFO L273 TraceCheckUtils]: 179: Hoare triple {77144#false} assume !(~i~1 > 20); {77144#false} is VALID [2018-11-23 12:15:57,457 INFO L273 TraceCheckUtils]: 180: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,457 INFO L273 TraceCheckUtils]: 181: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,457 INFO L273 TraceCheckUtils]: 182: Hoare triple {77144#false} assume !(~i~1 > 20); {77144#false} is VALID [2018-11-23 12:15:57,458 INFO L273 TraceCheckUtils]: 183: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,458 INFO L273 TraceCheckUtils]: 184: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,458 INFO L273 TraceCheckUtils]: 185: Hoare triple {77144#false} assume !(~i~1 > 20); {77144#false} is VALID [2018-11-23 12:15:57,458 INFO L273 TraceCheckUtils]: 186: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,458 INFO L273 TraceCheckUtils]: 187: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,458 INFO L273 TraceCheckUtils]: 188: Hoare triple {77144#false} assume !(~i~1 > 20); {77144#false} is VALID [2018-11-23 12:15:57,458 INFO L273 TraceCheckUtils]: 189: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,458 INFO L273 TraceCheckUtils]: 190: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,458 INFO L273 TraceCheckUtils]: 191: Hoare triple {77144#false} assume !(~i~1 > 20); {77144#false} is VALID [2018-11-23 12:15:57,458 INFO L273 TraceCheckUtils]: 192: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,459 INFO L273 TraceCheckUtils]: 193: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,459 INFO L273 TraceCheckUtils]: 194: Hoare triple {77144#false} assume !(~i~1 > 20); {77144#false} is VALID [2018-11-23 12:15:57,459 INFO L273 TraceCheckUtils]: 195: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,459 INFO L273 TraceCheckUtils]: 196: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,459 INFO L273 TraceCheckUtils]: 197: Hoare triple {77144#false} assume !(~i~1 > 20); {77144#false} is VALID [2018-11-23 12:15:57,459 INFO L273 TraceCheckUtils]: 198: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,459 INFO L273 TraceCheckUtils]: 199: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,459 INFO L273 TraceCheckUtils]: 200: Hoare triple {77144#false} assume !(~i~1 > 20); {77144#false} is VALID [2018-11-23 12:15:57,459 INFO L273 TraceCheckUtils]: 201: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,459 INFO L273 TraceCheckUtils]: 202: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,460 INFO L273 TraceCheckUtils]: 203: Hoare triple {77144#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {77144#false} is VALID [2018-11-23 12:15:57,460 INFO L273 TraceCheckUtils]: 204: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,460 INFO L273 TraceCheckUtils]: 205: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,460 INFO L273 TraceCheckUtils]: 206: Hoare triple {77144#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {77144#false} is VALID [2018-11-23 12:15:57,460 INFO L273 TraceCheckUtils]: 207: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,460 INFO L273 TraceCheckUtils]: 208: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,460 INFO L273 TraceCheckUtils]: 209: Hoare triple {77144#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {77144#false} is VALID [2018-11-23 12:15:57,460 INFO L273 TraceCheckUtils]: 210: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,460 INFO L273 TraceCheckUtils]: 211: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,460 INFO L273 TraceCheckUtils]: 212: Hoare triple {77144#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {77144#false} is VALID [2018-11-23 12:15:57,461 INFO L273 TraceCheckUtils]: 213: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,461 INFO L273 TraceCheckUtils]: 214: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,461 INFO L273 TraceCheckUtils]: 215: Hoare triple {77144#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {77144#false} is VALID [2018-11-23 12:15:57,461 INFO L273 TraceCheckUtils]: 216: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,461 INFO L273 TraceCheckUtils]: 217: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,461 INFO L273 TraceCheckUtils]: 218: Hoare triple {77144#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {77144#false} is VALID [2018-11-23 12:15:57,461 INFO L273 TraceCheckUtils]: 219: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,461 INFO L273 TraceCheckUtils]: 220: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,461 INFO L273 TraceCheckUtils]: 221: Hoare triple {77144#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {77144#false} is VALID [2018-11-23 12:15:57,461 INFO L273 TraceCheckUtils]: 222: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,462 INFO L273 TraceCheckUtils]: 223: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,462 INFO L273 TraceCheckUtils]: 224: Hoare triple {77144#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {77144#false} is VALID [2018-11-23 12:15:57,462 INFO L273 TraceCheckUtils]: 225: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,462 INFO L273 TraceCheckUtils]: 226: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,462 INFO L273 TraceCheckUtils]: 227: Hoare triple {77144#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {77144#false} is VALID [2018-11-23 12:15:57,462 INFO L273 TraceCheckUtils]: 228: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,462 INFO L273 TraceCheckUtils]: 229: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,462 INFO L273 TraceCheckUtils]: 230: Hoare triple {77144#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {77144#false} is VALID [2018-11-23 12:15:57,462 INFO L273 TraceCheckUtils]: 231: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,463 INFO L273 TraceCheckUtils]: 232: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,463 INFO L273 TraceCheckUtils]: 233: Hoare triple {77144#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {77144#false} is VALID [2018-11-23 12:15:57,463 INFO L273 TraceCheckUtils]: 234: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,463 INFO L273 TraceCheckUtils]: 235: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,463 INFO L273 TraceCheckUtils]: 236: Hoare triple {77144#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {77144#false} is VALID [2018-11-23 12:15:57,463 INFO L273 TraceCheckUtils]: 237: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,463 INFO L273 TraceCheckUtils]: 238: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,463 INFO L273 TraceCheckUtils]: 239: Hoare triple {77144#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {77144#false} is VALID [2018-11-23 12:15:57,463 INFO L273 TraceCheckUtils]: 240: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,463 INFO L273 TraceCheckUtils]: 241: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,464 INFO L273 TraceCheckUtils]: 242: Hoare triple {77144#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {77144#false} is VALID [2018-11-23 12:15:57,464 INFO L273 TraceCheckUtils]: 243: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,464 INFO L273 TraceCheckUtils]: 244: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,464 INFO L273 TraceCheckUtils]: 245: Hoare triple {77144#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {77144#false} is VALID [2018-11-23 12:15:57,464 INFO L273 TraceCheckUtils]: 246: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,464 INFO L273 TraceCheckUtils]: 247: Hoare triple {77144#false} assume !(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,464 INFO L273 TraceCheckUtils]: 248: Hoare triple {77144#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {77144#false} is VALID [2018-11-23 12:15:57,464 INFO L273 TraceCheckUtils]: 249: Hoare triple {77144#false} assume true; {77144#false} is VALID [2018-11-23 12:15:57,464 INFO L268 TraceCheckUtils]: 250: Hoare quadruple {77144#false} {77144#false} #86#return; {77144#false} is VALID [2018-11-23 12:15:57,464 INFO L273 TraceCheckUtils]: 251: Hoare triple {77144#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {77144#false} is VALID [2018-11-23 12:15:57,465 INFO L273 TraceCheckUtils]: 252: Hoare triple {77144#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {77144#false} is VALID [2018-11-23 12:15:57,465 INFO L273 TraceCheckUtils]: 253: Hoare triple {77144#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {77144#false} is VALID [2018-11-23 12:15:57,465 INFO L273 TraceCheckUtils]: 254: Hoare triple {77144#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {77144#false} is VALID [2018-11-23 12:15:57,465 INFO L273 TraceCheckUtils]: 255: Hoare triple {77144#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {77144#false} is VALID [2018-11-23 12:15:57,465 INFO L273 TraceCheckUtils]: 256: Hoare triple {77144#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {77144#false} is VALID [2018-11-23 12:15:57,465 INFO L273 TraceCheckUtils]: 257: Hoare triple {77144#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {77144#false} is VALID [2018-11-23 12:15:57,465 INFO L273 TraceCheckUtils]: 258: Hoare triple {77144#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {77144#false} is VALID [2018-11-23 12:15:57,465 INFO L273 TraceCheckUtils]: 259: Hoare triple {77144#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {77144#false} is VALID [2018-11-23 12:15:57,465 INFO L273 TraceCheckUtils]: 260: Hoare triple {77144#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {77144#false} is VALID [2018-11-23 12:15:57,465 INFO L273 TraceCheckUtils]: 261: Hoare triple {77144#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {77144#false} is VALID [2018-11-23 12:15:57,466 INFO L273 TraceCheckUtils]: 262: Hoare triple {77144#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {77144#false} is VALID [2018-11-23 12:15:57,466 INFO L273 TraceCheckUtils]: 263: Hoare triple {77144#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {77144#false} is VALID [2018-11-23 12:15:57,466 INFO L273 TraceCheckUtils]: 264: Hoare triple {77144#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {77144#false} is VALID [2018-11-23 12:15:57,466 INFO L273 TraceCheckUtils]: 265: Hoare triple {77144#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {77144#false} is VALID [2018-11-23 12:15:57,466 INFO L273 TraceCheckUtils]: 266: Hoare triple {77144#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {77144#false} is VALID [2018-11-23 12:15:57,466 INFO L273 TraceCheckUtils]: 267: Hoare triple {77144#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {77144#false} is VALID [2018-11-23 12:15:57,466 INFO L273 TraceCheckUtils]: 268: Hoare triple {77144#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {77144#false} is VALID [2018-11-23 12:15:57,466 INFO L273 TraceCheckUtils]: 269: Hoare triple {77144#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {77144#false} is VALID [2018-11-23 12:15:57,466 INFO L273 TraceCheckUtils]: 270: Hoare triple {77144#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {77144#false} is VALID [2018-11-23 12:15:57,466 INFO L273 TraceCheckUtils]: 271: Hoare triple {77144#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {77144#false} is VALID [2018-11-23 12:15:57,467 INFO L273 TraceCheckUtils]: 272: Hoare triple {77144#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {77144#false} is VALID [2018-11-23 12:15:57,467 INFO L273 TraceCheckUtils]: 273: Hoare triple {77144#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {77144#false} is VALID [2018-11-23 12:15:57,467 INFO L273 TraceCheckUtils]: 274: Hoare triple {77144#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {77144#false} is VALID [2018-11-23 12:15:57,467 INFO L273 TraceCheckUtils]: 275: Hoare triple {77144#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {77144#false} is VALID [2018-11-23 12:15:57,467 INFO L273 TraceCheckUtils]: 276: Hoare triple {77144#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {77144#false} is VALID [2018-11-23 12:15:57,467 INFO L273 TraceCheckUtils]: 277: Hoare triple {77144#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {77144#false} is VALID [2018-11-23 12:15:57,467 INFO L273 TraceCheckUtils]: 278: Hoare triple {77144#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {77144#false} is VALID [2018-11-23 12:15:57,467 INFO L273 TraceCheckUtils]: 279: Hoare triple {77144#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {77144#false} is VALID [2018-11-23 12:15:57,467 INFO L273 TraceCheckUtils]: 280: Hoare triple {77144#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {77144#false} is VALID [2018-11-23 12:15:57,468 INFO L273 TraceCheckUtils]: 281: Hoare triple {77144#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {77144#false} is VALID [2018-11-23 12:15:57,468 INFO L273 TraceCheckUtils]: 282: Hoare triple {77144#false} assume !(~i~2 < 39); {77144#false} is VALID [2018-11-23 12:15:57,468 INFO L273 TraceCheckUtils]: 283: Hoare triple {77144#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {77144#false} is VALID [2018-11-23 12:15:57,468 INFO L256 TraceCheckUtils]: 284: Hoare triple {77144#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {77144#false} is VALID [2018-11-23 12:15:57,468 INFO L273 TraceCheckUtils]: 285: Hoare triple {77144#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {77144#false} is VALID [2018-11-23 12:15:57,468 INFO L273 TraceCheckUtils]: 286: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,468 INFO L273 TraceCheckUtils]: 287: Hoare triple {77144#false} assume !(~i~1 > 20); {77144#false} is VALID [2018-11-23 12:15:57,468 INFO L273 TraceCheckUtils]: 288: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,468 INFO L273 TraceCheckUtils]: 289: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,468 INFO L273 TraceCheckUtils]: 290: Hoare triple {77144#false} assume !(~i~1 > 20); {77144#false} is VALID [2018-11-23 12:15:57,469 INFO L273 TraceCheckUtils]: 291: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,469 INFO L273 TraceCheckUtils]: 292: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,469 INFO L273 TraceCheckUtils]: 293: Hoare triple {77144#false} assume !(~i~1 > 20); {77144#false} is VALID [2018-11-23 12:15:57,469 INFO L273 TraceCheckUtils]: 294: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,469 INFO L273 TraceCheckUtils]: 295: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,469 INFO L273 TraceCheckUtils]: 296: Hoare triple {77144#false} assume !(~i~1 > 20); {77144#false} is VALID [2018-11-23 12:15:57,469 INFO L273 TraceCheckUtils]: 297: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,469 INFO L273 TraceCheckUtils]: 298: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,469 INFO L273 TraceCheckUtils]: 299: Hoare triple {77144#false} assume !(~i~1 > 20); {77144#false} is VALID [2018-11-23 12:15:57,469 INFO L273 TraceCheckUtils]: 300: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,470 INFO L273 TraceCheckUtils]: 301: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,470 INFO L273 TraceCheckUtils]: 302: Hoare triple {77144#false} assume !(~i~1 > 20); {77144#false} is VALID [2018-11-23 12:15:57,470 INFO L273 TraceCheckUtils]: 303: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,470 INFO L273 TraceCheckUtils]: 304: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,470 INFO L273 TraceCheckUtils]: 305: Hoare triple {77144#false} assume !(~i~1 > 20); {77144#false} is VALID [2018-11-23 12:15:57,470 INFO L273 TraceCheckUtils]: 306: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,470 INFO L273 TraceCheckUtils]: 307: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,470 INFO L273 TraceCheckUtils]: 308: Hoare triple {77144#false} assume !(~i~1 > 20); {77144#false} is VALID [2018-11-23 12:15:57,470 INFO L273 TraceCheckUtils]: 309: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,470 INFO L273 TraceCheckUtils]: 310: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,471 INFO L273 TraceCheckUtils]: 311: Hoare triple {77144#false} assume !(~i~1 > 20); {77144#false} is VALID [2018-11-23 12:15:57,471 INFO L273 TraceCheckUtils]: 312: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,471 INFO L273 TraceCheckUtils]: 313: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,471 INFO L273 TraceCheckUtils]: 314: Hoare triple {77144#false} assume !(~i~1 > 20); {77144#false} is VALID [2018-11-23 12:15:57,471 INFO L273 TraceCheckUtils]: 315: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,471 INFO L273 TraceCheckUtils]: 316: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,471 INFO L273 TraceCheckUtils]: 317: Hoare triple {77144#false} assume !(~i~1 > 20); {77144#false} is VALID [2018-11-23 12:15:57,471 INFO L273 TraceCheckUtils]: 318: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,471 INFO L273 TraceCheckUtils]: 319: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,472 INFO L273 TraceCheckUtils]: 320: Hoare triple {77144#false} assume !(~i~1 > 20); {77144#false} is VALID [2018-11-23 12:15:57,472 INFO L273 TraceCheckUtils]: 321: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,472 INFO L273 TraceCheckUtils]: 322: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,472 INFO L273 TraceCheckUtils]: 323: Hoare triple {77144#false} assume !(~i~1 > 20); {77144#false} is VALID [2018-11-23 12:15:57,472 INFO L273 TraceCheckUtils]: 324: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,472 INFO L273 TraceCheckUtils]: 325: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,472 INFO L273 TraceCheckUtils]: 326: Hoare triple {77144#false} assume !(~i~1 > 20); {77144#false} is VALID [2018-11-23 12:15:57,472 INFO L273 TraceCheckUtils]: 327: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,472 INFO L273 TraceCheckUtils]: 328: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,472 INFO L273 TraceCheckUtils]: 329: Hoare triple {77144#false} assume !(~i~1 > 20); {77144#false} is VALID [2018-11-23 12:15:57,473 INFO L273 TraceCheckUtils]: 330: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,473 INFO L273 TraceCheckUtils]: 331: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,473 INFO L273 TraceCheckUtils]: 332: Hoare triple {77144#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {77144#false} is VALID [2018-11-23 12:15:57,473 INFO L273 TraceCheckUtils]: 333: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,473 INFO L273 TraceCheckUtils]: 334: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,473 INFO L273 TraceCheckUtils]: 335: Hoare triple {77144#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {77144#false} is VALID [2018-11-23 12:15:57,473 INFO L273 TraceCheckUtils]: 336: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,473 INFO L273 TraceCheckUtils]: 337: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,473 INFO L273 TraceCheckUtils]: 338: Hoare triple {77144#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {77144#false} is VALID [2018-11-23 12:15:57,474 INFO L273 TraceCheckUtils]: 339: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,474 INFO L273 TraceCheckUtils]: 340: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,474 INFO L273 TraceCheckUtils]: 341: Hoare triple {77144#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {77144#false} is VALID [2018-11-23 12:15:57,474 INFO L273 TraceCheckUtils]: 342: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,474 INFO L273 TraceCheckUtils]: 343: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,474 INFO L273 TraceCheckUtils]: 344: Hoare triple {77144#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {77144#false} is VALID [2018-11-23 12:15:57,474 INFO L273 TraceCheckUtils]: 345: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,474 INFO L273 TraceCheckUtils]: 346: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,474 INFO L273 TraceCheckUtils]: 347: Hoare triple {77144#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {77144#false} is VALID [2018-11-23 12:15:57,474 INFO L273 TraceCheckUtils]: 348: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,475 INFO L273 TraceCheckUtils]: 349: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,475 INFO L273 TraceCheckUtils]: 350: Hoare triple {77144#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {77144#false} is VALID [2018-11-23 12:15:57,475 INFO L273 TraceCheckUtils]: 351: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,475 INFO L273 TraceCheckUtils]: 352: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,475 INFO L273 TraceCheckUtils]: 353: Hoare triple {77144#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {77144#false} is VALID [2018-11-23 12:15:57,475 INFO L273 TraceCheckUtils]: 354: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,475 INFO L273 TraceCheckUtils]: 355: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,475 INFO L273 TraceCheckUtils]: 356: Hoare triple {77144#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {77144#false} is VALID [2018-11-23 12:15:57,475 INFO L273 TraceCheckUtils]: 357: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,475 INFO L273 TraceCheckUtils]: 358: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,476 INFO L273 TraceCheckUtils]: 359: Hoare triple {77144#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {77144#false} is VALID [2018-11-23 12:15:57,476 INFO L273 TraceCheckUtils]: 360: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,476 INFO L273 TraceCheckUtils]: 361: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,476 INFO L273 TraceCheckUtils]: 362: Hoare triple {77144#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {77144#false} is VALID [2018-11-23 12:15:57,476 INFO L273 TraceCheckUtils]: 363: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,476 INFO L273 TraceCheckUtils]: 364: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,476 INFO L273 TraceCheckUtils]: 365: Hoare triple {77144#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {77144#false} is VALID [2018-11-23 12:15:57,476 INFO L273 TraceCheckUtils]: 366: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,476 INFO L273 TraceCheckUtils]: 367: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,476 INFO L273 TraceCheckUtils]: 368: Hoare triple {77144#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {77144#false} is VALID [2018-11-23 12:15:57,477 INFO L273 TraceCheckUtils]: 369: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,477 INFO L273 TraceCheckUtils]: 370: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,477 INFO L273 TraceCheckUtils]: 371: Hoare triple {77144#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {77144#false} is VALID [2018-11-23 12:15:57,477 INFO L273 TraceCheckUtils]: 372: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,477 INFO L273 TraceCheckUtils]: 373: Hoare triple {77144#false} assume !!(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,477 INFO L273 TraceCheckUtils]: 374: Hoare triple {77144#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {77144#false} is VALID [2018-11-23 12:15:57,477 INFO L273 TraceCheckUtils]: 375: Hoare triple {77144#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {77144#false} is VALID [2018-11-23 12:15:57,477 INFO L273 TraceCheckUtils]: 376: Hoare triple {77144#false} assume !(~i~1 < 40); {77144#false} is VALID [2018-11-23 12:15:57,477 INFO L273 TraceCheckUtils]: 377: Hoare triple {77144#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {77144#false} is VALID [2018-11-23 12:15:57,477 INFO L273 TraceCheckUtils]: 378: Hoare triple {77144#false} assume true; {77144#false} is VALID [2018-11-23 12:15:57,478 INFO L268 TraceCheckUtils]: 379: Hoare quadruple {77144#false} {77144#false} #88#return; {77144#false} is VALID [2018-11-23 12:15:57,478 INFO L273 TraceCheckUtils]: 380: Hoare triple {77144#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {77144#false} is VALID [2018-11-23 12:15:57,478 INFO L273 TraceCheckUtils]: 381: Hoare triple {77144#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {77144#false} is VALID [2018-11-23 12:15:57,478 INFO L273 TraceCheckUtils]: 382: Hoare triple {77144#false} assume !false; {77144#false} is VALID [2018-11-23 12:15:57,529 INFO L134 CoverageAnalysis]: Checked inductivity of 13054 backedges. 0 proven. 529 refuted. 0 times theorem prover too weak. 12525 trivial. 0 not checked. [2018-11-23 12:15:57,547 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:15:57,548 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [26] total 26 [2018-11-23 12:15:57,548 INFO L78 Accepts]: Start accepts. Automaton has 26 states. Word has length 383 [2018-11-23 12:15:57,548 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:15:57,548 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 26 states. [2018-11-23 12:15:57,632 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-23 12:15:57,633 INFO L459 AbstractCegarLoop]: Interpolant automaton has 26 states [2018-11-23 12:15:57,633 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 26 interpolants. [2018-11-23 12:15:57,633 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=325, Invalid=325, Unknown=0, NotChecked=0, Total=650 [2018-11-23 12:15:57,634 INFO L87 Difference]: Start difference. First operand 194 states and 214 transitions. Second operand 26 states. [2018-11-23 12:15:58,036 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:58,036 INFO L93 Difference]: Finished difference Result 336 states and 376 transitions. [2018-11-23 12:15:58,037 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 26 states. [2018-11-23 12:15:58,037 INFO L78 Accepts]: Start accepts. Automaton has 26 states. Word has length 383 [2018-11-23 12:15:58,037 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:15:58,037 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 26 states. [2018-11-23 12:15:58,038 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 114 transitions. [2018-11-23 12:15:58,038 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 26 states. [2018-11-23 12:15:58,038 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 114 transitions. [2018-11-23 12:15:58,039 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 26 states and 114 transitions. [2018-11-23 12:15:58,142 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 114 edges. 114 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:15:58,146 INFO L225 Difference]: With dead ends: 336 [2018-11-23 12:15:58,146 INFO L226 Difference]: Without dead ends: 197 [2018-11-23 12:15:58,147 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 382 GetRequests, 358 SyntacticMatches, 0 SemanticMatches, 24 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=325, Invalid=325, Unknown=0, NotChecked=0, Total=650 [2018-11-23 12:15:58,147 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 197 states. [2018-11-23 12:15:58,626 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 197 to 196. [2018-11-23 12:15:58,626 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:15:58,626 INFO L82 GeneralOperation]: Start isEquivalent. First operand 197 states. Second operand 196 states. [2018-11-23 12:15:58,627 INFO L74 IsIncluded]: Start isIncluded. First operand 197 states. Second operand 196 states. [2018-11-23 12:15:58,627 INFO L87 Difference]: Start difference. First operand 197 states. Second operand 196 states. [2018-11-23 12:15:58,630 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:58,630 INFO L93 Difference]: Finished difference Result 197 states and 217 transitions. [2018-11-23 12:15:58,631 INFO L276 IsEmpty]: Start isEmpty. Operand 197 states and 217 transitions. [2018-11-23 12:15:58,654 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:15:58,654 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:15:58,654 INFO L74 IsIncluded]: Start isIncluded. First operand 196 states. Second operand 197 states. [2018-11-23 12:15:58,654 INFO L87 Difference]: Start difference. First operand 196 states. Second operand 197 states. [2018-11-23 12:15:58,658 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:15:58,658 INFO L93 Difference]: Finished difference Result 197 states and 217 transitions. [2018-11-23 12:15:58,658 INFO L276 IsEmpty]: Start isEmpty. Operand 197 states and 217 transitions. [2018-11-23 12:15:58,658 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:15:58,658 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:15:58,659 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:15:58,659 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:15:58,659 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 196 states. [2018-11-23 12:15:58,661 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 196 states to 196 states and 216 transitions. [2018-11-23 12:15:58,662 INFO L78 Accepts]: Start accepts. Automaton has 196 states and 216 transitions. Word has length 383 [2018-11-23 12:15:58,662 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:15:58,662 INFO L480 AbstractCegarLoop]: Abstraction has 196 states and 216 transitions. [2018-11-23 12:15:58,662 INFO L481 AbstractCegarLoop]: Interpolant automaton has 26 states. [2018-11-23 12:15:58,662 INFO L276 IsEmpty]: Start isEmpty. Operand 196 states and 216 transitions. [2018-11-23 12:15:58,664 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 386 [2018-11-23 12:15:58,664 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:15:58,664 INFO L402 BasicCegarLoop]: trace histogram [90, 90, 45, 45, 24, 24, 15, 15, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:15:58,664 INFO L423 AbstractCegarLoop]: === Iteration 64 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:15:58,665 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:15:58,665 INFO L82 PathProgramCache]: Analyzing trace with hash 1041770664, now seen corresponding path program 59 times [2018-11-23 12:15:58,665 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:15:58,665 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:15:58,666 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:15:58,666 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:15:58,666 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:15:58,677 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:15:58,677 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:15:58,677 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 65 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 65 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:15:58,687 INFO L103 rtionOrderModulation]: Keeping assertion order INSIDE_LOOP_FIRST1 [2018-11-23 12:15:58,754 INFO L249 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 17 check-sat command(s) [2018-11-23 12:15:58,754 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:15:58,810 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:15:58,812 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:15:59,802 INFO L256 TraceCheckUtils]: 0: Hoare triple {79458#true} call ULTIMATE.init(); {79458#true} is VALID [2018-11-23 12:15:59,802 INFO L273 TraceCheckUtils]: 1: Hoare triple {79458#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {79458#true} is VALID [2018-11-23 12:15:59,802 INFO L273 TraceCheckUtils]: 2: Hoare triple {79458#true} assume true; {79458#true} is VALID [2018-11-23 12:15:59,802 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {79458#true} {79458#true} #78#return; {79458#true} is VALID [2018-11-23 12:15:59,803 INFO L256 TraceCheckUtils]: 4: Hoare triple {79458#true} call #t~ret12 := main(); {79458#true} is VALID [2018-11-23 12:15:59,803 INFO L273 TraceCheckUtils]: 5: Hoare triple {79458#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {79458#true} is VALID [2018-11-23 12:15:59,803 INFO L256 TraceCheckUtils]: 6: Hoare triple {79458#true} call init_nondet(~#x~0.base, ~#x~0.offset); {79458#true} is VALID [2018-11-23 12:15:59,803 INFO L273 TraceCheckUtils]: 7: Hoare triple {79458#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {79458#true} is VALID [2018-11-23 12:15:59,803 INFO L273 TraceCheckUtils]: 8: Hoare triple {79458#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {79458#true} is VALID [2018-11-23 12:15:59,803 INFO L273 TraceCheckUtils]: 9: Hoare triple {79458#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {79458#true} is VALID [2018-11-23 12:15:59,804 INFO L273 TraceCheckUtils]: 10: Hoare triple {79458#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {79458#true} is VALID [2018-11-23 12:15:59,804 INFO L273 TraceCheckUtils]: 11: Hoare triple {79458#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {79458#true} is VALID [2018-11-23 12:15:59,804 INFO L273 TraceCheckUtils]: 12: Hoare triple {79458#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {79458#true} is VALID [2018-11-23 12:15:59,804 INFO L273 TraceCheckUtils]: 13: Hoare triple {79458#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {79458#true} is VALID [2018-11-23 12:15:59,804 INFO L273 TraceCheckUtils]: 14: Hoare triple {79458#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {79458#true} is VALID [2018-11-23 12:15:59,804 INFO L273 TraceCheckUtils]: 15: Hoare triple {79458#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {79458#true} is VALID [2018-11-23 12:15:59,804 INFO L273 TraceCheckUtils]: 16: Hoare triple {79458#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {79458#true} is VALID [2018-11-23 12:15:59,804 INFO L273 TraceCheckUtils]: 17: Hoare triple {79458#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {79458#true} is VALID [2018-11-23 12:15:59,804 INFO L273 TraceCheckUtils]: 18: Hoare triple {79458#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {79458#true} is VALID [2018-11-23 12:15:59,804 INFO L273 TraceCheckUtils]: 19: Hoare triple {79458#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {79458#true} is VALID [2018-11-23 12:15:59,805 INFO L273 TraceCheckUtils]: 20: Hoare triple {79458#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {79458#true} is VALID [2018-11-23 12:15:59,805 INFO L273 TraceCheckUtils]: 21: Hoare triple {79458#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {79458#true} is VALID [2018-11-23 12:15:59,805 INFO L273 TraceCheckUtils]: 22: Hoare triple {79458#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {79458#true} is VALID [2018-11-23 12:15:59,805 INFO L273 TraceCheckUtils]: 23: Hoare triple {79458#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {79458#true} is VALID [2018-11-23 12:15:59,805 INFO L273 TraceCheckUtils]: 24: Hoare triple {79458#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {79458#true} is VALID [2018-11-23 12:15:59,805 INFO L273 TraceCheckUtils]: 25: Hoare triple {79458#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {79458#true} is VALID [2018-11-23 12:15:59,805 INFO L273 TraceCheckUtils]: 26: Hoare triple {79458#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {79458#true} is VALID [2018-11-23 12:15:59,805 INFO L273 TraceCheckUtils]: 27: Hoare triple {79458#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {79458#true} is VALID [2018-11-23 12:15:59,805 INFO L273 TraceCheckUtils]: 28: Hoare triple {79458#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {79458#true} is VALID [2018-11-23 12:15:59,805 INFO L273 TraceCheckUtils]: 29: Hoare triple {79458#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {79458#true} is VALID [2018-11-23 12:15:59,806 INFO L273 TraceCheckUtils]: 30: Hoare triple {79458#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {79458#true} is VALID [2018-11-23 12:15:59,806 INFO L273 TraceCheckUtils]: 31: Hoare triple {79458#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {79458#true} is VALID [2018-11-23 12:15:59,806 INFO L273 TraceCheckUtils]: 32: Hoare triple {79458#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {79458#true} is VALID [2018-11-23 12:15:59,806 INFO L273 TraceCheckUtils]: 33: Hoare triple {79458#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {79458#true} is VALID [2018-11-23 12:15:59,806 INFO L273 TraceCheckUtils]: 34: Hoare triple {79458#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {79458#true} is VALID [2018-11-23 12:15:59,806 INFO L273 TraceCheckUtils]: 35: Hoare triple {79458#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {79458#true} is VALID [2018-11-23 12:15:59,806 INFO L273 TraceCheckUtils]: 36: Hoare triple {79458#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {79458#true} is VALID [2018-11-23 12:15:59,806 INFO L273 TraceCheckUtils]: 37: Hoare triple {79458#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {79458#true} is VALID [2018-11-23 12:15:59,806 INFO L273 TraceCheckUtils]: 38: Hoare triple {79458#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {79458#true} is VALID [2018-11-23 12:15:59,807 INFO L273 TraceCheckUtils]: 39: Hoare triple {79458#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {79458#true} is VALID [2018-11-23 12:15:59,807 INFO L273 TraceCheckUtils]: 40: Hoare triple {79458#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {79458#true} is VALID [2018-11-23 12:15:59,807 INFO L273 TraceCheckUtils]: 41: Hoare triple {79458#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {79458#true} is VALID [2018-11-23 12:15:59,807 INFO L273 TraceCheckUtils]: 42: Hoare triple {79458#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {79458#true} is VALID [2018-11-23 12:15:59,807 INFO L273 TraceCheckUtils]: 43: Hoare triple {79458#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {79458#true} is VALID [2018-11-23 12:15:59,807 INFO L273 TraceCheckUtils]: 44: Hoare triple {79458#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {79458#true} is VALID [2018-11-23 12:15:59,807 INFO L273 TraceCheckUtils]: 45: Hoare triple {79458#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {79458#true} is VALID [2018-11-23 12:15:59,807 INFO L273 TraceCheckUtils]: 46: Hoare triple {79458#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {79458#true} is VALID [2018-11-23 12:15:59,807 INFO L273 TraceCheckUtils]: 47: Hoare triple {79458#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {79458#true} is VALID [2018-11-23 12:15:59,807 INFO L273 TraceCheckUtils]: 48: Hoare triple {79458#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {79458#true} is VALID [2018-11-23 12:15:59,808 INFO L273 TraceCheckUtils]: 49: Hoare triple {79458#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {79458#true} is VALID [2018-11-23 12:15:59,808 INFO L273 TraceCheckUtils]: 50: Hoare triple {79458#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {79458#true} is VALID [2018-11-23 12:15:59,808 INFO L273 TraceCheckUtils]: 51: Hoare triple {79458#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {79458#true} is VALID [2018-11-23 12:15:59,808 INFO L273 TraceCheckUtils]: 52: Hoare triple {79458#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {79458#true} is VALID [2018-11-23 12:15:59,808 INFO L273 TraceCheckUtils]: 53: Hoare triple {79458#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {79458#true} is VALID [2018-11-23 12:15:59,808 INFO L273 TraceCheckUtils]: 54: Hoare triple {79458#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {79458#true} is VALID [2018-11-23 12:15:59,808 INFO L273 TraceCheckUtils]: 55: Hoare triple {79458#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {79458#true} is VALID [2018-11-23 12:15:59,808 INFO L273 TraceCheckUtils]: 56: Hoare triple {79458#true} assume !(~i~0 < 40); {79458#true} is VALID [2018-11-23 12:15:59,808 INFO L273 TraceCheckUtils]: 57: Hoare triple {79458#true} assume true; {79458#true} is VALID [2018-11-23 12:15:59,808 INFO L268 TraceCheckUtils]: 58: Hoare quadruple {79458#true} {79458#true} #82#return; {79458#true} is VALID [2018-11-23 12:15:59,809 INFO L273 TraceCheckUtils]: 59: Hoare triple {79458#true} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {79458#true} is VALID [2018-11-23 12:15:59,809 INFO L256 TraceCheckUtils]: 60: Hoare triple {79458#true} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {79458#true} is VALID [2018-11-23 12:15:59,809 INFO L273 TraceCheckUtils]: 61: Hoare triple {79458#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {79458#true} is VALID [2018-11-23 12:15:59,809 INFO L273 TraceCheckUtils]: 62: Hoare triple {79458#true} assume !!(~i~1 < 40); {79458#true} is VALID [2018-11-23 12:15:59,809 INFO L273 TraceCheckUtils]: 63: Hoare triple {79458#true} assume !(~i~1 > 20); {79458#true} is VALID [2018-11-23 12:15:59,809 INFO L273 TraceCheckUtils]: 64: Hoare triple {79458#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79458#true} is VALID [2018-11-23 12:15:59,809 INFO L273 TraceCheckUtils]: 65: Hoare triple {79458#true} assume !!(~i~1 < 40); {79458#true} is VALID [2018-11-23 12:15:59,809 INFO L273 TraceCheckUtils]: 66: Hoare triple {79458#true} assume !(~i~1 > 20); {79458#true} is VALID [2018-11-23 12:15:59,809 INFO L273 TraceCheckUtils]: 67: Hoare triple {79458#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79458#true} is VALID [2018-11-23 12:15:59,810 INFO L273 TraceCheckUtils]: 68: Hoare triple {79458#true} assume !!(~i~1 < 40); {79458#true} is VALID [2018-11-23 12:15:59,810 INFO L273 TraceCheckUtils]: 69: Hoare triple {79458#true} assume !(~i~1 > 20); {79458#true} is VALID [2018-11-23 12:15:59,810 INFO L273 TraceCheckUtils]: 70: Hoare triple {79458#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79458#true} is VALID [2018-11-23 12:15:59,810 INFO L273 TraceCheckUtils]: 71: Hoare triple {79458#true} assume !!(~i~1 < 40); {79458#true} is VALID [2018-11-23 12:15:59,810 INFO L273 TraceCheckUtils]: 72: Hoare triple {79458#true} assume !(~i~1 > 20); {79458#true} is VALID [2018-11-23 12:15:59,810 INFO L273 TraceCheckUtils]: 73: Hoare triple {79458#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79458#true} is VALID [2018-11-23 12:15:59,810 INFO L273 TraceCheckUtils]: 74: Hoare triple {79458#true} assume !!(~i~1 < 40); {79458#true} is VALID [2018-11-23 12:15:59,810 INFO L273 TraceCheckUtils]: 75: Hoare triple {79458#true} assume !(~i~1 > 20); {79458#true} is VALID [2018-11-23 12:15:59,810 INFO L273 TraceCheckUtils]: 76: Hoare triple {79458#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79458#true} is VALID [2018-11-23 12:15:59,810 INFO L273 TraceCheckUtils]: 77: Hoare triple {79458#true} assume !!(~i~1 < 40); {79458#true} is VALID [2018-11-23 12:15:59,811 INFO L273 TraceCheckUtils]: 78: Hoare triple {79458#true} assume !(~i~1 > 20); {79458#true} is VALID [2018-11-23 12:15:59,811 INFO L273 TraceCheckUtils]: 79: Hoare triple {79458#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79458#true} is VALID [2018-11-23 12:15:59,811 INFO L273 TraceCheckUtils]: 80: Hoare triple {79458#true} assume !!(~i~1 < 40); {79458#true} is VALID [2018-11-23 12:15:59,811 INFO L273 TraceCheckUtils]: 81: Hoare triple {79458#true} assume !(~i~1 > 20); {79458#true} is VALID [2018-11-23 12:15:59,811 INFO L273 TraceCheckUtils]: 82: Hoare triple {79458#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79458#true} is VALID [2018-11-23 12:15:59,811 INFO L273 TraceCheckUtils]: 83: Hoare triple {79458#true} assume !!(~i~1 < 40); {79458#true} is VALID [2018-11-23 12:15:59,811 INFO L273 TraceCheckUtils]: 84: Hoare triple {79458#true} assume !(~i~1 > 20); {79458#true} is VALID [2018-11-23 12:15:59,811 INFO L273 TraceCheckUtils]: 85: Hoare triple {79458#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79458#true} is VALID [2018-11-23 12:15:59,811 INFO L273 TraceCheckUtils]: 86: Hoare triple {79458#true} assume !!(~i~1 < 40); {79458#true} is VALID [2018-11-23 12:15:59,811 INFO L273 TraceCheckUtils]: 87: Hoare triple {79458#true} assume !(~i~1 > 20); {79458#true} is VALID [2018-11-23 12:15:59,812 INFO L273 TraceCheckUtils]: 88: Hoare triple {79458#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79458#true} is VALID [2018-11-23 12:15:59,812 INFO L273 TraceCheckUtils]: 89: Hoare triple {79458#true} assume !!(~i~1 < 40); {79458#true} is VALID [2018-11-23 12:15:59,812 INFO L273 TraceCheckUtils]: 90: Hoare triple {79458#true} assume !(~i~1 > 20); {79458#true} is VALID [2018-11-23 12:15:59,812 INFO L273 TraceCheckUtils]: 91: Hoare triple {79458#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79458#true} is VALID [2018-11-23 12:15:59,812 INFO L273 TraceCheckUtils]: 92: Hoare triple {79458#true} assume !!(~i~1 < 40); {79458#true} is VALID [2018-11-23 12:15:59,812 INFO L273 TraceCheckUtils]: 93: Hoare triple {79458#true} assume !(~i~1 > 20); {79458#true} is VALID [2018-11-23 12:15:59,812 INFO L273 TraceCheckUtils]: 94: Hoare triple {79458#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79458#true} is VALID [2018-11-23 12:15:59,812 INFO L273 TraceCheckUtils]: 95: Hoare triple {79458#true} assume !!(~i~1 < 40); {79458#true} is VALID [2018-11-23 12:15:59,812 INFO L273 TraceCheckUtils]: 96: Hoare triple {79458#true} assume !(~i~1 > 20); {79458#true} is VALID [2018-11-23 12:15:59,812 INFO L273 TraceCheckUtils]: 97: Hoare triple {79458#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79458#true} is VALID [2018-11-23 12:15:59,813 INFO L273 TraceCheckUtils]: 98: Hoare triple {79458#true} assume !!(~i~1 < 40); {79458#true} is VALID [2018-11-23 12:15:59,813 INFO L273 TraceCheckUtils]: 99: Hoare triple {79458#true} assume !(~i~1 > 20); {79458#true} is VALID [2018-11-23 12:15:59,813 INFO L273 TraceCheckUtils]: 100: Hoare triple {79458#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79458#true} is VALID [2018-11-23 12:15:59,813 INFO L273 TraceCheckUtils]: 101: Hoare triple {79458#true} assume !!(~i~1 < 40); {79458#true} is VALID [2018-11-23 12:15:59,813 INFO L273 TraceCheckUtils]: 102: Hoare triple {79458#true} assume !(~i~1 > 20); {79458#true} is VALID [2018-11-23 12:15:59,813 INFO L273 TraceCheckUtils]: 103: Hoare triple {79458#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79458#true} is VALID [2018-11-23 12:15:59,813 INFO L273 TraceCheckUtils]: 104: Hoare triple {79458#true} assume !!(~i~1 < 40); {79458#true} is VALID [2018-11-23 12:15:59,814 INFO L273 TraceCheckUtils]: 105: Hoare triple {79458#true} assume !(~i~1 > 20); {79778#(<= rangesum_~i~1 20)} is VALID [2018-11-23 12:15:59,814 INFO L273 TraceCheckUtils]: 106: Hoare triple {79778#(<= rangesum_~i~1 20)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79782#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:15:59,814 INFO L273 TraceCheckUtils]: 107: Hoare triple {79782#(<= rangesum_~i~1 21)} assume !!(~i~1 < 40); {79782#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:15:59,815 INFO L273 TraceCheckUtils]: 108: Hoare triple {79782#(<= rangesum_~i~1 21)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {79782#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:15:59,815 INFO L273 TraceCheckUtils]: 109: Hoare triple {79782#(<= rangesum_~i~1 21)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79792#(<= rangesum_~i~1 22)} is VALID [2018-11-23 12:15:59,815 INFO L273 TraceCheckUtils]: 110: Hoare triple {79792#(<= rangesum_~i~1 22)} assume !!(~i~1 < 40); {79792#(<= rangesum_~i~1 22)} is VALID [2018-11-23 12:15:59,816 INFO L273 TraceCheckUtils]: 111: Hoare triple {79792#(<= rangesum_~i~1 22)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {79792#(<= rangesum_~i~1 22)} is VALID [2018-11-23 12:15:59,817 INFO L273 TraceCheckUtils]: 112: Hoare triple {79792#(<= rangesum_~i~1 22)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79802#(<= rangesum_~i~1 23)} is VALID [2018-11-23 12:15:59,817 INFO L273 TraceCheckUtils]: 113: Hoare triple {79802#(<= rangesum_~i~1 23)} assume !!(~i~1 < 40); {79802#(<= rangesum_~i~1 23)} is VALID [2018-11-23 12:15:59,818 INFO L273 TraceCheckUtils]: 114: Hoare triple {79802#(<= rangesum_~i~1 23)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {79802#(<= rangesum_~i~1 23)} is VALID [2018-11-23 12:15:59,818 INFO L273 TraceCheckUtils]: 115: Hoare triple {79802#(<= rangesum_~i~1 23)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79812#(<= rangesum_~i~1 24)} is VALID [2018-11-23 12:15:59,819 INFO L273 TraceCheckUtils]: 116: Hoare triple {79812#(<= rangesum_~i~1 24)} assume !!(~i~1 < 40); {79812#(<= rangesum_~i~1 24)} is VALID [2018-11-23 12:15:59,819 INFO L273 TraceCheckUtils]: 117: Hoare triple {79812#(<= rangesum_~i~1 24)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {79812#(<= rangesum_~i~1 24)} is VALID [2018-11-23 12:15:59,820 INFO L273 TraceCheckUtils]: 118: Hoare triple {79812#(<= rangesum_~i~1 24)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79822#(<= rangesum_~i~1 25)} is VALID [2018-11-23 12:15:59,821 INFO L273 TraceCheckUtils]: 119: Hoare triple {79822#(<= rangesum_~i~1 25)} assume !!(~i~1 < 40); {79822#(<= rangesum_~i~1 25)} is VALID [2018-11-23 12:15:59,821 INFO L273 TraceCheckUtils]: 120: Hoare triple {79822#(<= rangesum_~i~1 25)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {79822#(<= rangesum_~i~1 25)} is VALID [2018-11-23 12:15:59,822 INFO L273 TraceCheckUtils]: 121: Hoare triple {79822#(<= rangesum_~i~1 25)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79832#(<= rangesum_~i~1 26)} is VALID [2018-11-23 12:15:59,822 INFO L273 TraceCheckUtils]: 122: Hoare triple {79832#(<= rangesum_~i~1 26)} assume !!(~i~1 < 40); {79832#(<= rangesum_~i~1 26)} is VALID [2018-11-23 12:15:59,823 INFO L273 TraceCheckUtils]: 123: Hoare triple {79832#(<= rangesum_~i~1 26)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {79832#(<= rangesum_~i~1 26)} is VALID [2018-11-23 12:15:59,823 INFO L273 TraceCheckUtils]: 124: Hoare triple {79832#(<= rangesum_~i~1 26)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79842#(<= rangesum_~i~1 27)} is VALID [2018-11-23 12:15:59,824 INFO L273 TraceCheckUtils]: 125: Hoare triple {79842#(<= rangesum_~i~1 27)} assume !!(~i~1 < 40); {79842#(<= rangesum_~i~1 27)} is VALID [2018-11-23 12:15:59,825 INFO L273 TraceCheckUtils]: 126: Hoare triple {79842#(<= rangesum_~i~1 27)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {79842#(<= rangesum_~i~1 27)} is VALID [2018-11-23 12:15:59,825 INFO L273 TraceCheckUtils]: 127: Hoare triple {79842#(<= rangesum_~i~1 27)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79852#(<= rangesum_~i~1 28)} is VALID [2018-11-23 12:15:59,826 INFO L273 TraceCheckUtils]: 128: Hoare triple {79852#(<= rangesum_~i~1 28)} assume !!(~i~1 < 40); {79852#(<= rangesum_~i~1 28)} is VALID [2018-11-23 12:15:59,826 INFO L273 TraceCheckUtils]: 129: Hoare triple {79852#(<= rangesum_~i~1 28)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {79852#(<= rangesum_~i~1 28)} is VALID [2018-11-23 12:15:59,827 INFO L273 TraceCheckUtils]: 130: Hoare triple {79852#(<= rangesum_~i~1 28)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79862#(<= rangesum_~i~1 29)} is VALID [2018-11-23 12:15:59,827 INFO L273 TraceCheckUtils]: 131: Hoare triple {79862#(<= rangesum_~i~1 29)} assume !!(~i~1 < 40); {79862#(<= rangesum_~i~1 29)} is VALID [2018-11-23 12:15:59,828 INFO L273 TraceCheckUtils]: 132: Hoare triple {79862#(<= rangesum_~i~1 29)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {79862#(<= rangesum_~i~1 29)} is VALID [2018-11-23 12:15:59,829 INFO L273 TraceCheckUtils]: 133: Hoare triple {79862#(<= rangesum_~i~1 29)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79872#(<= rangesum_~i~1 30)} is VALID [2018-11-23 12:15:59,829 INFO L273 TraceCheckUtils]: 134: Hoare triple {79872#(<= rangesum_~i~1 30)} assume !!(~i~1 < 40); {79872#(<= rangesum_~i~1 30)} is VALID [2018-11-23 12:15:59,829 INFO L273 TraceCheckUtils]: 135: Hoare triple {79872#(<= rangesum_~i~1 30)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {79872#(<= rangesum_~i~1 30)} is VALID [2018-11-23 12:15:59,830 INFO L273 TraceCheckUtils]: 136: Hoare triple {79872#(<= rangesum_~i~1 30)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79882#(<= rangesum_~i~1 31)} is VALID [2018-11-23 12:15:59,831 INFO L273 TraceCheckUtils]: 137: Hoare triple {79882#(<= rangesum_~i~1 31)} assume !!(~i~1 < 40); {79882#(<= rangesum_~i~1 31)} is VALID [2018-11-23 12:15:59,831 INFO L273 TraceCheckUtils]: 138: Hoare triple {79882#(<= rangesum_~i~1 31)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {79882#(<= rangesum_~i~1 31)} is VALID [2018-11-23 12:15:59,832 INFO L273 TraceCheckUtils]: 139: Hoare triple {79882#(<= rangesum_~i~1 31)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79892#(<= rangesum_~i~1 32)} is VALID [2018-11-23 12:15:59,832 INFO L273 TraceCheckUtils]: 140: Hoare triple {79892#(<= rangesum_~i~1 32)} assume !!(~i~1 < 40); {79892#(<= rangesum_~i~1 32)} is VALID [2018-11-23 12:15:59,833 INFO L273 TraceCheckUtils]: 141: Hoare triple {79892#(<= rangesum_~i~1 32)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {79892#(<= rangesum_~i~1 32)} is VALID [2018-11-23 12:15:59,833 INFO L273 TraceCheckUtils]: 142: Hoare triple {79892#(<= rangesum_~i~1 32)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79902#(<= rangesum_~i~1 33)} is VALID [2018-11-23 12:15:59,834 INFO L273 TraceCheckUtils]: 143: Hoare triple {79902#(<= rangesum_~i~1 33)} assume !!(~i~1 < 40); {79902#(<= rangesum_~i~1 33)} is VALID [2018-11-23 12:15:59,834 INFO L273 TraceCheckUtils]: 144: Hoare triple {79902#(<= rangesum_~i~1 33)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {79902#(<= rangesum_~i~1 33)} is VALID [2018-11-23 12:15:59,835 INFO L273 TraceCheckUtils]: 145: Hoare triple {79902#(<= rangesum_~i~1 33)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79912#(<= rangesum_~i~1 34)} is VALID [2018-11-23 12:15:59,836 INFO L273 TraceCheckUtils]: 146: Hoare triple {79912#(<= rangesum_~i~1 34)} assume !!(~i~1 < 40); {79912#(<= rangesum_~i~1 34)} is VALID [2018-11-23 12:15:59,836 INFO L273 TraceCheckUtils]: 147: Hoare triple {79912#(<= rangesum_~i~1 34)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {79912#(<= rangesum_~i~1 34)} is VALID [2018-11-23 12:15:59,837 INFO L273 TraceCheckUtils]: 148: Hoare triple {79912#(<= rangesum_~i~1 34)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79922#(<= rangesum_~i~1 35)} is VALID [2018-11-23 12:15:59,837 INFO L273 TraceCheckUtils]: 149: Hoare triple {79922#(<= rangesum_~i~1 35)} assume !!(~i~1 < 40); {79922#(<= rangesum_~i~1 35)} is VALID [2018-11-23 12:15:59,838 INFO L273 TraceCheckUtils]: 150: Hoare triple {79922#(<= rangesum_~i~1 35)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {79922#(<= rangesum_~i~1 35)} is VALID [2018-11-23 12:15:59,839 INFO L273 TraceCheckUtils]: 151: Hoare triple {79922#(<= rangesum_~i~1 35)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79932#(<= rangesum_~i~1 36)} is VALID [2018-11-23 12:15:59,839 INFO L273 TraceCheckUtils]: 152: Hoare triple {79932#(<= rangesum_~i~1 36)} assume !(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,840 INFO L273 TraceCheckUtils]: 153: Hoare triple {79459#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {79459#false} is VALID [2018-11-23 12:15:59,840 INFO L273 TraceCheckUtils]: 154: Hoare triple {79459#false} assume true; {79459#false} is VALID [2018-11-23 12:15:59,840 INFO L268 TraceCheckUtils]: 155: Hoare quadruple {79459#false} {79458#true} #84#return; {79459#false} is VALID [2018-11-23 12:15:59,840 INFO L273 TraceCheckUtils]: 156: Hoare triple {79459#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {79459#false} is VALID [2018-11-23 12:15:59,840 INFO L256 TraceCheckUtils]: 157: Hoare triple {79459#false} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {79459#false} is VALID [2018-11-23 12:15:59,840 INFO L273 TraceCheckUtils]: 158: Hoare triple {79459#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {79459#false} is VALID [2018-11-23 12:15:59,841 INFO L273 TraceCheckUtils]: 159: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,841 INFO L273 TraceCheckUtils]: 160: Hoare triple {79459#false} assume !(~i~1 > 20); {79459#false} is VALID [2018-11-23 12:15:59,841 INFO L273 TraceCheckUtils]: 161: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,841 INFO L273 TraceCheckUtils]: 162: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,841 INFO L273 TraceCheckUtils]: 163: Hoare triple {79459#false} assume !(~i~1 > 20); {79459#false} is VALID [2018-11-23 12:15:59,841 INFO L273 TraceCheckUtils]: 164: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,842 INFO L273 TraceCheckUtils]: 165: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,842 INFO L273 TraceCheckUtils]: 166: Hoare triple {79459#false} assume !(~i~1 > 20); {79459#false} is VALID [2018-11-23 12:15:59,842 INFO L273 TraceCheckUtils]: 167: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,842 INFO L273 TraceCheckUtils]: 168: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,842 INFO L273 TraceCheckUtils]: 169: Hoare triple {79459#false} assume !(~i~1 > 20); {79459#false} is VALID [2018-11-23 12:15:59,842 INFO L273 TraceCheckUtils]: 170: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,843 INFO L273 TraceCheckUtils]: 171: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,843 INFO L273 TraceCheckUtils]: 172: Hoare triple {79459#false} assume !(~i~1 > 20); {79459#false} is VALID [2018-11-23 12:15:59,843 INFO L273 TraceCheckUtils]: 173: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,843 INFO L273 TraceCheckUtils]: 174: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,843 INFO L273 TraceCheckUtils]: 175: Hoare triple {79459#false} assume !(~i~1 > 20); {79459#false} is VALID [2018-11-23 12:15:59,843 INFO L273 TraceCheckUtils]: 176: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,843 INFO L273 TraceCheckUtils]: 177: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,843 INFO L273 TraceCheckUtils]: 178: Hoare triple {79459#false} assume !(~i~1 > 20); {79459#false} is VALID [2018-11-23 12:15:59,843 INFO L273 TraceCheckUtils]: 179: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,844 INFO L273 TraceCheckUtils]: 180: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,844 INFO L273 TraceCheckUtils]: 181: Hoare triple {79459#false} assume !(~i~1 > 20); {79459#false} is VALID [2018-11-23 12:15:59,844 INFO L273 TraceCheckUtils]: 182: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,844 INFO L273 TraceCheckUtils]: 183: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,844 INFO L273 TraceCheckUtils]: 184: Hoare triple {79459#false} assume !(~i~1 > 20); {79459#false} is VALID [2018-11-23 12:15:59,844 INFO L273 TraceCheckUtils]: 185: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,844 INFO L273 TraceCheckUtils]: 186: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,844 INFO L273 TraceCheckUtils]: 187: Hoare triple {79459#false} assume !(~i~1 > 20); {79459#false} is VALID [2018-11-23 12:15:59,844 INFO L273 TraceCheckUtils]: 188: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,845 INFO L273 TraceCheckUtils]: 189: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,845 INFO L273 TraceCheckUtils]: 190: Hoare triple {79459#false} assume !(~i~1 > 20); {79459#false} is VALID [2018-11-23 12:15:59,845 INFO L273 TraceCheckUtils]: 191: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,845 INFO L273 TraceCheckUtils]: 192: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,845 INFO L273 TraceCheckUtils]: 193: Hoare triple {79459#false} assume !(~i~1 > 20); {79459#false} is VALID [2018-11-23 12:15:59,845 INFO L273 TraceCheckUtils]: 194: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,845 INFO L273 TraceCheckUtils]: 195: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,845 INFO L273 TraceCheckUtils]: 196: Hoare triple {79459#false} assume !(~i~1 > 20); {79459#false} is VALID [2018-11-23 12:15:59,845 INFO L273 TraceCheckUtils]: 197: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,845 INFO L273 TraceCheckUtils]: 198: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,846 INFO L273 TraceCheckUtils]: 199: Hoare triple {79459#false} assume !(~i~1 > 20); {79459#false} is VALID [2018-11-23 12:15:59,846 INFO L273 TraceCheckUtils]: 200: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,846 INFO L273 TraceCheckUtils]: 201: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,846 INFO L273 TraceCheckUtils]: 202: Hoare triple {79459#false} assume !(~i~1 > 20); {79459#false} is VALID [2018-11-23 12:15:59,846 INFO L273 TraceCheckUtils]: 203: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,846 INFO L273 TraceCheckUtils]: 204: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,846 INFO L273 TraceCheckUtils]: 205: Hoare triple {79459#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {79459#false} is VALID [2018-11-23 12:15:59,846 INFO L273 TraceCheckUtils]: 206: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,846 INFO L273 TraceCheckUtils]: 207: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,846 INFO L273 TraceCheckUtils]: 208: Hoare triple {79459#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {79459#false} is VALID [2018-11-23 12:15:59,847 INFO L273 TraceCheckUtils]: 209: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,847 INFO L273 TraceCheckUtils]: 210: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,847 INFO L273 TraceCheckUtils]: 211: Hoare triple {79459#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {79459#false} is VALID [2018-11-23 12:15:59,847 INFO L273 TraceCheckUtils]: 212: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,847 INFO L273 TraceCheckUtils]: 213: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,847 INFO L273 TraceCheckUtils]: 214: Hoare triple {79459#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {79459#false} is VALID [2018-11-23 12:15:59,847 INFO L273 TraceCheckUtils]: 215: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,847 INFO L273 TraceCheckUtils]: 216: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,847 INFO L273 TraceCheckUtils]: 217: Hoare triple {79459#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {79459#false} is VALID [2018-11-23 12:15:59,848 INFO L273 TraceCheckUtils]: 218: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,848 INFO L273 TraceCheckUtils]: 219: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,848 INFO L273 TraceCheckUtils]: 220: Hoare triple {79459#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {79459#false} is VALID [2018-11-23 12:15:59,848 INFO L273 TraceCheckUtils]: 221: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,848 INFO L273 TraceCheckUtils]: 222: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,848 INFO L273 TraceCheckUtils]: 223: Hoare triple {79459#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {79459#false} is VALID [2018-11-23 12:15:59,848 INFO L273 TraceCheckUtils]: 224: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,848 INFO L273 TraceCheckUtils]: 225: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,848 INFO L273 TraceCheckUtils]: 226: Hoare triple {79459#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {79459#false} is VALID [2018-11-23 12:15:59,848 INFO L273 TraceCheckUtils]: 227: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,849 INFO L273 TraceCheckUtils]: 228: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,849 INFO L273 TraceCheckUtils]: 229: Hoare triple {79459#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {79459#false} is VALID [2018-11-23 12:15:59,849 INFO L273 TraceCheckUtils]: 230: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,849 INFO L273 TraceCheckUtils]: 231: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,849 INFO L273 TraceCheckUtils]: 232: Hoare triple {79459#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {79459#false} is VALID [2018-11-23 12:15:59,849 INFO L273 TraceCheckUtils]: 233: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,849 INFO L273 TraceCheckUtils]: 234: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,849 INFO L273 TraceCheckUtils]: 235: Hoare triple {79459#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {79459#false} is VALID [2018-11-23 12:15:59,849 INFO L273 TraceCheckUtils]: 236: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,849 INFO L273 TraceCheckUtils]: 237: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,850 INFO L273 TraceCheckUtils]: 238: Hoare triple {79459#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {79459#false} is VALID [2018-11-23 12:15:59,850 INFO L273 TraceCheckUtils]: 239: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,850 INFO L273 TraceCheckUtils]: 240: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,850 INFO L273 TraceCheckUtils]: 241: Hoare triple {79459#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {79459#false} is VALID [2018-11-23 12:15:59,850 INFO L273 TraceCheckUtils]: 242: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,850 INFO L273 TraceCheckUtils]: 243: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,850 INFO L273 TraceCheckUtils]: 244: Hoare triple {79459#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {79459#false} is VALID [2018-11-23 12:15:59,850 INFO L273 TraceCheckUtils]: 245: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,850 INFO L273 TraceCheckUtils]: 246: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,851 INFO L273 TraceCheckUtils]: 247: Hoare triple {79459#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {79459#false} is VALID [2018-11-23 12:15:59,851 INFO L273 TraceCheckUtils]: 248: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,851 INFO L273 TraceCheckUtils]: 249: Hoare triple {79459#false} assume !(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,851 INFO L273 TraceCheckUtils]: 250: Hoare triple {79459#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {79459#false} is VALID [2018-11-23 12:15:59,851 INFO L273 TraceCheckUtils]: 251: Hoare triple {79459#false} assume true; {79459#false} is VALID [2018-11-23 12:15:59,851 INFO L268 TraceCheckUtils]: 252: Hoare quadruple {79459#false} {79459#false} #86#return; {79459#false} is VALID [2018-11-23 12:15:59,851 INFO L273 TraceCheckUtils]: 253: Hoare triple {79459#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {79459#false} is VALID [2018-11-23 12:15:59,851 INFO L273 TraceCheckUtils]: 254: Hoare triple {79459#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {79459#false} is VALID [2018-11-23 12:15:59,851 INFO L273 TraceCheckUtils]: 255: Hoare triple {79459#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {79459#false} is VALID [2018-11-23 12:15:59,852 INFO L273 TraceCheckUtils]: 256: Hoare triple {79459#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {79459#false} is VALID [2018-11-23 12:15:59,852 INFO L273 TraceCheckUtils]: 257: Hoare triple {79459#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {79459#false} is VALID [2018-11-23 12:15:59,852 INFO L273 TraceCheckUtils]: 258: Hoare triple {79459#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {79459#false} is VALID [2018-11-23 12:15:59,852 INFO L273 TraceCheckUtils]: 259: Hoare triple {79459#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {79459#false} is VALID [2018-11-23 12:15:59,852 INFO L273 TraceCheckUtils]: 260: Hoare triple {79459#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {79459#false} is VALID [2018-11-23 12:15:59,852 INFO L273 TraceCheckUtils]: 261: Hoare triple {79459#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {79459#false} is VALID [2018-11-23 12:15:59,852 INFO L273 TraceCheckUtils]: 262: Hoare triple {79459#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {79459#false} is VALID [2018-11-23 12:15:59,852 INFO L273 TraceCheckUtils]: 263: Hoare triple {79459#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {79459#false} is VALID [2018-11-23 12:15:59,852 INFO L273 TraceCheckUtils]: 264: Hoare triple {79459#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {79459#false} is VALID [2018-11-23 12:15:59,852 INFO L273 TraceCheckUtils]: 265: Hoare triple {79459#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {79459#false} is VALID [2018-11-23 12:15:59,853 INFO L273 TraceCheckUtils]: 266: Hoare triple {79459#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {79459#false} is VALID [2018-11-23 12:15:59,853 INFO L273 TraceCheckUtils]: 267: Hoare triple {79459#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {79459#false} is VALID [2018-11-23 12:15:59,853 INFO L273 TraceCheckUtils]: 268: Hoare triple {79459#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {79459#false} is VALID [2018-11-23 12:15:59,853 INFO L273 TraceCheckUtils]: 269: Hoare triple {79459#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {79459#false} is VALID [2018-11-23 12:15:59,853 INFO L273 TraceCheckUtils]: 270: Hoare triple {79459#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {79459#false} is VALID [2018-11-23 12:15:59,853 INFO L273 TraceCheckUtils]: 271: Hoare triple {79459#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {79459#false} is VALID [2018-11-23 12:15:59,853 INFO L273 TraceCheckUtils]: 272: Hoare triple {79459#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {79459#false} is VALID [2018-11-23 12:15:59,853 INFO L273 TraceCheckUtils]: 273: Hoare triple {79459#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {79459#false} is VALID [2018-11-23 12:15:59,853 INFO L273 TraceCheckUtils]: 274: Hoare triple {79459#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {79459#false} is VALID [2018-11-23 12:15:59,853 INFO L273 TraceCheckUtils]: 275: Hoare triple {79459#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {79459#false} is VALID [2018-11-23 12:15:59,854 INFO L273 TraceCheckUtils]: 276: Hoare triple {79459#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {79459#false} is VALID [2018-11-23 12:15:59,854 INFO L273 TraceCheckUtils]: 277: Hoare triple {79459#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {79459#false} is VALID [2018-11-23 12:15:59,854 INFO L273 TraceCheckUtils]: 278: Hoare triple {79459#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {79459#false} is VALID [2018-11-23 12:15:59,854 INFO L273 TraceCheckUtils]: 279: Hoare triple {79459#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {79459#false} is VALID [2018-11-23 12:15:59,854 INFO L273 TraceCheckUtils]: 280: Hoare triple {79459#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {79459#false} is VALID [2018-11-23 12:15:59,854 INFO L273 TraceCheckUtils]: 281: Hoare triple {79459#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {79459#false} is VALID [2018-11-23 12:15:59,854 INFO L273 TraceCheckUtils]: 282: Hoare triple {79459#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {79459#false} is VALID [2018-11-23 12:15:59,854 INFO L273 TraceCheckUtils]: 283: Hoare triple {79459#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {79459#false} is VALID [2018-11-23 12:15:59,854 INFO L273 TraceCheckUtils]: 284: Hoare triple {79459#false} assume !(~i~2 < 39); {79459#false} is VALID [2018-11-23 12:15:59,855 INFO L273 TraceCheckUtils]: 285: Hoare triple {79459#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {79459#false} is VALID [2018-11-23 12:15:59,855 INFO L256 TraceCheckUtils]: 286: Hoare triple {79459#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {79459#false} is VALID [2018-11-23 12:15:59,855 INFO L273 TraceCheckUtils]: 287: Hoare triple {79459#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {79459#false} is VALID [2018-11-23 12:15:59,855 INFO L273 TraceCheckUtils]: 288: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,855 INFO L273 TraceCheckUtils]: 289: Hoare triple {79459#false} assume !(~i~1 > 20); {79459#false} is VALID [2018-11-23 12:15:59,855 INFO L273 TraceCheckUtils]: 290: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,855 INFO L273 TraceCheckUtils]: 291: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,855 INFO L273 TraceCheckUtils]: 292: Hoare triple {79459#false} assume !(~i~1 > 20); {79459#false} is VALID [2018-11-23 12:15:59,855 INFO L273 TraceCheckUtils]: 293: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,855 INFO L273 TraceCheckUtils]: 294: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,856 INFO L273 TraceCheckUtils]: 295: Hoare triple {79459#false} assume !(~i~1 > 20); {79459#false} is VALID [2018-11-23 12:15:59,856 INFO L273 TraceCheckUtils]: 296: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,856 INFO L273 TraceCheckUtils]: 297: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,856 INFO L273 TraceCheckUtils]: 298: Hoare triple {79459#false} assume !(~i~1 > 20); {79459#false} is VALID [2018-11-23 12:15:59,856 INFO L273 TraceCheckUtils]: 299: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,856 INFO L273 TraceCheckUtils]: 300: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,856 INFO L273 TraceCheckUtils]: 301: Hoare triple {79459#false} assume !(~i~1 > 20); {79459#false} is VALID [2018-11-23 12:15:59,856 INFO L273 TraceCheckUtils]: 302: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,856 INFO L273 TraceCheckUtils]: 303: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,857 INFO L273 TraceCheckUtils]: 304: Hoare triple {79459#false} assume !(~i~1 > 20); {79459#false} is VALID [2018-11-23 12:15:59,857 INFO L273 TraceCheckUtils]: 305: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,857 INFO L273 TraceCheckUtils]: 306: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,857 INFO L273 TraceCheckUtils]: 307: Hoare triple {79459#false} assume !(~i~1 > 20); {79459#false} is VALID [2018-11-23 12:15:59,857 INFO L273 TraceCheckUtils]: 308: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,857 INFO L273 TraceCheckUtils]: 309: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,857 INFO L273 TraceCheckUtils]: 310: Hoare triple {79459#false} assume !(~i~1 > 20); {79459#false} is VALID [2018-11-23 12:15:59,857 INFO L273 TraceCheckUtils]: 311: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,857 INFO L273 TraceCheckUtils]: 312: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,857 INFO L273 TraceCheckUtils]: 313: Hoare triple {79459#false} assume !(~i~1 > 20); {79459#false} is VALID [2018-11-23 12:15:59,858 INFO L273 TraceCheckUtils]: 314: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,858 INFO L273 TraceCheckUtils]: 315: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,858 INFO L273 TraceCheckUtils]: 316: Hoare triple {79459#false} assume !(~i~1 > 20); {79459#false} is VALID [2018-11-23 12:15:59,858 INFO L273 TraceCheckUtils]: 317: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,858 INFO L273 TraceCheckUtils]: 318: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,858 INFO L273 TraceCheckUtils]: 319: Hoare triple {79459#false} assume !(~i~1 > 20); {79459#false} is VALID [2018-11-23 12:15:59,858 INFO L273 TraceCheckUtils]: 320: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,858 INFO L273 TraceCheckUtils]: 321: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,858 INFO L273 TraceCheckUtils]: 322: Hoare triple {79459#false} assume !(~i~1 > 20); {79459#false} is VALID [2018-11-23 12:15:59,859 INFO L273 TraceCheckUtils]: 323: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,859 INFO L273 TraceCheckUtils]: 324: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,859 INFO L273 TraceCheckUtils]: 325: Hoare triple {79459#false} assume !(~i~1 > 20); {79459#false} is VALID [2018-11-23 12:15:59,859 INFO L273 TraceCheckUtils]: 326: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,859 INFO L273 TraceCheckUtils]: 327: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,859 INFO L273 TraceCheckUtils]: 328: Hoare triple {79459#false} assume !(~i~1 > 20); {79459#false} is VALID [2018-11-23 12:15:59,859 INFO L273 TraceCheckUtils]: 329: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,859 INFO L273 TraceCheckUtils]: 330: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,859 INFO L273 TraceCheckUtils]: 331: Hoare triple {79459#false} assume !(~i~1 > 20); {79459#false} is VALID [2018-11-23 12:15:59,859 INFO L273 TraceCheckUtils]: 332: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,860 INFO L273 TraceCheckUtils]: 333: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,860 INFO L273 TraceCheckUtils]: 334: Hoare triple {79459#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {79459#false} is VALID [2018-11-23 12:15:59,860 INFO L273 TraceCheckUtils]: 335: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,860 INFO L273 TraceCheckUtils]: 336: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,860 INFO L273 TraceCheckUtils]: 337: Hoare triple {79459#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {79459#false} is VALID [2018-11-23 12:15:59,860 INFO L273 TraceCheckUtils]: 338: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,860 INFO L273 TraceCheckUtils]: 339: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,860 INFO L273 TraceCheckUtils]: 340: Hoare triple {79459#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {79459#false} is VALID [2018-11-23 12:15:59,860 INFO L273 TraceCheckUtils]: 341: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,860 INFO L273 TraceCheckUtils]: 342: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,861 INFO L273 TraceCheckUtils]: 343: Hoare triple {79459#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {79459#false} is VALID [2018-11-23 12:15:59,861 INFO L273 TraceCheckUtils]: 344: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,861 INFO L273 TraceCheckUtils]: 345: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,861 INFO L273 TraceCheckUtils]: 346: Hoare triple {79459#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {79459#false} is VALID [2018-11-23 12:15:59,861 INFO L273 TraceCheckUtils]: 347: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,861 INFO L273 TraceCheckUtils]: 348: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,861 INFO L273 TraceCheckUtils]: 349: Hoare triple {79459#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {79459#false} is VALID [2018-11-23 12:15:59,861 INFO L273 TraceCheckUtils]: 350: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,861 INFO L273 TraceCheckUtils]: 351: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,862 INFO L273 TraceCheckUtils]: 352: Hoare triple {79459#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {79459#false} is VALID [2018-11-23 12:15:59,862 INFO L273 TraceCheckUtils]: 353: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,862 INFO L273 TraceCheckUtils]: 354: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,862 INFO L273 TraceCheckUtils]: 355: Hoare triple {79459#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {79459#false} is VALID [2018-11-23 12:15:59,862 INFO L273 TraceCheckUtils]: 356: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,862 INFO L273 TraceCheckUtils]: 357: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,862 INFO L273 TraceCheckUtils]: 358: Hoare triple {79459#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {79459#false} is VALID [2018-11-23 12:15:59,862 INFO L273 TraceCheckUtils]: 359: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,862 INFO L273 TraceCheckUtils]: 360: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,862 INFO L273 TraceCheckUtils]: 361: Hoare triple {79459#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {79459#false} is VALID [2018-11-23 12:15:59,863 INFO L273 TraceCheckUtils]: 362: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,863 INFO L273 TraceCheckUtils]: 363: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,863 INFO L273 TraceCheckUtils]: 364: Hoare triple {79459#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {79459#false} is VALID [2018-11-23 12:15:59,863 INFO L273 TraceCheckUtils]: 365: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,863 INFO L273 TraceCheckUtils]: 366: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,863 INFO L273 TraceCheckUtils]: 367: Hoare triple {79459#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {79459#false} is VALID [2018-11-23 12:15:59,863 INFO L273 TraceCheckUtils]: 368: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,863 INFO L273 TraceCheckUtils]: 369: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,863 INFO L273 TraceCheckUtils]: 370: Hoare triple {79459#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {79459#false} is VALID [2018-11-23 12:15:59,863 INFO L273 TraceCheckUtils]: 371: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,864 INFO L273 TraceCheckUtils]: 372: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,864 INFO L273 TraceCheckUtils]: 373: Hoare triple {79459#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {79459#false} is VALID [2018-11-23 12:15:59,864 INFO L273 TraceCheckUtils]: 374: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,864 INFO L273 TraceCheckUtils]: 375: Hoare triple {79459#false} assume !!(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,864 INFO L273 TraceCheckUtils]: 376: Hoare triple {79459#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {79459#false} is VALID [2018-11-23 12:15:59,864 INFO L273 TraceCheckUtils]: 377: Hoare triple {79459#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {79459#false} is VALID [2018-11-23 12:15:59,864 INFO L273 TraceCheckUtils]: 378: Hoare triple {79459#false} assume !(~i~1 < 40); {79459#false} is VALID [2018-11-23 12:15:59,864 INFO L273 TraceCheckUtils]: 379: Hoare triple {79459#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {79459#false} is VALID [2018-11-23 12:15:59,864 INFO L273 TraceCheckUtils]: 380: Hoare triple {79459#false} assume true; {79459#false} is VALID [2018-11-23 12:15:59,865 INFO L268 TraceCheckUtils]: 381: Hoare quadruple {79459#false} {79459#false} #88#return; {79459#false} is VALID [2018-11-23 12:15:59,865 INFO L273 TraceCheckUtils]: 382: Hoare triple {79459#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {79459#false} is VALID [2018-11-23 12:15:59,865 INFO L273 TraceCheckUtils]: 383: Hoare triple {79459#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {79459#false} is VALID [2018-11-23 12:15:59,865 INFO L273 TraceCheckUtils]: 384: Hoare triple {79459#false} assume !false; {79459#false} is VALID [2018-11-23 12:15:59,917 INFO L134 CoverageAnalysis]: Checked inductivity of 13101 backedges. 6213 proven. 345 refuted. 0 times theorem prover too weak. 6543 trivial. 0 not checked. [2018-11-23 12:15:59,936 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:15:59,936 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [19] total 19 [2018-11-23 12:15:59,937 INFO L78 Accepts]: Start accepts. Automaton has 19 states. Word has length 385 [2018-11-23 12:15:59,937 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:15:59,937 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 19 states. [2018-11-23 12:16:00,029 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 89 edges. 89 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:16:00,029 INFO L459 AbstractCegarLoop]: Interpolant automaton has 19 states [2018-11-23 12:16:00,029 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2018-11-23 12:16:00,029 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=171, Invalid=171, Unknown=0, NotChecked=0, Total=342 [2018-11-23 12:16:00,030 INFO L87 Difference]: Start difference. First operand 196 states and 216 transitions. Second operand 19 states. [2018-11-23 12:16:00,463 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:00,463 INFO L93 Difference]: Finished difference Result 336 states and 380 transitions. [2018-11-23 12:16:00,463 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2018-11-23 12:16:00,463 INFO L78 Accepts]: Start accepts. Automaton has 19 states. Word has length 385 [2018-11-23 12:16:00,464 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:16:00,464 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 19 states. [2018-11-23 12:16:00,465 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 131 transitions. [2018-11-23 12:16:00,465 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 19 states. [2018-11-23 12:16:00,466 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 131 transitions. [2018-11-23 12:16:00,466 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 19 states and 131 transitions. [2018-11-23 12:16:00,581 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-23 12:16:00,586 INFO L225 Difference]: With dead ends: 336 [2018-11-23 12:16:00,586 INFO L226 Difference]: Without dead ends: 201 [2018-11-23 12:16:00,587 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 384 GetRequests, 367 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=171, Invalid=171, Unknown=0, NotChecked=0, Total=342 [2018-11-23 12:16:00,587 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 201 states. [2018-11-23 12:16:00,691 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 201 to 199. [2018-11-23 12:16:00,692 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:16:00,692 INFO L82 GeneralOperation]: Start isEquivalent. First operand 201 states. Second operand 199 states. [2018-11-23 12:16:00,692 INFO L74 IsIncluded]: Start isIncluded. First operand 201 states. Second operand 199 states. [2018-11-23 12:16:00,692 INFO L87 Difference]: Start difference. First operand 201 states. Second operand 199 states. [2018-11-23 12:16:00,695 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:00,696 INFO L93 Difference]: Finished difference Result 201 states and 223 transitions. [2018-11-23 12:16:00,696 INFO L276 IsEmpty]: Start isEmpty. Operand 201 states and 223 transitions. [2018-11-23 12:16:00,696 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:00,696 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:00,696 INFO L74 IsIncluded]: Start isIncluded. First operand 199 states. Second operand 201 states. [2018-11-23 12:16:00,696 INFO L87 Difference]: Start difference. First operand 199 states. Second operand 201 states. [2018-11-23 12:16:00,700 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:00,700 INFO L93 Difference]: Finished difference Result 201 states and 223 transitions. [2018-11-23 12:16:00,700 INFO L276 IsEmpty]: Start isEmpty. Operand 201 states and 223 transitions. [2018-11-23 12:16:00,700 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:00,700 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:00,700 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:16:00,701 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:16:00,701 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 199 states. [2018-11-23 12:16:00,704 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 199 states to 199 states and 220 transitions. [2018-11-23 12:16:00,704 INFO L78 Accepts]: Start accepts. Automaton has 199 states and 220 transitions. Word has length 385 [2018-11-23 12:16:00,705 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:16:00,705 INFO L480 AbstractCegarLoop]: Abstraction has 199 states and 220 transitions. [2018-11-23 12:16:00,705 INFO L481 AbstractCegarLoop]: Interpolant automaton has 19 states. [2018-11-23 12:16:00,705 INFO L276 IsEmpty]: Start isEmpty. Operand 199 states and 220 transitions. [2018-11-23 12:16:00,707 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 395 [2018-11-23 12:16:00,707 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:16:00,707 INFO L402 BasicCegarLoop]: trace histogram [93, 93, 48, 45, 24, 24, 15, 15, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:16:00,708 INFO L423 AbstractCegarLoop]: === Iteration 65 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:16:00,708 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:16:00,708 INFO L82 PathProgramCache]: Analyzing trace with hash 1968022450, now seen corresponding path program 60 times [2018-11-23 12:16:00,708 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:16:00,708 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:16:00,709 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:00,709 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:16:00,709 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:00,721 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:16:00,721 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:16:00,721 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 66 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 66 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:16:00,736 INFO L103 rtionOrderModulation]: Keeping assertion order MIX_INSIDE_OUTSIDE [2018-11-23 12:16:12,594 INFO L249 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 33 check-sat command(s) [2018-11-23 12:16:12,594 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:16:12,655 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:12,658 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:16:13,072 INFO L256 TraceCheckUtils]: 0: Hoare triple {81784#true} call ULTIMATE.init(); {81784#true} is VALID [2018-11-23 12:16:13,072 INFO L273 TraceCheckUtils]: 1: Hoare triple {81784#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {81784#true} is VALID [2018-11-23 12:16:13,072 INFO L273 TraceCheckUtils]: 2: Hoare triple {81784#true} assume true; {81784#true} is VALID [2018-11-23 12:16:13,072 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {81784#true} {81784#true} #78#return; {81784#true} is VALID [2018-11-23 12:16:13,072 INFO L256 TraceCheckUtils]: 4: Hoare triple {81784#true} call #t~ret12 := main(); {81784#true} is VALID [2018-11-23 12:16:13,073 INFO L273 TraceCheckUtils]: 5: Hoare triple {81784#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {81784#true} is VALID [2018-11-23 12:16:13,073 INFO L256 TraceCheckUtils]: 6: Hoare triple {81784#true} call init_nondet(~#x~0.base, ~#x~0.offset); {81784#true} is VALID [2018-11-23 12:16:13,073 INFO L273 TraceCheckUtils]: 7: Hoare triple {81784#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {81784#true} is VALID [2018-11-23 12:16:13,073 INFO L273 TraceCheckUtils]: 8: Hoare triple {81784#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {81784#true} is VALID [2018-11-23 12:16:13,073 INFO L273 TraceCheckUtils]: 9: Hoare triple {81784#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {81784#true} is VALID [2018-11-23 12:16:13,073 INFO L273 TraceCheckUtils]: 10: Hoare triple {81784#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {81784#true} is VALID [2018-11-23 12:16:13,074 INFO L273 TraceCheckUtils]: 11: Hoare triple {81784#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {81784#true} is VALID [2018-11-23 12:16:13,074 INFO L273 TraceCheckUtils]: 12: Hoare triple {81784#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {81784#true} is VALID [2018-11-23 12:16:13,074 INFO L273 TraceCheckUtils]: 13: Hoare triple {81784#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {81784#true} is VALID [2018-11-23 12:16:13,074 INFO L273 TraceCheckUtils]: 14: Hoare triple {81784#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {81784#true} is VALID [2018-11-23 12:16:13,074 INFO L273 TraceCheckUtils]: 15: Hoare triple {81784#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {81784#true} is VALID [2018-11-23 12:16:13,074 INFO L273 TraceCheckUtils]: 16: Hoare triple {81784#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {81784#true} is VALID [2018-11-23 12:16:13,074 INFO L273 TraceCheckUtils]: 17: Hoare triple {81784#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {81784#true} is VALID [2018-11-23 12:16:13,074 INFO L273 TraceCheckUtils]: 18: Hoare triple {81784#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {81784#true} is VALID [2018-11-23 12:16:13,074 INFO L273 TraceCheckUtils]: 19: Hoare triple {81784#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {81784#true} is VALID [2018-11-23 12:16:13,075 INFO L273 TraceCheckUtils]: 20: Hoare triple {81784#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {81784#true} is VALID [2018-11-23 12:16:13,075 INFO L273 TraceCheckUtils]: 21: Hoare triple {81784#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {81784#true} is VALID [2018-11-23 12:16:13,075 INFO L273 TraceCheckUtils]: 22: Hoare triple {81784#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {81784#true} is VALID [2018-11-23 12:16:13,075 INFO L273 TraceCheckUtils]: 23: Hoare triple {81784#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {81784#true} is VALID [2018-11-23 12:16:13,075 INFO L273 TraceCheckUtils]: 24: Hoare triple {81784#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {81784#true} is VALID [2018-11-23 12:16:13,075 INFO L273 TraceCheckUtils]: 25: Hoare triple {81784#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {81784#true} is VALID [2018-11-23 12:16:13,075 INFO L273 TraceCheckUtils]: 26: Hoare triple {81784#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {81784#true} is VALID [2018-11-23 12:16:13,075 INFO L273 TraceCheckUtils]: 27: Hoare triple {81784#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {81784#true} is VALID [2018-11-23 12:16:13,075 INFO L273 TraceCheckUtils]: 28: Hoare triple {81784#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {81784#true} is VALID [2018-11-23 12:16:13,075 INFO L273 TraceCheckUtils]: 29: Hoare triple {81784#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {81784#true} is VALID [2018-11-23 12:16:13,076 INFO L273 TraceCheckUtils]: 30: Hoare triple {81784#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {81784#true} is VALID [2018-11-23 12:16:13,076 INFO L273 TraceCheckUtils]: 31: Hoare triple {81784#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {81784#true} is VALID [2018-11-23 12:16:13,076 INFO L273 TraceCheckUtils]: 32: Hoare triple {81784#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {81784#true} is VALID [2018-11-23 12:16:13,076 INFO L273 TraceCheckUtils]: 33: Hoare triple {81784#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {81784#true} is VALID [2018-11-23 12:16:13,076 INFO L273 TraceCheckUtils]: 34: Hoare triple {81784#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {81784#true} is VALID [2018-11-23 12:16:13,076 INFO L273 TraceCheckUtils]: 35: Hoare triple {81784#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {81784#true} is VALID [2018-11-23 12:16:13,076 INFO L273 TraceCheckUtils]: 36: Hoare triple {81784#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {81784#true} is VALID [2018-11-23 12:16:13,076 INFO L273 TraceCheckUtils]: 37: Hoare triple {81784#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {81784#true} is VALID [2018-11-23 12:16:13,076 INFO L273 TraceCheckUtils]: 38: Hoare triple {81784#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {81784#true} is VALID [2018-11-23 12:16:13,076 INFO L273 TraceCheckUtils]: 39: Hoare triple {81784#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {81784#true} is VALID [2018-11-23 12:16:13,077 INFO L273 TraceCheckUtils]: 40: Hoare triple {81784#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {81784#true} is VALID [2018-11-23 12:16:13,077 INFO L273 TraceCheckUtils]: 41: Hoare triple {81784#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {81784#true} is VALID [2018-11-23 12:16:13,077 INFO L273 TraceCheckUtils]: 42: Hoare triple {81784#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {81784#true} is VALID [2018-11-23 12:16:13,077 INFO L273 TraceCheckUtils]: 43: Hoare triple {81784#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {81784#true} is VALID [2018-11-23 12:16:13,077 INFO L273 TraceCheckUtils]: 44: Hoare triple {81784#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {81784#true} is VALID [2018-11-23 12:16:13,077 INFO L273 TraceCheckUtils]: 45: Hoare triple {81784#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {81784#true} is VALID [2018-11-23 12:16:13,077 INFO L273 TraceCheckUtils]: 46: Hoare triple {81784#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {81784#true} is VALID [2018-11-23 12:16:13,077 INFO L273 TraceCheckUtils]: 47: Hoare triple {81784#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {81784#true} is VALID [2018-11-23 12:16:13,077 INFO L273 TraceCheckUtils]: 48: Hoare triple {81784#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {81784#true} is VALID [2018-11-23 12:16:13,077 INFO L273 TraceCheckUtils]: 49: Hoare triple {81784#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {81784#true} is VALID [2018-11-23 12:16:13,078 INFO L273 TraceCheckUtils]: 50: Hoare triple {81784#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {81784#true} is VALID [2018-11-23 12:16:13,078 INFO L273 TraceCheckUtils]: 51: Hoare triple {81784#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {81784#true} is VALID [2018-11-23 12:16:13,078 INFO L273 TraceCheckUtils]: 52: Hoare triple {81784#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {81784#true} is VALID [2018-11-23 12:16:13,078 INFO L273 TraceCheckUtils]: 53: Hoare triple {81784#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {81784#true} is VALID [2018-11-23 12:16:13,078 INFO L273 TraceCheckUtils]: 54: Hoare triple {81784#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {81784#true} is VALID [2018-11-23 12:16:13,078 INFO L273 TraceCheckUtils]: 55: Hoare triple {81784#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {81784#true} is VALID [2018-11-23 12:16:13,078 INFO L273 TraceCheckUtils]: 56: Hoare triple {81784#true} assume !(~i~0 < 40); {81784#true} is VALID [2018-11-23 12:16:13,078 INFO L273 TraceCheckUtils]: 57: Hoare triple {81784#true} assume true; {81784#true} is VALID [2018-11-23 12:16:13,078 INFO L268 TraceCheckUtils]: 58: Hoare quadruple {81784#true} {81784#true} #82#return; {81784#true} is VALID [2018-11-23 12:16:13,078 INFO L273 TraceCheckUtils]: 59: Hoare triple {81784#true} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {81784#true} is VALID [2018-11-23 12:16:13,079 INFO L256 TraceCheckUtils]: 60: Hoare triple {81784#true} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {81784#true} is VALID [2018-11-23 12:16:13,079 INFO L273 TraceCheckUtils]: 61: Hoare triple {81784#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {81784#true} is VALID [2018-11-23 12:16:13,079 INFO L273 TraceCheckUtils]: 62: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,079 INFO L273 TraceCheckUtils]: 63: Hoare triple {81784#true} assume !(~i~1 > 20); {81784#true} is VALID [2018-11-23 12:16:13,079 INFO L273 TraceCheckUtils]: 64: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,079 INFO L273 TraceCheckUtils]: 65: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,079 INFO L273 TraceCheckUtils]: 66: Hoare triple {81784#true} assume !(~i~1 > 20); {81784#true} is VALID [2018-11-23 12:16:13,079 INFO L273 TraceCheckUtils]: 67: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,079 INFO L273 TraceCheckUtils]: 68: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,079 INFO L273 TraceCheckUtils]: 69: Hoare triple {81784#true} assume !(~i~1 > 20); {81784#true} is VALID [2018-11-23 12:16:13,080 INFO L273 TraceCheckUtils]: 70: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,080 INFO L273 TraceCheckUtils]: 71: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,080 INFO L273 TraceCheckUtils]: 72: Hoare triple {81784#true} assume !(~i~1 > 20); {81784#true} is VALID [2018-11-23 12:16:13,080 INFO L273 TraceCheckUtils]: 73: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,080 INFO L273 TraceCheckUtils]: 74: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,080 INFO L273 TraceCheckUtils]: 75: Hoare triple {81784#true} assume !(~i~1 > 20); {81784#true} is VALID [2018-11-23 12:16:13,080 INFO L273 TraceCheckUtils]: 76: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,080 INFO L273 TraceCheckUtils]: 77: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,080 INFO L273 TraceCheckUtils]: 78: Hoare triple {81784#true} assume !(~i~1 > 20); {81784#true} is VALID [2018-11-23 12:16:13,081 INFO L273 TraceCheckUtils]: 79: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,081 INFO L273 TraceCheckUtils]: 80: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,081 INFO L273 TraceCheckUtils]: 81: Hoare triple {81784#true} assume !(~i~1 > 20); {81784#true} is VALID [2018-11-23 12:16:13,081 INFO L273 TraceCheckUtils]: 82: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,081 INFO L273 TraceCheckUtils]: 83: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,081 INFO L273 TraceCheckUtils]: 84: Hoare triple {81784#true} assume !(~i~1 > 20); {81784#true} is VALID [2018-11-23 12:16:13,081 INFO L273 TraceCheckUtils]: 85: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,081 INFO L273 TraceCheckUtils]: 86: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,081 INFO L273 TraceCheckUtils]: 87: Hoare triple {81784#true} assume !(~i~1 > 20); {81784#true} is VALID [2018-11-23 12:16:13,081 INFO L273 TraceCheckUtils]: 88: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,081 INFO L273 TraceCheckUtils]: 89: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,082 INFO L273 TraceCheckUtils]: 90: Hoare triple {81784#true} assume !(~i~1 > 20); {81784#true} is VALID [2018-11-23 12:16:13,082 INFO L273 TraceCheckUtils]: 91: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,082 INFO L273 TraceCheckUtils]: 92: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,082 INFO L273 TraceCheckUtils]: 93: Hoare triple {81784#true} assume !(~i~1 > 20); {81784#true} is VALID [2018-11-23 12:16:13,082 INFO L273 TraceCheckUtils]: 94: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,082 INFO L273 TraceCheckUtils]: 95: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,082 INFO L273 TraceCheckUtils]: 96: Hoare triple {81784#true} assume !(~i~1 > 20); {81784#true} is VALID [2018-11-23 12:16:13,082 INFO L273 TraceCheckUtils]: 97: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,082 INFO L273 TraceCheckUtils]: 98: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,083 INFO L273 TraceCheckUtils]: 99: Hoare triple {81784#true} assume !(~i~1 > 20); {81784#true} is VALID [2018-11-23 12:16:13,083 INFO L273 TraceCheckUtils]: 100: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,083 INFO L273 TraceCheckUtils]: 101: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,083 INFO L273 TraceCheckUtils]: 102: Hoare triple {81784#true} assume !(~i~1 > 20); {81784#true} is VALID [2018-11-23 12:16:13,083 INFO L273 TraceCheckUtils]: 103: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,083 INFO L273 TraceCheckUtils]: 104: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,083 INFO L273 TraceCheckUtils]: 105: Hoare triple {81784#true} assume !(~i~1 > 20); {81784#true} is VALID [2018-11-23 12:16:13,083 INFO L273 TraceCheckUtils]: 106: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,083 INFO L273 TraceCheckUtils]: 107: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,083 INFO L273 TraceCheckUtils]: 108: Hoare triple {81784#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {81784#true} is VALID [2018-11-23 12:16:13,083 INFO L273 TraceCheckUtils]: 109: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,084 INFO L273 TraceCheckUtils]: 110: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,084 INFO L273 TraceCheckUtils]: 111: Hoare triple {81784#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {81784#true} is VALID [2018-11-23 12:16:13,084 INFO L273 TraceCheckUtils]: 112: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,084 INFO L273 TraceCheckUtils]: 113: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,084 INFO L273 TraceCheckUtils]: 114: Hoare triple {81784#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {81784#true} is VALID [2018-11-23 12:16:13,084 INFO L273 TraceCheckUtils]: 115: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,084 INFO L273 TraceCheckUtils]: 116: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,084 INFO L273 TraceCheckUtils]: 117: Hoare triple {81784#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {81784#true} is VALID [2018-11-23 12:16:13,084 INFO L273 TraceCheckUtils]: 118: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,085 INFO L273 TraceCheckUtils]: 119: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,085 INFO L273 TraceCheckUtils]: 120: Hoare triple {81784#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {81784#true} is VALID [2018-11-23 12:16:13,085 INFO L273 TraceCheckUtils]: 121: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,085 INFO L273 TraceCheckUtils]: 122: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,085 INFO L273 TraceCheckUtils]: 123: Hoare triple {81784#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {81784#true} is VALID [2018-11-23 12:16:13,085 INFO L273 TraceCheckUtils]: 124: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,085 INFO L273 TraceCheckUtils]: 125: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,085 INFO L273 TraceCheckUtils]: 126: Hoare triple {81784#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {81784#true} is VALID [2018-11-23 12:16:13,085 INFO L273 TraceCheckUtils]: 127: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,085 INFO L273 TraceCheckUtils]: 128: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,086 INFO L273 TraceCheckUtils]: 129: Hoare triple {81784#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {81784#true} is VALID [2018-11-23 12:16:13,086 INFO L273 TraceCheckUtils]: 130: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,086 INFO L273 TraceCheckUtils]: 131: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,086 INFO L273 TraceCheckUtils]: 132: Hoare triple {81784#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {81784#true} is VALID [2018-11-23 12:16:13,086 INFO L273 TraceCheckUtils]: 133: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,086 INFO L273 TraceCheckUtils]: 134: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,086 INFO L273 TraceCheckUtils]: 135: Hoare triple {81784#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {81784#true} is VALID [2018-11-23 12:16:13,086 INFO L273 TraceCheckUtils]: 136: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,086 INFO L273 TraceCheckUtils]: 137: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,086 INFO L273 TraceCheckUtils]: 138: Hoare triple {81784#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {81784#true} is VALID [2018-11-23 12:16:13,087 INFO L273 TraceCheckUtils]: 139: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,087 INFO L273 TraceCheckUtils]: 140: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,087 INFO L273 TraceCheckUtils]: 141: Hoare triple {81784#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {81784#true} is VALID [2018-11-23 12:16:13,087 INFO L273 TraceCheckUtils]: 142: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,087 INFO L273 TraceCheckUtils]: 143: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,087 INFO L273 TraceCheckUtils]: 144: Hoare triple {81784#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {81784#true} is VALID [2018-11-23 12:16:13,087 INFO L273 TraceCheckUtils]: 145: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,087 INFO L273 TraceCheckUtils]: 146: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,087 INFO L273 TraceCheckUtils]: 147: Hoare triple {81784#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {81784#true} is VALID [2018-11-23 12:16:13,087 INFO L273 TraceCheckUtils]: 148: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,088 INFO L273 TraceCheckUtils]: 149: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,088 INFO L273 TraceCheckUtils]: 150: Hoare triple {81784#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {81784#true} is VALID [2018-11-23 12:16:13,088 INFO L273 TraceCheckUtils]: 151: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,088 INFO L273 TraceCheckUtils]: 152: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,088 INFO L273 TraceCheckUtils]: 153: Hoare triple {81784#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {81784#true} is VALID [2018-11-23 12:16:13,088 INFO L273 TraceCheckUtils]: 154: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,088 INFO L273 TraceCheckUtils]: 155: Hoare triple {81784#true} assume !(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,088 INFO L273 TraceCheckUtils]: 156: Hoare triple {81784#true} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {81784#true} is VALID [2018-11-23 12:16:13,088 INFO L273 TraceCheckUtils]: 157: Hoare triple {81784#true} assume true; {81784#true} is VALID [2018-11-23 12:16:13,088 INFO L268 TraceCheckUtils]: 158: Hoare quadruple {81784#true} {81784#true} #84#return; {81784#true} is VALID [2018-11-23 12:16:13,089 INFO L273 TraceCheckUtils]: 159: Hoare triple {81784#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {81784#true} is VALID [2018-11-23 12:16:13,089 INFO L256 TraceCheckUtils]: 160: Hoare triple {81784#true} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {81784#true} is VALID [2018-11-23 12:16:13,089 INFO L273 TraceCheckUtils]: 161: Hoare triple {81784#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {81784#true} is VALID [2018-11-23 12:16:13,089 INFO L273 TraceCheckUtils]: 162: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,089 INFO L273 TraceCheckUtils]: 163: Hoare triple {81784#true} assume !(~i~1 > 20); {81784#true} is VALID [2018-11-23 12:16:13,089 INFO L273 TraceCheckUtils]: 164: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,089 INFO L273 TraceCheckUtils]: 165: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,089 INFO L273 TraceCheckUtils]: 166: Hoare triple {81784#true} assume !(~i~1 > 20); {81784#true} is VALID [2018-11-23 12:16:13,089 INFO L273 TraceCheckUtils]: 167: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,089 INFO L273 TraceCheckUtils]: 168: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,090 INFO L273 TraceCheckUtils]: 169: Hoare triple {81784#true} assume !(~i~1 > 20); {81784#true} is VALID [2018-11-23 12:16:13,090 INFO L273 TraceCheckUtils]: 170: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,090 INFO L273 TraceCheckUtils]: 171: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,090 INFO L273 TraceCheckUtils]: 172: Hoare triple {81784#true} assume !(~i~1 > 20); {81784#true} is VALID [2018-11-23 12:16:13,090 INFO L273 TraceCheckUtils]: 173: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,090 INFO L273 TraceCheckUtils]: 174: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,090 INFO L273 TraceCheckUtils]: 175: Hoare triple {81784#true} assume !(~i~1 > 20); {81784#true} is VALID [2018-11-23 12:16:13,090 INFO L273 TraceCheckUtils]: 176: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,090 INFO L273 TraceCheckUtils]: 177: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,090 INFO L273 TraceCheckUtils]: 178: Hoare triple {81784#true} assume !(~i~1 > 20); {81784#true} is VALID [2018-11-23 12:16:13,091 INFO L273 TraceCheckUtils]: 179: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,091 INFO L273 TraceCheckUtils]: 180: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,091 INFO L273 TraceCheckUtils]: 181: Hoare triple {81784#true} assume !(~i~1 > 20); {81784#true} is VALID [2018-11-23 12:16:13,091 INFO L273 TraceCheckUtils]: 182: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,091 INFO L273 TraceCheckUtils]: 183: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,091 INFO L273 TraceCheckUtils]: 184: Hoare triple {81784#true} assume !(~i~1 > 20); {81784#true} is VALID [2018-11-23 12:16:13,091 INFO L273 TraceCheckUtils]: 185: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,091 INFO L273 TraceCheckUtils]: 186: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,091 INFO L273 TraceCheckUtils]: 187: Hoare triple {81784#true} assume !(~i~1 > 20); {81784#true} is VALID [2018-11-23 12:16:13,091 INFO L273 TraceCheckUtils]: 188: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,091 INFO L273 TraceCheckUtils]: 189: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,092 INFO L273 TraceCheckUtils]: 190: Hoare triple {81784#true} assume !(~i~1 > 20); {81784#true} is VALID [2018-11-23 12:16:13,092 INFO L273 TraceCheckUtils]: 191: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,092 INFO L273 TraceCheckUtils]: 192: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,092 INFO L273 TraceCheckUtils]: 193: Hoare triple {81784#true} assume !(~i~1 > 20); {81784#true} is VALID [2018-11-23 12:16:13,092 INFO L273 TraceCheckUtils]: 194: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,092 INFO L273 TraceCheckUtils]: 195: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,092 INFO L273 TraceCheckUtils]: 196: Hoare triple {81784#true} assume !(~i~1 > 20); {81784#true} is VALID [2018-11-23 12:16:13,092 INFO L273 TraceCheckUtils]: 197: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,092 INFO L273 TraceCheckUtils]: 198: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,092 INFO L273 TraceCheckUtils]: 199: Hoare triple {81784#true} assume !(~i~1 > 20); {81784#true} is VALID [2018-11-23 12:16:13,093 INFO L273 TraceCheckUtils]: 200: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,093 INFO L273 TraceCheckUtils]: 201: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,093 INFO L273 TraceCheckUtils]: 202: Hoare triple {81784#true} assume !(~i~1 > 20); {81784#true} is VALID [2018-11-23 12:16:13,093 INFO L273 TraceCheckUtils]: 203: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,093 INFO L273 TraceCheckUtils]: 204: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,093 INFO L273 TraceCheckUtils]: 205: Hoare triple {81784#true} assume !(~i~1 > 20); {81784#true} is VALID [2018-11-23 12:16:13,093 INFO L273 TraceCheckUtils]: 206: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,093 INFO L273 TraceCheckUtils]: 207: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,093 INFO L273 TraceCheckUtils]: 208: Hoare triple {81784#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {81784#true} is VALID [2018-11-23 12:16:13,093 INFO L273 TraceCheckUtils]: 209: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,094 INFO L273 TraceCheckUtils]: 210: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,094 INFO L273 TraceCheckUtils]: 211: Hoare triple {81784#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {81784#true} is VALID [2018-11-23 12:16:13,094 INFO L273 TraceCheckUtils]: 212: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,094 INFO L273 TraceCheckUtils]: 213: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,094 INFO L273 TraceCheckUtils]: 214: Hoare triple {81784#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {81784#true} is VALID [2018-11-23 12:16:13,094 INFO L273 TraceCheckUtils]: 215: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,094 INFO L273 TraceCheckUtils]: 216: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,094 INFO L273 TraceCheckUtils]: 217: Hoare triple {81784#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {81784#true} is VALID [2018-11-23 12:16:13,094 INFO L273 TraceCheckUtils]: 218: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,094 INFO L273 TraceCheckUtils]: 219: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,095 INFO L273 TraceCheckUtils]: 220: Hoare triple {81784#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {81784#true} is VALID [2018-11-23 12:16:13,095 INFO L273 TraceCheckUtils]: 221: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,095 INFO L273 TraceCheckUtils]: 222: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,095 INFO L273 TraceCheckUtils]: 223: Hoare triple {81784#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {81784#true} is VALID [2018-11-23 12:16:13,095 INFO L273 TraceCheckUtils]: 224: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,095 INFO L273 TraceCheckUtils]: 225: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,095 INFO L273 TraceCheckUtils]: 226: Hoare triple {81784#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {81784#true} is VALID [2018-11-23 12:16:13,095 INFO L273 TraceCheckUtils]: 227: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,095 INFO L273 TraceCheckUtils]: 228: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,095 INFO L273 TraceCheckUtils]: 229: Hoare triple {81784#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {81784#true} is VALID [2018-11-23 12:16:13,096 INFO L273 TraceCheckUtils]: 230: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,096 INFO L273 TraceCheckUtils]: 231: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,096 INFO L273 TraceCheckUtils]: 232: Hoare triple {81784#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {81784#true} is VALID [2018-11-23 12:16:13,096 INFO L273 TraceCheckUtils]: 233: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,096 INFO L273 TraceCheckUtils]: 234: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,096 INFO L273 TraceCheckUtils]: 235: Hoare triple {81784#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {81784#true} is VALID [2018-11-23 12:16:13,096 INFO L273 TraceCheckUtils]: 236: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,096 INFO L273 TraceCheckUtils]: 237: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,096 INFO L273 TraceCheckUtils]: 238: Hoare triple {81784#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {81784#true} is VALID [2018-11-23 12:16:13,096 INFO L273 TraceCheckUtils]: 239: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,097 INFO L273 TraceCheckUtils]: 240: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,097 INFO L273 TraceCheckUtils]: 241: Hoare triple {81784#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {81784#true} is VALID [2018-11-23 12:16:13,097 INFO L273 TraceCheckUtils]: 242: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,097 INFO L273 TraceCheckUtils]: 243: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,097 INFO L273 TraceCheckUtils]: 244: Hoare triple {81784#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {81784#true} is VALID [2018-11-23 12:16:13,097 INFO L273 TraceCheckUtils]: 245: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,097 INFO L273 TraceCheckUtils]: 246: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,097 INFO L273 TraceCheckUtils]: 247: Hoare triple {81784#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {81784#true} is VALID [2018-11-23 12:16:13,097 INFO L273 TraceCheckUtils]: 248: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,097 INFO L273 TraceCheckUtils]: 249: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,098 INFO L273 TraceCheckUtils]: 250: Hoare triple {81784#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {81784#true} is VALID [2018-11-23 12:16:13,098 INFO L273 TraceCheckUtils]: 251: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,098 INFO L273 TraceCheckUtils]: 252: Hoare triple {81784#true} assume !!(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,098 INFO L273 TraceCheckUtils]: 253: Hoare triple {81784#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {81784#true} is VALID [2018-11-23 12:16:13,098 INFO L273 TraceCheckUtils]: 254: Hoare triple {81784#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81784#true} is VALID [2018-11-23 12:16:13,098 INFO L273 TraceCheckUtils]: 255: Hoare triple {81784#true} assume !(~i~1 < 40); {81784#true} is VALID [2018-11-23 12:16:13,098 INFO L273 TraceCheckUtils]: 256: Hoare triple {81784#true} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {81784#true} is VALID [2018-11-23 12:16:13,098 INFO L273 TraceCheckUtils]: 257: Hoare triple {81784#true} assume true; {81784#true} is VALID [2018-11-23 12:16:13,098 INFO L268 TraceCheckUtils]: 258: Hoare quadruple {81784#true} {81784#true} #86#return; {81784#true} is VALID [2018-11-23 12:16:13,103 INFO L273 TraceCheckUtils]: 259: Hoare triple {81784#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {82566#(<= main_~i~2 0)} is VALID [2018-11-23 12:16:13,105 INFO L273 TraceCheckUtils]: 260: Hoare triple {82566#(<= main_~i~2 0)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {82566#(<= main_~i~2 0)} is VALID [2018-11-23 12:16:13,106 INFO L273 TraceCheckUtils]: 261: Hoare triple {82566#(<= main_~i~2 0)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {82573#(<= main_~i~2 1)} is VALID [2018-11-23 12:16:13,113 INFO L273 TraceCheckUtils]: 262: Hoare triple {82573#(<= main_~i~2 1)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {82573#(<= main_~i~2 1)} is VALID [2018-11-23 12:16:13,116 INFO L273 TraceCheckUtils]: 263: Hoare triple {82573#(<= main_~i~2 1)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {82580#(<= main_~i~2 2)} is VALID [2018-11-23 12:16:13,116 INFO L273 TraceCheckUtils]: 264: Hoare triple {82580#(<= main_~i~2 2)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {82580#(<= main_~i~2 2)} is VALID [2018-11-23 12:16:13,119 INFO L273 TraceCheckUtils]: 265: Hoare triple {82580#(<= main_~i~2 2)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {82587#(<= main_~i~2 3)} is VALID [2018-11-23 12:16:13,120 INFO L273 TraceCheckUtils]: 266: Hoare triple {82587#(<= main_~i~2 3)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {82587#(<= main_~i~2 3)} is VALID [2018-11-23 12:16:13,121 INFO L273 TraceCheckUtils]: 267: Hoare triple {82587#(<= main_~i~2 3)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {82594#(<= main_~i~2 4)} is VALID [2018-11-23 12:16:13,121 INFO L273 TraceCheckUtils]: 268: Hoare triple {82594#(<= main_~i~2 4)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {82594#(<= main_~i~2 4)} is VALID [2018-11-23 12:16:13,123 INFO L273 TraceCheckUtils]: 269: Hoare triple {82594#(<= main_~i~2 4)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {82601#(<= main_~i~2 5)} is VALID [2018-11-23 12:16:13,123 INFO L273 TraceCheckUtils]: 270: Hoare triple {82601#(<= main_~i~2 5)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {82601#(<= main_~i~2 5)} is VALID [2018-11-23 12:16:13,126 INFO L273 TraceCheckUtils]: 271: Hoare triple {82601#(<= main_~i~2 5)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {82608#(<= main_~i~2 6)} is VALID [2018-11-23 12:16:13,126 INFO L273 TraceCheckUtils]: 272: Hoare triple {82608#(<= main_~i~2 6)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {82608#(<= main_~i~2 6)} is VALID [2018-11-23 12:16:13,129 INFO L273 TraceCheckUtils]: 273: Hoare triple {82608#(<= main_~i~2 6)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {82615#(<= main_~i~2 7)} is VALID [2018-11-23 12:16:13,129 INFO L273 TraceCheckUtils]: 274: Hoare triple {82615#(<= main_~i~2 7)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {82615#(<= main_~i~2 7)} is VALID [2018-11-23 12:16:13,132 INFO L273 TraceCheckUtils]: 275: Hoare triple {82615#(<= main_~i~2 7)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {82622#(<= main_~i~2 8)} is VALID [2018-11-23 12:16:13,132 INFO L273 TraceCheckUtils]: 276: Hoare triple {82622#(<= main_~i~2 8)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {82622#(<= main_~i~2 8)} is VALID [2018-11-23 12:16:13,135 INFO L273 TraceCheckUtils]: 277: Hoare triple {82622#(<= main_~i~2 8)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {82629#(<= main_~i~2 9)} is VALID [2018-11-23 12:16:13,135 INFO L273 TraceCheckUtils]: 278: Hoare triple {82629#(<= main_~i~2 9)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {82629#(<= main_~i~2 9)} is VALID [2018-11-23 12:16:13,137 INFO L273 TraceCheckUtils]: 279: Hoare triple {82629#(<= main_~i~2 9)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {82636#(<= main_~i~2 10)} is VALID [2018-11-23 12:16:13,137 INFO L273 TraceCheckUtils]: 280: Hoare triple {82636#(<= main_~i~2 10)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {82636#(<= main_~i~2 10)} is VALID [2018-11-23 12:16:13,140 INFO L273 TraceCheckUtils]: 281: Hoare triple {82636#(<= main_~i~2 10)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {82643#(<= main_~i~2 11)} is VALID [2018-11-23 12:16:13,140 INFO L273 TraceCheckUtils]: 282: Hoare triple {82643#(<= main_~i~2 11)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {82643#(<= main_~i~2 11)} is VALID [2018-11-23 12:16:13,142 INFO L273 TraceCheckUtils]: 283: Hoare triple {82643#(<= main_~i~2 11)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {82650#(<= main_~i~2 12)} is VALID [2018-11-23 12:16:13,142 INFO L273 TraceCheckUtils]: 284: Hoare triple {82650#(<= main_~i~2 12)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {82650#(<= main_~i~2 12)} is VALID [2018-11-23 12:16:13,144 INFO L273 TraceCheckUtils]: 285: Hoare triple {82650#(<= main_~i~2 12)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {82657#(<= main_~i~2 13)} is VALID [2018-11-23 12:16:13,144 INFO L273 TraceCheckUtils]: 286: Hoare triple {82657#(<= main_~i~2 13)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {82657#(<= main_~i~2 13)} is VALID [2018-11-23 12:16:13,146 INFO L273 TraceCheckUtils]: 287: Hoare triple {82657#(<= main_~i~2 13)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {82664#(<= main_~i~2 14)} is VALID [2018-11-23 12:16:13,146 INFO L273 TraceCheckUtils]: 288: Hoare triple {82664#(<= main_~i~2 14)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {82664#(<= main_~i~2 14)} is VALID [2018-11-23 12:16:13,149 INFO L273 TraceCheckUtils]: 289: Hoare triple {82664#(<= main_~i~2 14)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {82671#(<= main_~i~2 15)} is VALID [2018-11-23 12:16:13,149 INFO L273 TraceCheckUtils]: 290: Hoare triple {82671#(<= main_~i~2 15)} assume !(~i~2 < 39); {81785#false} is VALID [2018-11-23 12:16:13,149 INFO L273 TraceCheckUtils]: 291: Hoare triple {81785#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {81785#false} is VALID [2018-11-23 12:16:13,149 INFO L256 TraceCheckUtils]: 292: Hoare triple {81785#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {81785#false} is VALID [2018-11-23 12:16:13,149 INFO L273 TraceCheckUtils]: 293: Hoare triple {81785#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {81785#false} is VALID [2018-11-23 12:16:13,150 INFO L273 TraceCheckUtils]: 294: Hoare triple {81785#false} assume !!(~i~1 < 40); {81785#false} is VALID [2018-11-23 12:16:13,150 INFO L273 TraceCheckUtils]: 295: Hoare triple {81785#false} assume !(~i~1 > 20); {81785#false} is VALID [2018-11-23 12:16:13,150 INFO L273 TraceCheckUtils]: 296: Hoare triple {81785#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81785#false} is VALID [2018-11-23 12:16:13,150 INFO L273 TraceCheckUtils]: 297: Hoare triple {81785#false} assume !!(~i~1 < 40); {81785#false} is VALID [2018-11-23 12:16:13,150 INFO L273 TraceCheckUtils]: 298: Hoare triple {81785#false} assume !(~i~1 > 20); {81785#false} is VALID [2018-11-23 12:16:13,150 INFO L273 TraceCheckUtils]: 299: Hoare triple {81785#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81785#false} is VALID [2018-11-23 12:16:13,150 INFO L273 TraceCheckUtils]: 300: Hoare triple {81785#false} assume !!(~i~1 < 40); {81785#false} is VALID [2018-11-23 12:16:13,150 INFO L273 TraceCheckUtils]: 301: Hoare triple {81785#false} assume !(~i~1 > 20); {81785#false} is VALID [2018-11-23 12:16:13,150 INFO L273 TraceCheckUtils]: 302: Hoare triple {81785#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81785#false} is VALID [2018-11-23 12:16:13,150 INFO L273 TraceCheckUtils]: 303: Hoare triple {81785#false} assume !!(~i~1 < 40); {81785#false} is VALID [2018-11-23 12:16:13,151 INFO L273 TraceCheckUtils]: 304: Hoare triple {81785#false} assume !(~i~1 > 20); {81785#false} is VALID [2018-11-23 12:16:13,151 INFO L273 TraceCheckUtils]: 305: Hoare triple {81785#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81785#false} is VALID [2018-11-23 12:16:13,151 INFO L273 TraceCheckUtils]: 306: Hoare triple {81785#false} assume !!(~i~1 < 40); {81785#false} is VALID [2018-11-23 12:16:13,151 INFO L273 TraceCheckUtils]: 307: Hoare triple {81785#false} assume !(~i~1 > 20); {81785#false} is VALID [2018-11-23 12:16:13,151 INFO L273 TraceCheckUtils]: 308: Hoare triple {81785#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81785#false} is VALID [2018-11-23 12:16:13,151 INFO L273 TraceCheckUtils]: 309: Hoare triple {81785#false} assume !!(~i~1 < 40); {81785#false} is VALID [2018-11-23 12:16:13,151 INFO L273 TraceCheckUtils]: 310: Hoare triple {81785#false} assume !(~i~1 > 20); {81785#false} is VALID [2018-11-23 12:16:13,151 INFO L273 TraceCheckUtils]: 311: Hoare triple {81785#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81785#false} is VALID [2018-11-23 12:16:13,151 INFO L273 TraceCheckUtils]: 312: Hoare triple {81785#false} assume !!(~i~1 < 40); {81785#false} is VALID [2018-11-23 12:16:13,152 INFO L273 TraceCheckUtils]: 313: Hoare triple {81785#false} assume !(~i~1 > 20); {81785#false} is VALID [2018-11-23 12:16:13,152 INFO L273 TraceCheckUtils]: 314: Hoare triple {81785#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81785#false} is VALID [2018-11-23 12:16:13,152 INFO L273 TraceCheckUtils]: 315: Hoare triple {81785#false} assume !!(~i~1 < 40); {81785#false} is VALID [2018-11-23 12:16:13,152 INFO L273 TraceCheckUtils]: 316: Hoare triple {81785#false} assume !(~i~1 > 20); {81785#false} is VALID [2018-11-23 12:16:13,152 INFO L273 TraceCheckUtils]: 317: Hoare triple {81785#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81785#false} is VALID [2018-11-23 12:16:13,152 INFO L273 TraceCheckUtils]: 318: Hoare triple {81785#false} assume !!(~i~1 < 40); {81785#false} is VALID [2018-11-23 12:16:13,152 INFO L273 TraceCheckUtils]: 319: Hoare triple {81785#false} assume !(~i~1 > 20); {81785#false} is VALID [2018-11-23 12:16:13,152 INFO L273 TraceCheckUtils]: 320: Hoare triple {81785#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81785#false} is VALID [2018-11-23 12:16:13,152 INFO L273 TraceCheckUtils]: 321: Hoare triple {81785#false} assume !!(~i~1 < 40); {81785#false} is VALID [2018-11-23 12:16:13,152 INFO L273 TraceCheckUtils]: 322: Hoare triple {81785#false} assume !(~i~1 > 20); {81785#false} is VALID [2018-11-23 12:16:13,153 INFO L273 TraceCheckUtils]: 323: Hoare triple {81785#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81785#false} is VALID [2018-11-23 12:16:13,153 INFO L273 TraceCheckUtils]: 324: Hoare triple {81785#false} assume !!(~i~1 < 40); {81785#false} is VALID [2018-11-23 12:16:13,153 INFO L273 TraceCheckUtils]: 325: Hoare triple {81785#false} assume !(~i~1 > 20); {81785#false} is VALID [2018-11-23 12:16:13,153 INFO L273 TraceCheckUtils]: 326: Hoare triple {81785#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81785#false} is VALID [2018-11-23 12:16:13,153 INFO L273 TraceCheckUtils]: 327: Hoare triple {81785#false} assume !!(~i~1 < 40); {81785#false} is VALID [2018-11-23 12:16:13,153 INFO L273 TraceCheckUtils]: 328: Hoare triple {81785#false} assume !(~i~1 > 20); {81785#false} is VALID [2018-11-23 12:16:13,153 INFO L273 TraceCheckUtils]: 329: Hoare triple {81785#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81785#false} is VALID [2018-11-23 12:16:13,153 INFO L273 TraceCheckUtils]: 330: Hoare triple {81785#false} assume !!(~i~1 < 40); {81785#false} is VALID [2018-11-23 12:16:13,153 INFO L273 TraceCheckUtils]: 331: Hoare triple {81785#false} assume !(~i~1 > 20); {81785#false} is VALID [2018-11-23 12:16:13,154 INFO L273 TraceCheckUtils]: 332: Hoare triple {81785#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81785#false} is VALID [2018-11-23 12:16:13,154 INFO L273 TraceCheckUtils]: 333: Hoare triple {81785#false} assume !!(~i~1 < 40); {81785#false} is VALID [2018-11-23 12:16:13,154 INFO L273 TraceCheckUtils]: 334: Hoare triple {81785#false} assume !(~i~1 > 20); {81785#false} is VALID [2018-11-23 12:16:13,154 INFO L273 TraceCheckUtils]: 335: Hoare triple {81785#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81785#false} is VALID [2018-11-23 12:16:13,154 INFO L273 TraceCheckUtils]: 336: Hoare triple {81785#false} assume !!(~i~1 < 40); {81785#false} is VALID [2018-11-23 12:16:13,154 INFO L273 TraceCheckUtils]: 337: Hoare triple {81785#false} assume !(~i~1 > 20); {81785#false} is VALID [2018-11-23 12:16:13,154 INFO L273 TraceCheckUtils]: 338: Hoare triple {81785#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81785#false} is VALID [2018-11-23 12:16:13,154 INFO L273 TraceCheckUtils]: 339: Hoare triple {81785#false} assume !!(~i~1 < 40); {81785#false} is VALID [2018-11-23 12:16:13,154 INFO L273 TraceCheckUtils]: 340: Hoare triple {81785#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {81785#false} is VALID [2018-11-23 12:16:13,154 INFO L273 TraceCheckUtils]: 341: Hoare triple {81785#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81785#false} is VALID [2018-11-23 12:16:13,155 INFO L273 TraceCheckUtils]: 342: Hoare triple {81785#false} assume !!(~i~1 < 40); {81785#false} is VALID [2018-11-23 12:16:13,155 INFO L273 TraceCheckUtils]: 343: Hoare triple {81785#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {81785#false} is VALID [2018-11-23 12:16:13,155 INFO L273 TraceCheckUtils]: 344: Hoare triple {81785#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81785#false} is VALID [2018-11-23 12:16:13,155 INFO L273 TraceCheckUtils]: 345: Hoare triple {81785#false} assume !!(~i~1 < 40); {81785#false} is VALID [2018-11-23 12:16:13,155 INFO L273 TraceCheckUtils]: 346: Hoare triple {81785#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {81785#false} is VALID [2018-11-23 12:16:13,155 INFO L273 TraceCheckUtils]: 347: Hoare triple {81785#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81785#false} is VALID [2018-11-23 12:16:13,155 INFO L273 TraceCheckUtils]: 348: Hoare triple {81785#false} assume !!(~i~1 < 40); {81785#false} is VALID [2018-11-23 12:16:13,155 INFO L273 TraceCheckUtils]: 349: Hoare triple {81785#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {81785#false} is VALID [2018-11-23 12:16:13,155 INFO L273 TraceCheckUtils]: 350: Hoare triple {81785#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81785#false} is VALID [2018-11-23 12:16:13,155 INFO L273 TraceCheckUtils]: 351: Hoare triple {81785#false} assume !!(~i~1 < 40); {81785#false} is VALID [2018-11-23 12:16:13,156 INFO L273 TraceCheckUtils]: 352: Hoare triple {81785#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {81785#false} is VALID [2018-11-23 12:16:13,156 INFO L273 TraceCheckUtils]: 353: Hoare triple {81785#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81785#false} is VALID [2018-11-23 12:16:13,156 INFO L273 TraceCheckUtils]: 354: Hoare triple {81785#false} assume !!(~i~1 < 40); {81785#false} is VALID [2018-11-23 12:16:13,156 INFO L273 TraceCheckUtils]: 355: Hoare triple {81785#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {81785#false} is VALID [2018-11-23 12:16:13,156 INFO L273 TraceCheckUtils]: 356: Hoare triple {81785#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81785#false} is VALID [2018-11-23 12:16:13,156 INFO L273 TraceCheckUtils]: 357: Hoare triple {81785#false} assume !!(~i~1 < 40); {81785#false} is VALID [2018-11-23 12:16:13,156 INFO L273 TraceCheckUtils]: 358: Hoare triple {81785#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {81785#false} is VALID [2018-11-23 12:16:13,156 INFO L273 TraceCheckUtils]: 359: Hoare triple {81785#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81785#false} is VALID [2018-11-23 12:16:13,156 INFO L273 TraceCheckUtils]: 360: Hoare triple {81785#false} assume !!(~i~1 < 40); {81785#false} is VALID [2018-11-23 12:16:13,157 INFO L273 TraceCheckUtils]: 361: Hoare triple {81785#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {81785#false} is VALID [2018-11-23 12:16:13,157 INFO L273 TraceCheckUtils]: 362: Hoare triple {81785#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81785#false} is VALID [2018-11-23 12:16:13,157 INFO L273 TraceCheckUtils]: 363: Hoare triple {81785#false} assume !!(~i~1 < 40); {81785#false} is VALID [2018-11-23 12:16:13,157 INFO L273 TraceCheckUtils]: 364: Hoare triple {81785#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {81785#false} is VALID [2018-11-23 12:16:13,157 INFO L273 TraceCheckUtils]: 365: Hoare triple {81785#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81785#false} is VALID [2018-11-23 12:16:13,157 INFO L273 TraceCheckUtils]: 366: Hoare triple {81785#false} assume !!(~i~1 < 40); {81785#false} is VALID [2018-11-23 12:16:13,157 INFO L273 TraceCheckUtils]: 367: Hoare triple {81785#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {81785#false} is VALID [2018-11-23 12:16:13,157 INFO L273 TraceCheckUtils]: 368: Hoare triple {81785#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81785#false} is VALID [2018-11-23 12:16:13,157 INFO L273 TraceCheckUtils]: 369: Hoare triple {81785#false} assume !!(~i~1 < 40); {81785#false} is VALID [2018-11-23 12:16:13,157 INFO L273 TraceCheckUtils]: 370: Hoare triple {81785#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {81785#false} is VALID [2018-11-23 12:16:13,158 INFO L273 TraceCheckUtils]: 371: Hoare triple {81785#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81785#false} is VALID [2018-11-23 12:16:13,158 INFO L273 TraceCheckUtils]: 372: Hoare triple {81785#false} assume !!(~i~1 < 40); {81785#false} is VALID [2018-11-23 12:16:13,158 INFO L273 TraceCheckUtils]: 373: Hoare triple {81785#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {81785#false} is VALID [2018-11-23 12:16:13,158 INFO L273 TraceCheckUtils]: 374: Hoare triple {81785#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81785#false} is VALID [2018-11-23 12:16:13,158 INFO L273 TraceCheckUtils]: 375: Hoare triple {81785#false} assume !!(~i~1 < 40); {81785#false} is VALID [2018-11-23 12:16:13,158 INFO L273 TraceCheckUtils]: 376: Hoare triple {81785#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {81785#false} is VALID [2018-11-23 12:16:13,158 INFO L273 TraceCheckUtils]: 377: Hoare triple {81785#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81785#false} is VALID [2018-11-23 12:16:13,158 INFO L273 TraceCheckUtils]: 378: Hoare triple {81785#false} assume !!(~i~1 < 40); {81785#false} is VALID [2018-11-23 12:16:13,158 INFO L273 TraceCheckUtils]: 379: Hoare triple {81785#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {81785#false} is VALID [2018-11-23 12:16:13,158 INFO L273 TraceCheckUtils]: 380: Hoare triple {81785#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81785#false} is VALID [2018-11-23 12:16:13,159 INFO L273 TraceCheckUtils]: 381: Hoare triple {81785#false} assume !!(~i~1 < 40); {81785#false} is VALID [2018-11-23 12:16:13,159 INFO L273 TraceCheckUtils]: 382: Hoare triple {81785#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {81785#false} is VALID [2018-11-23 12:16:13,159 INFO L273 TraceCheckUtils]: 383: Hoare triple {81785#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81785#false} is VALID [2018-11-23 12:16:13,159 INFO L273 TraceCheckUtils]: 384: Hoare triple {81785#false} assume !!(~i~1 < 40); {81785#false} is VALID [2018-11-23 12:16:13,159 INFO L273 TraceCheckUtils]: 385: Hoare triple {81785#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {81785#false} is VALID [2018-11-23 12:16:13,159 INFO L273 TraceCheckUtils]: 386: Hoare triple {81785#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {81785#false} is VALID [2018-11-23 12:16:13,159 INFO L273 TraceCheckUtils]: 387: Hoare triple {81785#false} assume !(~i~1 < 40); {81785#false} is VALID [2018-11-23 12:16:13,159 INFO L273 TraceCheckUtils]: 388: Hoare triple {81785#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {81785#false} is VALID [2018-11-23 12:16:13,159 INFO L273 TraceCheckUtils]: 389: Hoare triple {81785#false} assume true; {81785#false} is VALID [2018-11-23 12:16:13,160 INFO L268 TraceCheckUtils]: 390: Hoare quadruple {81785#false} {81785#false} #88#return; {81785#false} is VALID [2018-11-23 12:16:13,160 INFO L273 TraceCheckUtils]: 391: Hoare triple {81785#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {81785#false} is VALID [2018-11-23 12:16:13,160 INFO L273 TraceCheckUtils]: 392: Hoare triple {81785#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {81785#false} is VALID [2018-11-23 12:16:13,160 INFO L273 TraceCheckUtils]: 393: Hoare triple {81785#false} assume !false; {81785#false} is VALID [2018-11-23 12:16:13,209 INFO L134 CoverageAnalysis]: Checked inductivity of 13929 backedges. 5900 proven. 225 refuted. 0 times theorem prover too weak. 7804 trivial. 0 not checked. [2018-11-23 12:16:13,231 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:16:13,231 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [18] total 18 [2018-11-23 12:16:13,232 INFO L78 Accepts]: Start accepts. Automaton has 18 states. Word has length 394 [2018-11-23 12:16:13,232 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:16:13,232 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 18 states. [2018-11-23 12:16:13,304 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-23 12:16:13,304 INFO L459 AbstractCegarLoop]: Interpolant automaton has 18 states [2018-11-23 12:16:13,304 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2018-11-23 12:16:13,304 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=153, Invalid=153, Unknown=0, NotChecked=0, Total=306 [2018-11-23 12:16:13,305 INFO L87 Difference]: Start difference. First operand 199 states and 220 transitions. Second operand 18 states. [2018-11-23 12:16:13,610 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:13,610 INFO L93 Difference]: Finished difference Result 306 states and 345 transitions. [2018-11-23 12:16:13,610 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2018-11-23 12:16:13,611 INFO L78 Accepts]: Start accepts. Automaton has 18 states. Word has length 394 [2018-11-23 12:16:13,611 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:16:13,611 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 18 states. [2018-11-23 12:16:13,612 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 86 transitions. [2018-11-23 12:16:13,612 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 18 states. [2018-11-23 12:16:13,612 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 86 transitions. [2018-11-23 12:16:13,612 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 18 states and 86 transitions. [2018-11-23 12:16:13,687 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 86 edges. 86 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:16:13,691 INFO L225 Difference]: With dead ends: 306 [2018-11-23 12:16:13,691 INFO L226 Difference]: Without dead ends: 202 [2018-11-23 12:16:13,692 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 393 GetRequests, 377 SyntacticMatches, 0 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=153, Invalid=153, Unknown=0, NotChecked=0, Total=306 [2018-11-23 12:16:13,692 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 202 states. [2018-11-23 12:16:13,800 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 202 to 201. [2018-11-23 12:16:13,800 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:16:13,800 INFO L82 GeneralOperation]: Start isEquivalent. First operand 202 states. Second operand 201 states. [2018-11-23 12:16:13,800 INFO L74 IsIncluded]: Start isIncluded. First operand 202 states. Second operand 201 states. [2018-11-23 12:16:13,800 INFO L87 Difference]: Start difference. First operand 202 states. Second operand 201 states. [2018-11-23 12:16:13,804 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:13,804 INFO L93 Difference]: Finished difference Result 202 states and 223 transitions. [2018-11-23 12:16:13,805 INFO L276 IsEmpty]: Start isEmpty. Operand 202 states and 223 transitions. [2018-11-23 12:16:13,805 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:13,805 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:13,805 INFO L74 IsIncluded]: Start isIncluded. First operand 201 states. Second operand 202 states. [2018-11-23 12:16:13,805 INFO L87 Difference]: Start difference. First operand 201 states. Second operand 202 states. [2018-11-23 12:16:13,808 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:13,808 INFO L93 Difference]: Finished difference Result 202 states and 223 transitions. [2018-11-23 12:16:13,808 INFO L276 IsEmpty]: Start isEmpty. Operand 202 states and 223 transitions. [2018-11-23 12:16:13,809 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:13,809 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:13,809 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:16:13,809 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:16:13,809 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 201 states. [2018-11-23 12:16:13,812 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 201 states to 201 states and 222 transitions. [2018-11-23 12:16:13,813 INFO L78 Accepts]: Start accepts. Automaton has 201 states and 222 transitions. Word has length 394 [2018-11-23 12:16:13,813 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:16:13,813 INFO L480 AbstractCegarLoop]: Abstraction has 201 states and 222 transitions. [2018-11-23 12:16:13,813 INFO L481 AbstractCegarLoop]: Interpolant automaton has 18 states. [2018-11-23 12:16:13,813 INFO L276 IsEmpty]: Start isEmpty. Operand 201 states and 222 transitions. [2018-11-23 12:16:13,816 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 397 [2018-11-23 12:16:13,816 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:16:13,816 INFO L402 BasicCegarLoop]: trace histogram [93, 93, 48, 45, 24, 24, 16, 16, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:16:13,817 INFO L423 AbstractCegarLoop]: === Iteration 66 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:16:13,817 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:16:13,817 INFO L82 PathProgramCache]: Analyzing trace with hash 1932913108, now seen corresponding path program 61 times [2018-11-23 12:16:13,817 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:16:13,817 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:16:13,818 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:13,818 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:16:13,818 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:13,831 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:16:13,831 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:16:13,831 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 67 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 67 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:16:13,848 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:16:13,973 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:14,032 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:14,034 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:16:14,687 INFO L256 TraceCheckUtils]: 0: Hoare triple {84096#true} call ULTIMATE.init(); {84096#true} is VALID [2018-11-23 12:16:14,688 INFO L273 TraceCheckUtils]: 1: Hoare triple {84096#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {84096#true} is VALID [2018-11-23 12:16:14,688 INFO L273 TraceCheckUtils]: 2: Hoare triple {84096#true} assume true; {84096#true} is VALID [2018-11-23 12:16:14,688 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {84096#true} {84096#true} #78#return; {84096#true} is VALID [2018-11-23 12:16:14,688 INFO L256 TraceCheckUtils]: 4: Hoare triple {84096#true} call #t~ret12 := main(); {84096#true} is VALID [2018-11-23 12:16:14,689 INFO L273 TraceCheckUtils]: 5: Hoare triple {84096#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {84096#true} is VALID [2018-11-23 12:16:14,689 INFO L256 TraceCheckUtils]: 6: Hoare triple {84096#true} call init_nondet(~#x~0.base, ~#x~0.offset); {84096#true} is VALID [2018-11-23 12:16:14,689 INFO L273 TraceCheckUtils]: 7: Hoare triple {84096#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {84122#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:16:14,690 INFO L273 TraceCheckUtils]: 8: Hoare triple {84122#(<= init_nondet_~i~0 0)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {84122#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:16:14,690 INFO L273 TraceCheckUtils]: 9: Hoare triple {84122#(<= init_nondet_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {84129#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:16:14,691 INFO L273 TraceCheckUtils]: 10: Hoare triple {84129#(<= init_nondet_~i~0 1)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {84129#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:16:14,691 INFO L273 TraceCheckUtils]: 11: Hoare triple {84129#(<= init_nondet_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {84136#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:16:14,691 INFO L273 TraceCheckUtils]: 12: Hoare triple {84136#(<= init_nondet_~i~0 2)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {84136#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:16:14,692 INFO L273 TraceCheckUtils]: 13: Hoare triple {84136#(<= init_nondet_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {84143#(<= init_nondet_~i~0 3)} is VALID [2018-11-23 12:16:14,692 INFO L273 TraceCheckUtils]: 14: Hoare triple {84143#(<= init_nondet_~i~0 3)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {84143#(<= init_nondet_~i~0 3)} is VALID [2018-11-23 12:16:14,693 INFO L273 TraceCheckUtils]: 15: Hoare triple {84143#(<= init_nondet_~i~0 3)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {84150#(<= init_nondet_~i~0 4)} is VALID [2018-11-23 12:16:14,694 INFO L273 TraceCheckUtils]: 16: Hoare triple {84150#(<= init_nondet_~i~0 4)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {84150#(<= init_nondet_~i~0 4)} is VALID [2018-11-23 12:16:14,694 INFO L273 TraceCheckUtils]: 17: Hoare triple {84150#(<= init_nondet_~i~0 4)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {84157#(<= init_nondet_~i~0 5)} is VALID [2018-11-23 12:16:14,695 INFO L273 TraceCheckUtils]: 18: Hoare triple {84157#(<= init_nondet_~i~0 5)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {84157#(<= init_nondet_~i~0 5)} is VALID [2018-11-23 12:16:14,696 INFO L273 TraceCheckUtils]: 19: Hoare triple {84157#(<= init_nondet_~i~0 5)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {84164#(<= init_nondet_~i~0 6)} is VALID [2018-11-23 12:16:14,696 INFO L273 TraceCheckUtils]: 20: Hoare triple {84164#(<= init_nondet_~i~0 6)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {84164#(<= init_nondet_~i~0 6)} is VALID [2018-11-23 12:16:14,697 INFO L273 TraceCheckUtils]: 21: Hoare triple {84164#(<= init_nondet_~i~0 6)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {84171#(<= init_nondet_~i~0 7)} is VALID [2018-11-23 12:16:14,697 INFO L273 TraceCheckUtils]: 22: Hoare triple {84171#(<= init_nondet_~i~0 7)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {84171#(<= init_nondet_~i~0 7)} is VALID [2018-11-23 12:16:14,698 INFO L273 TraceCheckUtils]: 23: Hoare triple {84171#(<= init_nondet_~i~0 7)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {84178#(<= init_nondet_~i~0 8)} is VALID [2018-11-23 12:16:14,698 INFO L273 TraceCheckUtils]: 24: Hoare triple {84178#(<= init_nondet_~i~0 8)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {84178#(<= init_nondet_~i~0 8)} is VALID [2018-11-23 12:16:14,699 INFO L273 TraceCheckUtils]: 25: Hoare triple {84178#(<= init_nondet_~i~0 8)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {84185#(<= init_nondet_~i~0 9)} is VALID [2018-11-23 12:16:14,700 INFO L273 TraceCheckUtils]: 26: Hoare triple {84185#(<= init_nondet_~i~0 9)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {84185#(<= init_nondet_~i~0 9)} is VALID [2018-11-23 12:16:14,700 INFO L273 TraceCheckUtils]: 27: Hoare triple {84185#(<= init_nondet_~i~0 9)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {84192#(<= init_nondet_~i~0 10)} is VALID [2018-11-23 12:16:14,701 INFO L273 TraceCheckUtils]: 28: Hoare triple {84192#(<= init_nondet_~i~0 10)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {84192#(<= init_nondet_~i~0 10)} is VALID [2018-11-23 12:16:14,701 INFO L273 TraceCheckUtils]: 29: Hoare triple {84192#(<= init_nondet_~i~0 10)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {84199#(<= init_nondet_~i~0 11)} is VALID [2018-11-23 12:16:14,702 INFO L273 TraceCheckUtils]: 30: Hoare triple {84199#(<= init_nondet_~i~0 11)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {84199#(<= init_nondet_~i~0 11)} is VALID [2018-11-23 12:16:14,703 INFO L273 TraceCheckUtils]: 31: Hoare triple {84199#(<= init_nondet_~i~0 11)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {84206#(<= init_nondet_~i~0 12)} is VALID [2018-11-23 12:16:14,703 INFO L273 TraceCheckUtils]: 32: Hoare triple {84206#(<= init_nondet_~i~0 12)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {84206#(<= init_nondet_~i~0 12)} is VALID [2018-11-23 12:16:14,704 INFO L273 TraceCheckUtils]: 33: Hoare triple {84206#(<= init_nondet_~i~0 12)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {84213#(<= init_nondet_~i~0 13)} is VALID [2018-11-23 12:16:14,704 INFO L273 TraceCheckUtils]: 34: Hoare triple {84213#(<= init_nondet_~i~0 13)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {84213#(<= init_nondet_~i~0 13)} is VALID [2018-11-23 12:16:14,705 INFO L273 TraceCheckUtils]: 35: Hoare triple {84213#(<= init_nondet_~i~0 13)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {84220#(<= init_nondet_~i~0 14)} is VALID [2018-11-23 12:16:14,706 INFO L273 TraceCheckUtils]: 36: Hoare triple {84220#(<= init_nondet_~i~0 14)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {84220#(<= init_nondet_~i~0 14)} is VALID [2018-11-23 12:16:14,706 INFO L273 TraceCheckUtils]: 37: Hoare triple {84220#(<= init_nondet_~i~0 14)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {84227#(<= init_nondet_~i~0 15)} is VALID [2018-11-23 12:16:14,707 INFO L273 TraceCheckUtils]: 38: Hoare triple {84227#(<= init_nondet_~i~0 15)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {84227#(<= init_nondet_~i~0 15)} is VALID [2018-11-23 12:16:14,707 INFO L273 TraceCheckUtils]: 39: Hoare triple {84227#(<= init_nondet_~i~0 15)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {84234#(<= init_nondet_~i~0 16)} is VALID [2018-11-23 12:16:14,708 INFO L273 TraceCheckUtils]: 40: Hoare triple {84234#(<= init_nondet_~i~0 16)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {84234#(<= init_nondet_~i~0 16)} is VALID [2018-11-23 12:16:14,709 INFO L273 TraceCheckUtils]: 41: Hoare triple {84234#(<= init_nondet_~i~0 16)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {84241#(<= init_nondet_~i~0 17)} is VALID [2018-11-23 12:16:14,709 INFO L273 TraceCheckUtils]: 42: Hoare triple {84241#(<= init_nondet_~i~0 17)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {84241#(<= init_nondet_~i~0 17)} is VALID [2018-11-23 12:16:14,710 INFO L273 TraceCheckUtils]: 43: Hoare triple {84241#(<= init_nondet_~i~0 17)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {84248#(<= init_nondet_~i~0 18)} is VALID [2018-11-23 12:16:14,710 INFO L273 TraceCheckUtils]: 44: Hoare triple {84248#(<= init_nondet_~i~0 18)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {84248#(<= init_nondet_~i~0 18)} is VALID [2018-11-23 12:16:14,711 INFO L273 TraceCheckUtils]: 45: Hoare triple {84248#(<= init_nondet_~i~0 18)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {84255#(<= init_nondet_~i~0 19)} is VALID [2018-11-23 12:16:14,712 INFO L273 TraceCheckUtils]: 46: Hoare triple {84255#(<= init_nondet_~i~0 19)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {84255#(<= init_nondet_~i~0 19)} is VALID [2018-11-23 12:16:14,712 INFO L273 TraceCheckUtils]: 47: Hoare triple {84255#(<= init_nondet_~i~0 19)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {84262#(<= init_nondet_~i~0 20)} is VALID [2018-11-23 12:16:14,713 INFO L273 TraceCheckUtils]: 48: Hoare triple {84262#(<= init_nondet_~i~0 20)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {84262#(<= init_nondet_~i~0 20)} is VALID [2018-11-23 12:16:14,714 INFO L273 TraceCheckUtils]: 49: Hoare triple {84262#(<= init_nondet_~i~0 20)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {84269#(<= init_nondet_~i~0 21)} is VALID [2018-11-23 12:16:14,714 INFO L273 TraceCheckUtils]: 50: Hoare triple {84269#(<= init_nondet_~i~0 21)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {84269#(<= init_nondet_~i~0 21)} is VALID [2018-11-23 12:16:14,715 INFO L273 TraceCheckUtils]: 51: Hoare triple {84269#(<= init_nondet_~i~0 21)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {84276#(<= init_nondet_~i~0 22)} is VALID [2018-11-23 12:16:14,715 INFO L273 TraceCheckUtils]: 52: Hoare triple {84276#(<= init_nondet_~i~0 22)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {84276#(<= init_nondet_~i~0 22)} is VALID [2018-11-23 12:16:14,716 INFO L273 TraceCheckUtils]: 53: Hoare triple {84276#(<= init_nondet_~i~0 22)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {84283#(<= init_nondet_~i~0 23)} is VALID [2018-11-23 12:16:14,716 INFO L273 TraceCheckUtils]: 54: Hoare triple {84283#(<= init_nondet_~i~0 23)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {84283#(<= init_nondet_~i~0 23)} is VALID [2018-11-23 12:16:14,717 INFO L273 TraceCheckUtils]: 55: Hoare triple {84283#(<= init_nondet_~i~0 23)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {84290#(<= init_nondet_~i~0 24)} is VALID [2018-11-23 12:16:14,718 INFO L273 TraceCheckUtils]: 56: Hoare triple {84290#(<= init_nondet_~i~0 24)} assume !(~i~0 < 40); {84097#false} is VALID [2018-11-23 12:16:14,718 INFO L273 TraceCheckUtils]: 57: Hoare triple {84097#false} assume true; {84097#false} is VALID [2018-11-23 12:16:14,718 INFO L268 TraceCheckUtils]: 58: Hoare quadruple {84097#false} {84096#true} #82#return; {84097#false} is VALID [2018-11-23 12:16:14,718 INFO L273 TraceCheckUtils]: 59: Hoare triple {84097#false} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {84097#false} is VALID [2018-11-23 12:16:14,718 INFO L256 TraceCheckUtils]: 60: Hoare triple {84097#false} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {84097#false} is VALID [2018-11-23 12:16:14,719 INFO L273 TraceCheckUtils]: 61: Hoare triple {84097#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {84097#false} is VALID [2018-11-23 12:16:14,719 INFO L273 TraceCheckUtils]: 62: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,719 INFO L273 TraceCheckUtils]: 63: Hoare triple {84097#false} assume !(~i~1 > 20); {84097#false} is VALID [2018-11-23 12:16:14,719 INFO L273 TraceCheckUtils]: 64: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,719 INFO L273 TraceCheckUtils]: 65: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,719 INFO L273 TraceCheckUtils]: 66: Hoare triple {84097#false} assume !(~i~1 > 20); {84097#false} is VALID [2018-11-23 12:16:14,720 INFO L273 TraceCheckUtils]: 67: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,720 INFO L273 TraceCheckUtils]: 68: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,720 INFO L273 TraceCheckUtils]: 69: Hoare triple {84097#false} assume !(~i~1 > 20); {84097#false} is VALID [2018-11-23 12:16:14,720 INFO L273 TraceCheckUtils]: 70: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,720 INFO L273 TraceCheckUtils]: 71: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,720 INFO L273 TraceCheckUtils]: 72: Hoare triple {84097#false} assume !(~i~1 > 20); {84097#false} is VALID [2018-11-23 12:16:14,721 INFO L273 TraceCheckUtils]: 73: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,721 INFO L273 TraceCheckUtils]: 74: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,721 INFO L273 TraceCheckUtils]: 75: Hoare triple {84097#false} assume !(~i~1 > 20); {84097#false} is VALID [2018-11-23 12:16:14,721 INFO L273 TraceCheckUtils]: 76: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,721 INFO L273 TraceCheckUtils]: 77: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,721 INFO L273 TraceCheckUtils]: 78: Hoare triple {84097#false} assume !(~i~1 > 20); {84097#false} is VALID [2018-11-23 12:16:14,722 INFO L273 TraceCheckUtils]: 79: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,722 INFO L273 TraceCheckUtils]: 80: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,722 INFO L273 TraceCheckUtils]: 81: Hoare triple {84097#false} assume !(~i~1 > 20); {84097#false} is VALID [2018-11-23 12:16:14,722 INFO L273 TraceCheckUtils]: 82: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,722 INFO L273 TraceCheckUtils]: 83: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,722 INFO L273 TraceCheckUtils]: 84: Hoare triple {84097#false} assume !(~i~1 > 20); {84097#false} is VALID [2018-11-23 12:16:14,722 INFO L273 TraceCheckUtils]: 85: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,722 INFO L273 TraceCheckUtils]: 86: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,722 INFO L273 TraceCheckUtils]: 87: Hoare triple {84097#false} assume !(~i~1 > 20); {84097#false} is VALID [2018-11-23 12:16:14,722 INFO L273 TraceCheckUtils]: 88: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,723 INFO L273 TraceCheckUtils]: 89: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,723 INFO L273 TraceCheckUtils]: 90: Hoare triple {84097#false} assume !(~i~1 > 20); {84097#false} is VALID [2018-11-23 12:16:14,723 INFO L273 TraceCheckUtils]: 91: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,723 INFO L273 TraceCheckUtils]: 92: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,723 INFO L273 TraceCheckUtils]: 93: Hoare triple {84097#false} assume !(~i~1 > 20); {84097#false} is VALID [2018-11-23 12:16:14,723 INFO L273 TraceCheckUtils]: 94: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,723 INFO L273 TraceCheckUtils]: 95: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,723 INFO L273 TraceCheckUtils]: 96: Hoare triple {84097#false} assume !(~i~1 > 20); {84097#false} is VALID [2018-11-23 12:16:14,723 INFO L273 TraceCheckUtils]: 97: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,723 INFO L273 TraceCheckUtils]: 98: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,724 INFO L273 TraceCheckUtils]: 99: Hoare triple {84097#false} assume !(~i~1 > 20); {84097#false} is VALID [2018-11-23 12:16:14,724 INFO L273 TraceCheckUtils]: 100: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,724 INFO L273 TraceCheckUtils]: 101: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,724 INFO L273 TraceCheckUtils]: 102: Hoare triple {84097#false} assume !(~i~1 > 20); {84097#false} is VALID [2018-11-23 12:16:14,724 INFO L273 TraceCheckUtils]: 103: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,724 INFO L273 TraceCheckUtils]: 104: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,724 INFO L273 TraceCheckUtils]: 105: Hoare triple {84097#false} assume !(~i~1 > 20); {84097#false} is VALID [2018-11-23 12:16:14,724 INFO L273 TraceCheckUtils]: 106: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,724 INFO L273 TraceCheckUtils]: 107: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,724 INFO L273 TraceCheckUtils]: 108: Hoare triple {84097#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {84097#false} is VALID [2018-11-23 12:16:14,725 INFO L273 TraceCheckUtils]: 109: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,725 INFO L273 TraceCheckUtils]: 110: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,725 INFO L273 TraceCheckUtils]: 111: Hoare triple {84097#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {84097#false} is VALID [2018-11-23 12:16:14,725 INFO L273 TraceCheckUtils]: 112: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,725 INFO L273 TraceCheckUtils]: 113: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,725 INFO L273 TraceCheckUtils]: 114: Hoare triple {84097#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {84097#false} is VALID [2018-11-23 12:16:14,725 INFO L273 TraceCheckUtils]: 115: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,725 INFO L273 TraceCheckUtils]: 116: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,725 INFO L273 TraceCheckUtils]: 117: Hoare triple {84097#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {84097#false} is VALID [2018-11-23 12:16:14,725 INFO L273 TraceCheckUtils]: 118: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,726 INFO L273 TraceCheckUtils]: 119: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,726 INFO L273 TraceCheckUtils]: 120: Hoare triple {84097#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {84097#false} is VALID [2018-11-23 12:16:14,726 INFO L273 TraceCheckUtils]: 121: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,726 INFO L273 TraceCheckUtils]: 122: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,726 INFO L273 TraceCheckUtils]: 123: Hoare triple {84097#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {84097#false} is VALID [2018-11-23 12:16:14,726 INFO L273 TraceCheckUtils]: 124: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,726 INFO L273 TraceCheckUtils]: 125: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,726 INFO L273 TraceCheckUtils]: 126: Hoare triple {84097#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {84097#false} is VALID [2018-11-23 12:16:14,726 INFO L273 TraceCheckUtils]: 127: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,726 INFO L273 TraceCheckUtils]: 128: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,727 INFO L273 TraceCheckUtils]: 129: Hoare triple {84097#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {84097#false} is VALID [2018-11-23 12:16:14,727 INFO L273 TraceCheckUtils]: 130: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,727 INFO L273 TraceCheckUtils]: 131: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,727 INFO L273 TraceCheckUtils]: 132: Hoare triple {84097#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {84097#false} is VALID [2018-11-23 12:16:14,727 INFO L273 TraceCheckUtils]: 133: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,727 INFO L273 TraceCheckUtils]: 134: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,727 INFO L273 TraceCheckUtils]: 135: Hoare triple {84097#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {84097#false} is VALID [2018-11-23 12:16:14,727 INFO L273 TraceCheckUtils]: 136: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,727 INFO L273 TraceCheckUtils]: 137: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,727 INFO L273 TraceCheckUtils]: 138: Hoare triple {84097#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {84097#false} is VALID [2018-11-23 12:16:14,728 INFO L273 TraceCheckUtils]: 139: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,728 INFO L273 TraceCheckUtils]: 140: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,728 INFO L273 TraceCheckUtils]: 141: Hoare triple {84097#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {84097#false} is VALID [2018-11-23 12:16:14,728 INFO L273 TraceCheckUtils]: 142: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,728 INFO L273 TraceCheckUtils]: 143: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,728 INFO L273 TraceCheckUtils]: 144: Hoare triple {84097#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {84097#false} is VALID [2018-11-23 12:16:14,728 INFO L273 TraceCheckUtils]: 145: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,728 INFO L273 TraceCheckUtils]: 146: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,728 INFO L273 TraceCheckUtils]: 147: Hoare triple {84097#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {84097#false} is VALID [2018-11-23 12:16:14,728 INFO L273 TraceCheckUtils]: 148: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,729 INFO L273 TraceCheckUtils]: 149: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,729 INFO L273 TraceCheckUtils]: 150: Hoare triple {84097#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {84097#false} is VALID [2018-11-23 12:16:14,729 INFO L273 TraceCheckUtils]: 151: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,729 INFO L273 TraceCheckUtils]: 152: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,729 INFO L273 TraceCheckUtils]: 153: Hoare triple {84097#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {84097#false} is VALID [2018-11-23 12:16:14,729 INFO L273 TraceCheckUtils]: 154: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,729 INFO L273 TraceCheckUtils]: 155: Hoare triple {84097#false} assume !(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,729 INFO L273 TraceCheckUtils]: 156: Hoare triple {84097#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {84097#false} is VALID [2018-11-23 12:16:14,729 INFO L273 TraceCheckUtils]: 157: Hoare triple {84097#false} assume true; {84097#false} is VALID [2018-11-23 12:16:14,729 INFO L268 TraceCheckUtils]: 158: Hoare quadruple {84097#false} {84097#false} #84#return; {84097#false} is VALID [2018-11-23 12:16:14,730 INFO L273 TraceCheckUtils]: 159: Hoare triple {84097#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {84097#false} is VALID [2018-11-23 12:16:14,730 INFO L256 TraceCheckUtils]: 160: Hoare triple {84097#false} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {84097#false} is VALID [2018-11-23 12:16:14,730 INFO L273 TraceCheckUtils]: 161: Hoare triple {84097#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {84097#false} is VALID [2018-11-23 12:16:14,730 INFO L273 TraceCheckUtils]: 162: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,730 INFO L273 TraceCheckUtils]: 163: Hoare triple {84097#false} assume !(~i~1 > 20); {84097#false} is VALID [2018-11-23 12:16:14,730 INFO L273 TraceCheckUtils]: 164: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,730 INFO L273 TraceCheckUtils]: 165: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,730 INFO L273 TraceCheckUtils]: 166: Hoare triple {84097#false} assume !(~i~1 > 20); {84097#false} is VALID [2018-11-23 12:16:14,730 INFO L273 TraceCheckUtils]: 167: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,730 INFO L273 TraceCheckUtils]: 168: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,731 INFO L273 TraceCheckUtils]: 169: Hoare triple {84097#false} assume !(~i~1 > 20); {84097#false} is VALID [2018-11-23 12:16:14,731 INFO L273 TraceCheckUtils]: 170: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,731 INFO L273 TraceCheckUtils]: 171: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,731 INFO L273 TraceCheckUtils]: 172: Hoare triple {84097#false} assume !(~i~1 > 20); {84097#false} is VALID [2018-11-23 12:16:14,731 INFO L273 TraceCheckUtils]: 173: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,731 INFO L273 TraceCheckUtils]: 174: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,731 INFO L273 TraceCheckUtils]: 175: Hoare triple {84097#false} assume !(~i~1 > 20); {84097#false} is VALID [2018-11-23 12:16:14,731 INFO L273 TraceCheckUtils]: 176: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,731 INFO L273 TraceCheckUtils]: 177: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,731 INFO L273 TraceCheckUtils]: 178: Hoare triple {84097#false} assume !(~i~1 > 20); {84097#false} is VALID [2018-11-23 12:16:14,732 INFO L273 TraceCheckUtils]: 179: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,732 INFO L273 TraceCheckUtils]: 180: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,732 INFO L273 TraceCheckUtils]: 181: Hoare triple {84097#false} assume !(~i~1 > 20); {84097#false} is VALID [2018-11-23 12:16:14,732 INFO L273 TraceCheckUtils]: 182: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,732 INFO L273 TraceCheckUtils]: 183: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,732 INFO L273 TraceCheckUtils]: 184: Hoare triple {84097#false} assume !(~i~1 > 20); {84097#false} is VALID [2018-11-23 12:16:14,732 INFO L273 TraceCheckUtils]: 185: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,732 INFO L273 TraceCheckUtils]: 186: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,732 INFO L273 TraceCheckUtils]: 187: Hoare triple {84097#false} assume !(~i~1 > 20); {84097#false} is VALID [2018-11-23 12:16:14,732 INFO L273 TraceCheckUtils]: 188: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,733 INFO L273 TraceCheckUtils]: 189: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,733 INFO L273 TraceCheckUtils]: 190: Hoare triple {84097#false} assume !(~i~1 > 20); {84097#false} is VALID [2018-11-23 12:16:14,733 INFO L273 TraceCheckUtils]: 191: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,733 INFO L273 TraceCheckUtils]: 192: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,733 INFO L273 TraceCheckUtils]: 193: Hoare triple {84097#false} assume !(~i~1 > 20); {84097#false} is VALID [2018-11-23 12:16:14,733 INFO L273 TraceCheckUtils]: 194: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,733 INFO L273 TraceCheckUtils]: 195: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,733 INFO L273 TraceCheckUtils]: 196: Hoare triple {84097#false} assume !(~i~1 > 20); {84097#false} is VALID [2018-11-23 12:16:14,733 INFO L273 TraceCheckUtils]: 197: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,733 INFO L273 TraceCheckUtils]: 198: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,734 INFO L273 TraceCheckUtils]: 199: Hoare triple {84097#false} assume !(~i~1 > 20); {84097#false} is VALID [2018-11-23 12:16:14,734 INFO L273 TraceCheckUtils]: 200: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,734 INFO L273 TraceCheckUtils]: 201: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,734 INFO L273 TraceCheckUtils]: 202: Hoare triple {84097#false} assume !(~i~1 > 20); {84097#false} is VALID [2018-11-23 12:16:14,734 INFO L273 TraceCheckUtils]: 203: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,734 INFO L273 TraceCheckUtils]: 204: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,734 INFO L273 TraceCheckUtils]: 205: Hoare triple {84097#false} assume !(~i~1 > 20); {84097#false} is VALID [2018-11-23 12:16:14,734 INFO L273 TraceCheckUtils]: 206: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,734 INFO L273 TraceCheckUtils]: 207: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,734 INFO L273 TraceCheckUtils]: 208: Hoare triple {84097#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {84097#false} is VALID [2018-11-23 12:16:14,735 INFO L273 TraceCheckUtils]: 209: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,735 INFO L273 TraceCheckUtils]: 210: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,735 INFO L273 TraceCheckUtils]: 211: Hoare triple {84097#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {84097#false} is VALID [2018-11-23 12:16:14,735 INFO L273 TraceCheckUtils]: 212: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,735 INFO L273 TraceCheckUtils]: 213: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,735 INFO L273 TraceCheckUtils]: 214: Hoare triple {84097#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {84097#false} is VALID [2018-11-23 12:16:14,735 INFO L273 TraceCheckUtils]: 215: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,735 INFO L273 TraceCheckUtils]: 216: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,735 INFO L273 TraceCheckUtils]: 217: Hoare triple {84097#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {84097#false} is VALID [2018-11-23 12:16:14,735 INFO L273 TraceCheckUtils]: 218: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,736 INFO L273 TraceCheckUtils]: 219: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,736 INFO L273 TraceCheckUtils]: 220: Hoare triple {84097#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {84097#false} is VALID [2018-11-23 12:16:14,736 INFO L273 TraceCheckUtils]: 221: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,736 INFO L273 TraceCheckUtils]: 222: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,736 INFO L273 TraceCheckUtils]: 223: Hoare triple {84097#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {84097#false} is VALID [2018-11-23 12:16:14,736 INFO L273 TraceCheckUtils]: 224: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,736 INFO L273 TraceCheckUtils]: 225: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,736 INFO L273 TraceCheckUtils]: 226: Hoare triple {84097#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {84097#false} is VALID [2018-11-23 12:16:14,736 INFO L273 TraceCheckUtils]: 227: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,736 INFO L273 TraceCheckUtils]: 228: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,737 INFO L273 TraceCheckUtils]: 229: Hoare triple {84097#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {84097#false} is VALID [2018-11-23 12:16:14,737 INFO L273 TraceCheckUtils]: 230: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,737 INFO L273 TraceCheckUtils]: 231: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,737 INFO L273 TraceCheckUtils]: 232: Hoare triple {84097#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {84097#false} is VALID [2018-11-23 12:16:14,737 INFO L273 TraceCheckUtils]: 233: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,737 INFO L273 TraceCheckUtils]: 234: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,737 INFO L273 TraceCheckUtils]: 235: Hoare triple {84097#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {84097#false} is VALID [2018-11-23 12:16:14,737 INFO L273 TraceCheckUtils]: 236: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,737 INFO L273 TraceCheckUtils]: 237: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,737 INFO L273 TraceCheckUtils]: 238: Hoare triple {84097#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {84097#false} is VALID [2018-11-23 12:16:14,738 INFO L273 TraceCheckUtils]: 239: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,738 INFO L273 TraceCheckUtils]: 240: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,738 INFO L273 TraceCheckUtils]: 241: Hoare triple {84097#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {84097#false} is VALID [2018-11-23 12:16:14,738 INFO L273 TraceCheckUtils]: 242: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,738 INFO L273 TraceCheckUtils]: 243: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,738 INFO L273 TraceCheckUtils]: 244: Hoare triple {84097#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {84097#false} is VALID [2018-11-23 12:16:14,738 INFO L273 TraceCheckUtils]: 245: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,738 INFO L273 TraceCheckUtils]: 246: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,738 INFO L273 TraceCheckUtils]: 247: Hoare triple {84097#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {84097#false} is VALID [2018-11-23 12:16:14,738 INFO L273 TraceCheckUtils]: 248: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,739 INFO L273 TraceCheckUtils]: 249: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,739 INFO L273 TraceCheckUtils]: 250: Hoare triple {84097#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {84097#false} is VALID [2018-11-23 12:16:14,739 INFO L273 TraceCheckUtils]: 251: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,739 INFO L273 TraceCheckUtils]: 252: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,739 INFO L273 TraceCheckUtils]: 253: Hoare triple {84097#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {84097#false} is VALID [2018-11-23 12:16:14,739 INFO L273 TraceCheckUtils]: 254: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,739 INFO L273 TraceCheckUtils]: 255: Hoare triple {84097#false} assume !(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,739 INFO L273 TraceCheckUtils]: 256: Hoare triple {84097#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {84097#false} is VALID [2018-11-23 12:16:14,739 INFO L273 TraceCheckUtils]: 257: Hoare triple {84097#false} assume true; {84097#false} is VALID [2018-11-23 12:16:14,739 INFO L268 TraceCheckUtils]: 258: Hoare quadruple {84097#false} {84097#false} #86#return; {84097#false} is VALID [2018-11-23 12:16:14,740 INFO L273 TraceCheckUtils]: 259: Hoare triple {84097#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {84097#false} is VALID [2018-11-23 12:16:14,740 INFO L273 TraceCheckUtils]: 260: Hoare triple {84097#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {84097#false} is VALID [2018-11-23 12:16:14,740 INFO L273 TraceCheckUtils]: 261: Hoare triple {84097#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {84097#false} is VALID [2018-11-23 12:16:14,740 INFO L273 TraceCheckUtils]: 262: Hoare triple {84097#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {84097#false} is VALID [2018-11-23 12:16:14,740 INFO L273 TraceCheckUtils]: 263: Hoare triple {84097#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {84097#false} is VALID [2018-11-23 12:16:14,740 INFO L273 TraceCheckUtils]: 264: Hoare triple {84097#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {84097#false} is VALID [2018-11-23 12:16:14,740 INFO L273 TraceCheckUtils]: 265: Hoare triple {84097#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {84097#false} is VALID [2018-11-23 12:16:14,740 INFO L273 TraceCheckUtils]: 266: Hoare triple {84097#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {84097#false} is VALID [2018-11-23 12:16:14,740 INFO L273 TraceCheckUtils]: 267: Hoare triple {84097#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {84097#false} is VALID [2018-11-23 12:16:14,741 INFO L273 TraceCheckUtils]: 268: Hoare triple {84097#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {84097#false} is VALID [2018-11-23 12:16:14,741 INFO L273 TraceCheckUtils]: 269: Hoare triple {84097#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {84097#false} is VALID [2018-11-23 12:16:14,741 INFO L273 TraceCheckUtils]: 270: Hoare triple {84097#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {84097#false} is VALID [2018-11-23 12:16:14,741 INFO L273 TraceCheckUtils]: 271: Hoare triple {84097#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {84097#false} is VALID [2018-11-23 12:16:14,741 INFO L273 TraceCheckUtils]: 272: Hoare triple {84097#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {84097#false} is VALID [2018-11-23 12:16:14,741 INFO L273 TraceCheckUtils]: 273: Hoare triple {84097#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {84097#false} is VALID [2018-11-23 12:16:14,741 INFO L273 TraceCheckUtils]: 274: Hoare triple {84097#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {84097#false} is VALID [2018-11-23 12:16:14,741 INFO L273 TraceCheckUtils]: 275: Hoare triple {84097#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {84097#false} is VALID [2018-11-23 12:16:14,741 INFO L273 TraceCheckUtils]: 276: Hoare triple {84097#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {84097#false} is VALID [2018-11-23 12:16:14,741 INFO L273 TraceCheckUtils]: 277: Hoare triple {84097#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {84097#false} is VALID [2018-11-23 12:16:14,742 INFO L273 TraceCheckUtils]: 278: Hoare triple {84097#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {84097#false} is VALID [2018-11-23 12:16:14,742 INFO L273 TraceCheckUtils]: 279: Hoare triple {84097#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {84097#false} is VALID [2018-11-23 12:16:14,742 INFO L273 TraceCheckUtils]: 280: Hoare triple {84097#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {84097#false} is VALID [2018-11-23 12:16:14,742 INFO L273 TraceCheckUtils]: 281: Hoare triple {84097#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {84097#false} is VALID [2018-11-23 12:16:14,742 INFO L273 TraceCheckUtils]: 282: Hoare triple {84097#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {84097#false} is VALID [2018-11-23 12:16:14,742 INFO L273 TraceCheckUtils]: 283: Hoare triple {84097#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {84097#false} is VALID [2018-11-23 12:16:14,742 INFO L273 TraceCheckUtils]: 284: Hoare triple {84097#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {84097#false} is VALID [2018-11-23 12:16:14,742 INFO L273 TraceCheckUtils]: 285: Hoare triple {84097#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {84097#false} is VALID [2018-11-23 12:16:14,742 INFO L273 TraceCheckUtils]: 286: Hoare triple {84097#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {84097#false} is VALID [2018-11-23 12:16:14,742 INFO L273 TraceCheckUtils]: 287: Hoare triple {84097#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {84097#false} is VALID [2018-11-23 12:16:14,743 INFO L273 TraceCheckUtils]: 288: Hoare triple {84097#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {84097#false} is VALID [2018-11-23 12:16:14,743 INFO L273 TraceCheckUtils]: 289: Hoare triple {84097#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {84097#false} is VALID [2018-11-23 12:16:14,743 INFO L273 TraceCheckUtils]: 290: Hoare triple {84097#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {84097#false} is VALID [2018-11-23 12:16:14,743 INFO L273 TraceCheckUtils]: 291: Hoare triple {84097#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {84097#false} is VALID [2018-11-23 12:16:14,743 INFO L273 TraceCheckUtils]: 292: Hoare triple {84097#false} assume !(~i~2 < 39); {84097#false} is VALID [2018-11-23 12:16:14,743 INFO L273 TraceCheckUtils]: 293: Hoare triple {84097#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {84097#false} is VALID [2018-11-23 12:16:14,743 INFO L256 TraceCheckUtils]: 294: Hoare triple {84097#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {84097#false} is VALID [2018-11-23 12:16:14,743 INFO L273 TraceCheckUtils]: 295: Hoare triple {84097#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {84097#false} is VALID [2018-11-23 12:16:14,743 INFO L273 TraceCheckUtils]: 296: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,743 INFO L273 TraceCheckUtils]: 297: Hoare triple {84097#false} assume !(~i~1 > 20); {84097#false} is VALID [2018-11-23 12:16:14,744 INFO L273 TraceCheckUtils]: 298: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,744 INFO L273 TraceCheckUtils]: 299: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,744 INFO L273 TraceCheckUtils]: 300: Hoare triple {84097#false} assume !(~i~1 > 20); {84097#false} is VALID [2018-11-23 12:16:14,744 INFO L273 TraceCheckUtils]: 301: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,744 INFO L273 TraceCheckUtils]: 302: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,744 INFO L273 TraceCheckUtils]: 303: Hoare triple {84097#false} assume !(~i~1 > 20); {84097#false} is VALID [2018-11-23 12:16:14,744 INFO L273 TraceCheckUtils]: 304: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,744 INFO L273 TraceCheckUtils]: 305: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,744 INFO L273 TraceCheckUtils]: 306: Hoare triple {84097#false} assume !(~i~1 > 20); {84097#false} is VALID [2018-11-23 12:16:14,744 INFO L273 TraceCheckUtils]: 307: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,745 INFO L273 TraceCheckUtils]: 308: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,745 INFO L273 TraceCheckUtils]: 309: Hoare triple {84097#false} assume !(~i~1 > 20); {84097#false} is VALID [2018-11-23 12:16:14,745 INFO L273 TraceCheckUtils]: 310: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,745 INFO L273 TraceCheckUtils]: 311: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,745 INFO L273 TraceCheckUtils]: 312: Hoare triple {84097#false} assume !(~i~1 > 20); {84097#false} is VALID [2018-11-23 12:16:14,745 INFO L273 TraceCheckUtils]: 313: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,745 INFO L273 TraceCheckUtils]: 314: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,745 INFO L273 TraceCheckUtils]: 315: Hoare triple {84097#false} assume !(~i~1 > 20); {84097#false} is VALID [2018-11-23 12:16:14,745 INFO L273 TraceCheckUtils]: 316: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,745 INFO L273 TraceCheckUtils]: 317: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,746 INFO L273 TraceCheckUtils]: 318: Hoare triple {84097#false} assume !(~i~1 > 20); {84097#false} is VALID [2018-11-23 12:16:14,746 INFO L273 TraceCheckUtils]: 319: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,746 INFO L273 TraceCheckUtils]: 320: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,746 INFO L273 TraceCheckUtils]: 321: Hoare triple {84097#false} assume !(~i~1 > 20); {84097#false} is VALID [2018-11-23 12:16:14,746 INFO L273 TraceCheckUtils]: 322: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,746 INFO L273 TraceCheckUtils]: 323: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,746 INFO L273 TraceCheckUtils]: 324: Hoare triple {84097#false} assume !(~i~1 > 20); {84097#false} is VALID [2018-11-23 12:16:14,746 INFO L273 TraceCheckUtils]: 325: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,746 INFO L273 TraceCheckUtils]: 326: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,746 INFO L273 TraceCheckUtils]: 327: Hoare triple {84097#false} assume !(~i~1 > 20); {84097#false} is VALID [2018-11-23 12:16:14,747 INFO L273 TraceCheckUtils]: 328: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,747 INFO L273 TraceCheckUtils]: 329: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,747 INFO L273 TraceCheckUtils]: 330: Hoare triple {84097#false} assume !(~i~1 > 20); {84097#false} is VALID [2018-11-23 12:16:14,747 INFO L273 TraceCheckUtils]: 331: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,747 INFO L273 TraceCheckUtils]: 332: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,747 INFO L273 TraceCheckUtils]: 333: Hoare triple {84097#false} assume !(~i~1 > 20); {84097#false} is VALID [2018-11-23 12:16:14,747 INFO L273 TraceCheckUtils]: 334: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,747 INFO L273 TraceCheckUtils]: 335: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,747 INFO L273 TraceCheckUtils]: 336: Hoare triple {84097#false} assume !(~i~1 > 20); {84097#false} is VALID [2018-11-23 12:16:14,747 INFO L273 TraceCheckUtils]: 337: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,748 INFO L273 TraceCheckUtils]: 338: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,748 INFO L273 TraceCheckUtils]: 339: Hoare triple {84097#false} assume !(~i~1 > 20); {84097#false} is VALID [2018-11-23 12:16:14,748 INFO L273 TraceCheckUtils]: 340: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,748 INFO L273 TraceCheckUtils]: 341: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,748 INFO L273 TraceCheckUtils]: 342: Hoare triple {84097#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {84097#false} is VALID [2018-11-23 12:16:14,748 INFO L273 TraceCheckUtils]: 343: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,748 INFO L273 TraceCheckUtils]: 344: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,748 INFO L273 TraceCheckUtils]: 345: Hoare triple {84097#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {84097#false} is VALID [2018-11-23 12:16:14,748 INFO L273 TraceCheckUtils]: 346: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,748 INFO L273 TraceCheckUtils]: 347: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,749 INFO L273 TraceCheckUtils]: 348: Hoare triple {84097#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {84097#false} is VALID [2018-11-23 12:16:14,749 INFO L273 TraceCheckUtils]: 349: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,749 INFO L273 TraceCheckUtils]: 350: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,749 INFO L273 TraceCheckUtils]: 351: Hoare triple {84097#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {84097#false} is VALID [2018-11-23 12:16:14,749 INFO L273 TraceCheckUtils]: 352: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,749 INFO L273 TraceCheckUtils]: 353: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,749 INFO L273 TraceCheckUtils]: 354: Hoare triple {84097#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {84097#false} is VALID [2018-11-23 12:16:14,749 INFO L273 TraceCheckUtils]: 355: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,749 INFO L273 TraceCheckUtils]: 356: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,749 INFO L273 TraceCheckUtils]: 357: Hoare triple {84097#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {84097#false} is VALID [2018-11-23 12:16:14,750 INFO L273 TraceCheckUtils]: 358: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,750 INFO L273 TraceCheckUtils]: 359: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,750 INFO L273 TraceCheckUtils]: 360: Hoare triple {84097#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {84097#false} is VALID [2018-11-23 12:16:14,750 INFO L273 TraceCheckUtils]: 361: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,750 INFO L273 TraceCheckUtils]: 362: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,750 INFO L273 TraceCheckUtils]: 363: Hoare triple {84097#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {84097#false} is VALID [2018-11-23 12:16:14,750 INFO L273 TraceCheckUtils]: 364: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,750 INFO L273 TraceCheckUtils]: 365: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,750 INFO L273 TraceCheckUtils]: 366: Hoare triple {84097#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {84097#false} is VALID [2018-11-23 12:16:14,750 INFO L273 TraceCheckUtils]: 367: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,751 INFO L273 TraceCheckUtils]: 368: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,751 INFO L273 TraceCheckUtils]: 369: Hoare triple {84097#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {84097#false} is VALID [2018-11-23 12:16:14,751 INFO L273 TraceCheckUtils]: 370: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,751 INFO L273 TraceCheckUtils]: 371: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,751 INFO L273 TraceCheckUtils]: 372: Hoare triple {84097#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {84097#false} is VALID [2018-11-23 12:16:14,751 INFO L273 TraceCheckUtils]: 373: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,751 INFO L273 TraceCheckUtils]: 374: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,751 INFO L273 TraceCheckUtils]: 375: Hoare triple {84097#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {84097#false} is VALID [2018-11-23 12:16:14,751 INFO L273 TraceCheckUtils]: 376: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,751 INFO L273 TraceCheckUtils]: 377: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,752 INFO L273 TraceCheckUtils]: 378: Hoare triple {84097#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {84097#false} is VALID [2018-11-23 12:16:14,752 INFO L273 TraceCheckUtils]: 379: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,752 INFO L273 TraceCheckUtils]: 380: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,752 INFO L273 TraceCheckUtils]: 381: Hoare triple {84097#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {84097#false} is VALID [2018-11-23 12:16:14,752 INFO L273 TraceCheckUtils]: 382: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,752 INFO L273 TraceCheckUtils]: 383: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,752 INFO L273 TraceCheckUtils]: 384: Hoare triple {84097#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {84097#false} is VALID [2018-11-23 12:16:14,752 INFO L273 TraceCheckUtils]: 385: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,752 INFO L273 TraceCheckUtils]: 386: Hoare triple {84097#false} assume !!(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,752 INFO L273 TraceCheckUtils]: 387: Hoare triple {84097#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {84097#false} is VALID [2018-11-23 12:16:14,753 INFO L273 TraceCheckUtils]: 388: Hoare triple {84097#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {84097#false} is VALID [2018-11-23 12:16:14,753 INFO L273 TraceCheckUtils]: 389: Hoare triple {84097#false} assume !(~i~1 < 40); {84097#false} is VALID [2018-11-23 12:16:14,753 INFO L273 TraceCheckUtils]: 390: Hoare triple {84097#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {84097#false} is VALID [2018-11-23 12:16:14,753 INFO L273 TraceCheckUtils]: 391: Hoare triple {84097#false} assume true; {84097#false} is VALID [2018-11-23 12:16:14,753 INFO L268 TraceCheckUtils]: 392: Hoare quadruple {84097#false} {84097#false} #88#return; {84097#false} is VALID [2018-11-23 12:16:14,753 INFO L273 TraceCheckUtils]: 393: Hoare triple {84097#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {84097#false} is VALID [2018-11-23 12:16:14,753 INFO L273 TraceCheckUtils]: 394: Hoare triple {84097#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {84097#false} is VALID [2018-11-23 12:16:14,753 INFO L273 TraceCheckUtils]: 395: Hoare triple {84097#false} assume !false; {84097#false} is VALID [2018-11-23 12:16:14,809 INFO L134 CoverageAnalysis]: Checked inductivity of 13960 backedges. 0 proven. 576 refuted. 0 times theorem prover too weak. 13384 trivial. 0 not checked. [2018-11-23 12:16:14,827 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:16:14,828 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [27] total 27 [2018-11-23 12:16:14,828 INFO L78 Accepts]: Start accepts. Automaton has 27 states. Word has length 396 [2018-11-23 12:16:14,828 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:16:14,828 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 27 states. [2018-11-23 12:16:14,920 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 83 edges. 83 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:16:14,920 INFO L459 AbstractCegarLoop]: Interpolant automaton has 27 states [2018-11-23 12:16:14,921 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 27 interpolants. [2018-11-23 12:16:14,921 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=351, Invalid=351, Unknown=0, NotChecked=0, Total=702 [2018-11-23 12:16:14,921 INFO L87 Difference]: Start difference. First operand 201 states and 222 transitions. Second operand 27 states. [2018-11-23 12:16:15,250 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:15,250 INFO L93 Difference]: Finished difference Result 348 states and 390 transitions. [2018-11-23 12:16:15,250 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 27 states. [2018-11-23 12:16:15,250 INFO L78 Accepts]: Start accepts. Automaton has 27 states. Word has length 396 [2018-11-23 12:16:15,250 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:16:15,250 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 27 states. [2018-11-23 12:16:15,251 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 116 transitions. [2018-11-23 12:16:15,251 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 27 states. [2018-11-23 12:16:15,252 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 116 transitions. [2018-11-23 12:16:15,252 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 27 states and 116 transitions. [2018-11-23 12:16:15,358 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-23 12:16:15,362 INFO L225 Difference]: With dead ends: 348 [2018-11-23 12:16:15,362 INFO L226 Difference]: Without dead ends: 204 [2018-11-23 12:16:15,363 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 395 GetRequests, 370 SyntacticMatches, 0 SemanticMatches, 25 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=351, Invalid=351, Unknown=0, NotChecked=0, Total=702 [2018-11-23 12:16:15,363 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 204 states. [2018-11-23 12:16:15,504 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 204 to 203. [2018-11-23 12:16:15,504 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:16:15,505 INFO L82 GeneralOperation]: Start isEquivalent. First operand 204 states. Second operand 203 states. [2018-11-23 12:16:15,505 INFO L74 IsIncluded]: Start isIncluded. First operand 204 states. Second operand 203 states. [2018-11-23 12:16:15,505 INFO L87 Difference]: Start difference. First operand 204 states. Second operand 203 states. [2018-11-23 12:16:15,508 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:15,509 INFO L93 Difference]: Finished difference Result 204 states and 225 transitions. [2018-11-23 12:16:15,509 INFO L276 IsEmpty]: Start isEmpty. Operand 204 states and 225 transitions. [2018-11-23 12:16:15,509 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:15,509 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:15,509 INFO L74 IsIncluded]: Start isIncluded. First operand 203 states. Second operand 204 states. [2018-11-23 12:16:15,509 INFO L87 Difference]: Start difference. First operand 203 states. Second operand 204 states. [2018-11-23 12:16:15,512 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:15,513 INFO L93 Difference]: Finished difference Result 204 states and 225 transitions. [2018-11-23 12:16:15,513 INFO L276 IsEmpty]: Start isEmpty. Operand 204 states and 225 transitions. [2018-11-23 12:16:15,513 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:15,513 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:15,513 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:16:15,513 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:16:15,514 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 203 states. [2018-11-23 12:16:15,517 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 203 states to 203 states and 224 transitions. [2018-11-23 12:16:15,518 INFO L78 Accepts]: Start accepts. Automaton has 203 states and 224 transitions. Word has length 396 [2018-11-23 12:16:15,518 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:16:15,518 INFO L480 AbstractCegarLoop]: Abstraction has 203 states and 224 transitions. [2018-11-23 12:16:15,518 INFO L481 AbstractCegarLoop]: Interpolant automaton has 27 states. [2018-11-23 12:16:15,518 INFO L276 IsEmpty]: Start isEmpty. Operand 203 states and 224 transitions. [2018-11-23 12:16:15,521 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 399 [2018-11-23 12:16:15,521 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:16:15,521 INFO L402 BasicCegarLoop]: trace histogram [93, 93, 48, 45, 25, 25, 16, 16, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:16:15,521 INFO L423 AbstractCegarLoop]: === Iteration 67 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:16:15,521 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:16:15,521 INFO L82 PathProgramCache]: Analyzing trace with hash -44767082, now seen corresponding path program 62 times [2018-11-23 12:16:15,522 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:16:15,522 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:16:15,522 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:15,522 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:16:15,522 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:15,535 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:16:15,535 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:16:15,536 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 68 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 68 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:16:15,551 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-23 12:16:15,676 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-23 12:16:15,676 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:16:15,736 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:15,738 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:16:16,372 INFO L256 TraceCheckUtils]: 0: Hoare triple {86492#true} call ULTIMATE.init(); {86492#true} is VALID [2018-11-23 12:16:16,372 INFO L273 TraceCheckUtils]: 1: Hoare triple {86492#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {86492#true} is VALID [2018-11-23 12:16:16,372 INFO L273 TraceCheckUtils]: 2: Hoare triple {86492#true} assume true; {86492#true} is VALID [2018-11-23 12:16:16,372 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {86492#true} {86492#true} #78#return; {86492#true} is VALID [2018-11-23 12:16:16,373 INFO L256 TraceCheckUtils]: 4: Hoare triple {86492#true} call #t~ret12 := main(); {86492#true} is VALID [2018-11-23 12:16:16,373 INFO L273 TraceCheckUtils]: 5: Hoare triple {86492#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {86492#true} is VALID [2018-11-23 12:16:16,373 INFO L256 TraceCheckUtils]: 6: Hoare triple {86492#true} call init_nondet(~#x~0.base, ~#x~0.offset); {86492#true} is VALID [2018-11-23 12:16:16,374 INFO L273 TraceCheckUtils]: 7: Hoare triple {86492#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {86518#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:16:16,374 INFO L273 TraceCheckUtils]: 8: Hoare triple {86518#(<= init_nondet_~i~0 0)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {86518#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:16:16,375 INFO L273 TraceCheckUtils]: 9: Hoare triple {86518#(<= init_nondet_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {86525#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:16:16,375 INFO L273 TraceCheckUtils]: 10: Hoare triple {86525#(<= init_nondet_~i~0 1)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {86525#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:16:16,376 INFO L273 TraceCheckUtils]: 11: Hoare triple {86525#(<= init_nondet_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {86532#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:16:16,376 INFO L273 TraceCheckUtils]: 12: Hoare triple {86532#(<= init_nondet_~i~0 2)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {86532#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:16:16,376 INFO L273 TraceCheckUtils]: 13: Hoare triple {86532#(<= init_nondet_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {86539#(<= init_nondet_~i~0 3)} is VALID [2018-11-23 12:16:16,377 INFO L273 TraceCheckUtils]: 14: Hoare triple {86539#(<= init_nondet_~i~0 3)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {86539#(<= init_nondet_~i~0 3)} is VALID [2018-11-23 12:16:16,377 INFO L273 TraceCheckUtils]: 15: Hoare triple {86539#(<= init_nondet_~i~0 3)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {86546#(<= init_nondet_~i~0 4)} is VALID [2018-11-23 12:16:16,378 INFO L273 TraceCheckUtils]: 16: Hoare triple {86546#(<= init_nondet_~i~0 4)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {86546#(<= init_nondet_~i~0 4)} is VALID [2018-11-23 12:16:16,379 INFO L273 TraceCheckUtils]: 17: Hoare triple {86546#(<= init_nondet_~i~0 4)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {86553#(<= init_nondet_~i~0 5)} is VALID [2018-11-23 12:16:16,379 INFO L273 TraceCheckUtils]: 18: Hoare triple {86553#(<= init_nondet_~i~0 5)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {86553#(<= init_nondet_~i~0 5)} is VALID [2018-11-23 12:16:16,380 INFO L273 TraceCheckUtils]: 19: Hoare triple {86553#(<= init_nondet_~i~0 5)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {86560#(<= init_nondet_~i~0 6)} is VALID [2018-11-23 12:16:16,380 INFO L273 TraceCheckUtils]: 20: Hoare triple {86560#(<= init_nondet_~i~0 6)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {86560#(<= init_nondet_~i~0 6)} is VALID [2018-11-23 12:16:16,381 INFO L273 TraceCheckUtils]: 21: Hoare triple {86560#(<= init_nondet_~i~0 6)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {86567#(<= init_nondet_~i~0 7)} is VALID [2018-11-23 12:16:16,381 INFO L273 TraceCheckUtils]: 22: Hoare triple {86567#(<= init_nondet_~i~0 7)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {86567#(<= init_nondet_~i~0 7)} is VALID [2018-11-23 12:16:16,382 INFO L273 TraceCheckUtils]: 23: Hoare triple {86567#(<= init_nondet_~i~0 7)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {86574#(<= init_nondet_~i~0 8)} is VALID [2018-11-23 12:16:16,383 INFO L273 TraceCheckUtils]: 24: Hoare triple {86574#(<= init_nondet_~i~0 8)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {86574#(<= init_nondet_~i~0 8)} is VALID [2018-11-23 12:16:16,383 INFO L273 TraceCheckUtils]: 25: Hoare triple {86574#(<= init_nondet_~i~0 8)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {86581#(<= init_nondet_~i~0 9)} is VALID [2018-11-23 12:16:16,384 INFO L273 TraceCheckUtils]: 26: Hoare triple {86581#(<= init_nondet_~i~0 9)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {86581#(<= init_nondet_~i~0 9)} is VALID [2018-11-23 12:16:16,385 INFO L273 TraceCheckUtils]: 27: Hoare triple {86581#(<= init_nondet_~i~0 9)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {86588#(<= init_nondet_~i~0 10)} is VALID [2018-11-23 12:16:16,385 INFO L273 TraceCheckUtils]: 28: Hoare triple {86588#(<= init_nondet_~i~0 10)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {86588#(<= init_nondet_~i~0 10)} is VALID [2018-11-23 12:16:16,386 INFO L273 TraceCheckUtils]: 29: Hoare triple {86588#(<= init_nondet_~i~0 10)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {86595#(<= init_nondet_~i~0 11)} is VALID [2018-11-23 12:16:16,386 INFO L273 TraceCheckUtils]: 30: Hoare triple {86595#(<= init_nondet_~i~0 11)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {86595#(<= init_nondet_~i~0 11)} is VALID [2018-11-23 12:16:16,387 INFO L273 TraceCheckUtils]: 31: Hoare triple {86595#(<= init_nondet_~i~0 11)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {86602#(<= init_nondet_~i~0 12)} is VALID [2018-11-23 12:16:16,387 INFO L273 TraceCheckUtils]: 32: Hoare triple {86602#(<= init_nondet_~i~0 12)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {86602#(<= init_nondet_~i~0 12)} is VALID [2018-11-23 12:16:16,388 INFO L273 TraceCheckUtils]: 33: Hoare triple {86602#(<= init_nondet_~i~0 12)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {86609#(<= init_nondet_~i~0 13)} is VALID [2018-11-23 12:16:16,389 INFO L273 TraceCheckUtils]: 34: Hoare triple {86609#(<= init_nondet_~i~0 13)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {86609#(<= init_nondet_~i~0 13)} is VALID [2018-11-23 12:16:16,389 INFO L273 TraceCheckUtils]: 35: Hoare triple {86609#(<= init_nondet_~i~0 13)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {86616#(<= init_nondet_~i~0 14)} is VALID [2018-11-23 12:16:16,390 INFO L273 TraceCheckUtils]: 36: Hoare triple {86616#(<= init_nondet_~i~0 14)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {86616#(<= init_nondet_~i~0 14)} is VALID [2018-11-23 12:16:16,390 INFO L273 TraceCheckUtils]: 37: Hoare triple {86616#(<= init_nondet_~i~0 14)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {86623#(<= init_nondet_~i~0 15)} is VALID [2018-11-23 12:16:16,391 INFO L273 TraceCheckUtils]: 38: Hoare triple {86623#(<= init_nondet_~i~0 15)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {86623#(<= init_nondet_~i~0 15)} is VALID [2018-11-23 12:16:16,392 INFO L273 TraceCheckUtils]: 39: Hoare triple {86623#(<= init_nondet_~i~0 15)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {86630#(<= init_nondet_~i~0 16)} is VALID [2018-11-23 12:16:16,392 INFO L273 TraceCheckUtils]: 40: Hoare triple {86630#(<= init_nondet_~i~0 16)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {86630#(<= init_nondet_~i~0 16)} is VALID [2018-11-23 12:16:16,393 INFO L273 TraceCheckUtils]: 41: Hoare triple {86630#(<= init_nondet_~i~0 16)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {86637#(<= init_nondet_~i~0 17)} is VALID [2018-11-23 12:16:16,393 INFO L273 TraceCheckUtils]: 42: Hoare triple {86637#(<= init_nondet_~i~0 17)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {86637#(<= init_nondet_~i~0 17)} is VALID [2018-11-23 12:16:16,394 INFO L273 TraceCheckUtils]: 43: Hoare triple {86637#(<= init_nondet_~i~0 17)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {86644#(<= init_nondet_~i~0 18)} is VALID [2018-11-23 12:16:16,394 INFO L273 TraceCheckUtils]: 44: Hoare triple {86644#(<= init_nondet_~i~0 18)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {86644#(<= init_nondet_~i~0 18)} is VALID [2018-11-23 12:16:16,395 INFO L273 TraceCheckUtils]: 45: Hoare triple {86644#(<= init_nondet_~i~0 18)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {86651#(<= init_nondet_~i~0 19)} is VALID [2018-11-23 12:16:16,396 INFO L273 TraceCheckUtils]: 46: Hoare triple {86651#(<= init_nondet_~i~0 19)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {86651#(<= init_nondet_~i~0 19)} is VALID [2018-11-23 12:16:16,396 INFO L273 TraceCheckUtils]: 47: Hoare triple {86651#(<= init_nondet_~i~0 19)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {86658#(<= init_nondet_~i~0 20)} is VALID [2018-11-23 12:16:16,397 INFO L273 TraceCheckUtils]: 48: Hoare triple {86658#(<= init_nondet_~i~0 20)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {86658#(<= init_nondet_~i~0 20)} is VALID [2018-11-23 12:16:16,398 INFO L273 TraceCheckUtils]: 49: Hoare triple {86658#(<= init_nondet_~i~0 20)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {86665#(<= init_nondet_~i~0 21)} is VALID [2018-11-23 12:16:16,398 INFO L273 TraceCheckUtils]: 50: Hoare triple {86665#(<= init_nondet_~i~0 21)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {86665#(<= init_nondet_~i~0 21)} is VALID [2018-11-23 12:16:16,399 INFO L273 TraceCheckUtils]: 51: Hoare triple {86665#(<= init_nondet_~i~0 21)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {86672#(<= init_nondet_~i~0 22)} is VALID [2018-11-23 12:16:16,399 INFO L273 TraceCheckUtils]: 52: Hoare triple {86672#(<= init_nondet_~i~0 22)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {86672#(<= init_nondet_~i~0 22)} is VALID [2018-11-23 12:16:16,400 INFO L273 TraceCheckUtils]: 53: Hoare triple {86672#(<= init_nondet_~i~0 22)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {86679#(<= init_nondet_~i~0 23)} is VALID [2018-11-23 12:16:16,400 INFO L273 TraceCheckUtils]: 54: Hoare triple {86679#(<= init_nondet_~i~0 23)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {86679#(<= init_nondet_~i~0 23)} is VALID [2018-11-23 12:16:16,401 INFO L273 TraceCheckUtils]: 55: Hoare triple {86679#(<= init_nondet_~i~0 23)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {86686#(<= init_nondet_~i~0 24)} is VALID [2018-11-23 12:16:16,402 INFO L273 TraceCheckUtils]: 56: Hoare triple {86686#(<= init_nondet_~i~0 24)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {86686#(<= init_nondet_~i~0 24)} is VALID [2018-11-23 12:16:16,402 INFO L273 TraceCheckUtils]: 57: Hoare triple {86686#(<= init_nondet_~i~0 24)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {86693#(<= init_nondet_~i~0 25)} is VALID [2018-11-23 12:16:16,403 INFO L273 TraceCheckUtils]: 58: Hoare triple {86693#(<= init_nondet_~i~0 25)} assume !(~i~0 < 40); {86493#false} is VALID [2018-11-23 12:16:16,403 INFO L273 TraceCheckUtils]: 59: Hoare triple {86493#false} assume true; {86493#false} is VALID [2018-11-23 12:16:16,403 INFO L268 TraceCheckUtils]: 60: Hoare quadruple {86493#false} {86492#true} #82#return; {86493#false} is VALID [2018-11-23 12:16:16,403 INFO L273 TraceCheckUtils]: 61: Hoare triple {86493#false} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {86493#false} is VALID [2018-11-23 12:16:16,404 INFO L256 TraceCheckUtils]: 62: Hoare triple {86493#false} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {86493#false} is VALID [2018-11-23 12:16:16,404 INFO L273 TraceCheckUtils]: 63: Hoare triple {86493#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {86493#false} is VALID [2018-11-23 12:16:16,404 INFO L273 TraceCheckUtils]: 64: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,404 INFO L273 TraceCheckUtils]: 65: Hoare triple {86493#false} assume !(~i~1 > 20); {86493#false} is VALID [2018-11-23 12:16:16,404 INFO L273 TraceCheckUtils]: 66: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,404 INFO L273 TraceCheckUtils]: 67: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,405 INFO L273 TraceCheckUtils]: 68: Hoare triple {86493#false} assume !(~i~1 > 20); {86493#false} is VALID [2018-11-23 12:16:16,405 INFO L273 TraceCheckUtils]: 69: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,405 INFO L273 TraceCheckUtils]: 70: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,405 INFO L273 TraceCheckUtils]: 71: Hoare triple {86493#false} assume !(~i~1 > 20); {86493#false} is VALID [2018-11-23 12:16:16,405 INFO L273 TraceCheckUtils]: 72: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,405 INFO L273 TraceCheckUtils]: 73: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,406 INFO L273 TraceCheckUtils]: 74: Hoare triple {86493#false} assume !(~i~1 > 20); {86493#false} is VALID [2018-11-23 12:16:16,406 INFO L273 TraceCheckUtils]: 75: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,406 INFO L273 TraceCheckUtils]: 76: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,406 INFO L273 TraceCheckUtils]: 77: Hoare triple {86493#false} assume !(~i~1 > 20); {86493#false} is VALID [2018-11-23 12:16:16,406 INFO L273 TraceCheckUtils]: 78: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,406 INFO L273 TraceCheckUtils]: 79: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,406 INFO L273 TraceCheckUtils]: 80: Hoare triple {86493#false} assume !(~i~1 > 20); {86493#false} is VALID [2018-11-23 12:16:16,406 INFO L273 TraceCheckUtils]: 81: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,407 INFO L273 TraceCheckUtils]: 82: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,407 INFO L273 TraceCheckUtils]: 83: Hoare triple {86493#false} assume !(~i~1 > 20); {86493#false} is VALID [2018-11-23 12:16:16,407 INFO L273 TraceCheckUtils]: 84: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,407 INFO L273 TraceCheckUtils]: 85: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,407 INFO L273 TraceCheckUtils]: 86: Hoare triple {86493#false} assume !(~i~1 > 20); {86493#false} is VALID [2018-11-23 12:16:16,407 INFO L273 TraceCheckUtils]: 87: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,407 INFO L273 TraceCheckUtils]: 88: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,407 INFO L273 TraceCheckUtils]: 89: Hoare triple {86493#false} assume !(~i~1 > 20); {86493#false} is VALID [2018-11-23 12:16:16,407 INFO L273 TraceCheckUtils]: 90: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,408 INFO L273 TraceCheckUtils]: 91: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,408 INFO L273 TraceCheckUtils]: 92: Hoare triple {86493#false} assume !(~i~1 > 20); {86493#false} is VALID [2018-11-23 12:16:16,408 INFO L273 TraceCheckUtils]: 93: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,408 INFO L273 TraceCheckUtils]: 94: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,408 INFO L273 TraceCheckUtils]: 95: Hoare triple {86493#false} assume !(~i~1 > 20); {86493#false} is VALID [2018-11-23 12:16:16,408 INFO L273 TraceCheckUtils]: 96: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,408 INFO L273 TraceCheckUtils]: 97: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,408 INFO L273 TraceCheckUtils]: 98: Hoare triple {86493#false} assume !(~i~1 > 20); {86493#false} is VALID [2018-11-23 12:16:16,408 INFO L273 TraceCheckUtils]: 99: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,408 INFO L273 TraceCheckUtils]: 100: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,409 INFO L273 TraceCheckUtils]: 101: Hoare triple {86493#false} assume !(~i~1 > 20); {86493#false} is VALID [2018-11-23 12:16:16,409 INFO L273 TraceCheckUtils]: 102: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,409 INFO L273 TraceCheckUtils]: 103: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,409 INFO L273 TraceCheckUtils]: 104: Hoare triple {86493#false} assume !(~i~1 > 20); {86493#false} is VALID [2018-11-23 12:16:16,409 INFO L273 TraceCheckUtils]: 105: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,409 INFO L273 TraceCheckUtils]: 106: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,409 INFO L273 TraceCheckUtils]: 107: Hoare triple {86493#false} assume !(~i~1 > 20); {86493#false} is VALID [2018-11-23 12:16:16,409 INFO L273 TraceCheckUtils]: 108: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,409 INFO L273 TraceCheckUtils]: 109: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,409 INFO L273 TraceCheckUtils]: 110: Hoare triple {86493#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {86493#false} is VALID [2018-11-23 12:16:16,410 INFO L273 TraceCheckUtils]: 111: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,410 INFO L273 TraceCheckUtils]: 112: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,410 INFO L273 TraceCheckUtils]: 113: Hoare triple {86493#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {86493#false} is VALID [2018-11-23 12:16:16,410 INFO L273 TraceCheckUtils]: 114: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,410 INFO L273 TraceCheckUtils]: 115: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,410 INFO L273 TraceCheckUtils]: 116: Hoare triple {86493#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {86493#false} is VALID [2018-11-23 12:16:16,410 INFO L273 TraceCheckUtils]: 117: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,410 INFO L273 TraceCheckUtils]: 118: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,410 INFO L273 TraceCheckUtils]: 119: Hoare triple {86493#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {86493#false} is VALID [2018-11-23 12:16:16,411 INFO L273 TraceCheckUtils]: 120: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,411 INFO L273 TraceCheckUtils]: 121: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,411 INFO L273 TraceCheckUtils]: 122: Hoare triple {86493#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {86493#false} is VALID [2018-11-23 12:16:16,411 INFO L273 TraceCheckUtils]: 123: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,411 INFO L273 TraceCheckUtils]: 124: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,411 INFO L273 TraceCheckUtils]: 125: Hoare triple {86493#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {86493#false} is VALID [2018-11-23 12:16:16,411 INFO L273 TraceCheckUtils]: 126: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,411 INFO L273 TraceCheckUtils]: 127: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,411 INFO L273 TraceCheckUtils]: 128: Hoare triple {86493#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {86493#false} is VALID [2018-11-23 12:16:16,412 INFO L273 TraceCheckUtils]: 129: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,412 INFO L273 TraceCheckUtils]: 130: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,412 INFO L273 TraceCheckUtils]: 131: Hoare triple {86493#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {86493#false} is VALID [2018-11-23 12:16:16,412 INFO L273 TraceCheckUtils]: 132: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,412 INFO L273 TraceCheckUtils]: 133: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,412 INFO L273 TraceCheckUtils]: 134: Hoare triple {86493#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {86493#false} is VALID [2018-11-23 12:16:16,412 INFO L273 TraceCheckUtils]: 135: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,412 INFO L273 TraceCheckUtils]: 136: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,412 INFO L273 TraceCheckUtils]: 137: Hoare triple {86493#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {86493#false} is VALID [2018-11-23 12:16:16,412 INFO L273 TraceCheckUtils]: 138: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,413 INFO L273 TraceCheckUtils]: 139: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,413 INFO L273 TraceCheckUtils]: 140: Hoare triple {86493#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {86493#false} is VALID [2018-11-23 12:16:16,413 INFO L273 TraceCheckUtils]: 141: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,413 INFO L273 TraceCheckUtils]: 142: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,413 INFO L273 TraceCheckUtils]: 143: Hoare triple {86493#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {86493#false} is VALID [2018-11-23 12:16:16,413 INFO L273 TraceCheckUtils]: 144: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,413 INFO L273 TraceCheckUtils]: 145: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,413 INFO L273 TraceCheckUtils]: 146: Hoare triple {86493#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {86493#false} is VALID [2018-11-23 12:16:16,413 INFO L273 TraceCheckUtils]: 147: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,413 INFO L273 TraceCheckUtils]: 148: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,414 INFO L273 TraceCheckUtils]: 149: Hoare triple {86493#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {86493#false} is VALID [2018-11-23 12:16:16,414 INFO L273 TraceCheckUtils]: 150: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,414 INFO L273 TraceCheckUtils]: 151: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,414 INFO L273 TraceCheckUtils]: 152: Hoare triple {86493#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {86493#false} is VALID [2018-11-23 12:16:16,414 INFO L273 TraceCheckUtils]: 153: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,414 INFO L273 TraceCheckUtils]: 154: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,414 INFO L273 TraceCheckUtils]: 155: Hoare triple {86493#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {86493#false} is VALID [2018-11-23 12:16:16,414 INFO L273 TraceCheckUtils]: 156: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,414 INFO L273 TraceCheckUtils]: 157: Hoare triple {86493#false} assume !(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,415 INFO L273 TraceCheckUtils]: 158: Hoare triple {86493#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {86493#false} is VALID [2018-11-23 12:16:16,415 INFO L273 TraceCheckUtils]: 159: Hoare triple {86493#false} assume true; {86493#false} is VALID [2018-11-23 12:16:16,415 INFO L268 TraceCheckUtils]: 160: Hoare quadruple {86493#false} {86493#false} #84#return; {86493#false} is VALID [2018-11-23 12:16:16,415 INFO L273 TraceCheckUtils]: 161: Hoare triple {86493#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {86493#false} is VALID [2018-11-23 12:16:16,415 INFO L256 TraceCheckUtils]: 162: Hoare triple {86493#false} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {86493#false} is VALID [2018-11-23 12:16:16,415 INFO L273 TraceCheckUtils]: 163: Hoare triple {86493#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {86493#false} is VALID [2018-11-23 12:16:16,415 INFO L273 TraceCheckUtils]: 164: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,415 INFO L273 TraceCheckUtils]: 165: Hoare triple {86493#false} assume !(~i~1 > 20); {86493#false} is VALID [2018-11-23 12:16:16,415 INFO L273 TraceCheckUtils]: 166: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,415 INFO L273 TraceCheckUtils]: 167: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,416 INFO L273 TraceCheckUtils]: 168: Hoare triple {86493#false} assume !(~i~1 > 20); {86493#false} is VALID [2018-11-23 12:16:16,416 INFO L273 TraceCheckUtils]: 169: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,416 INFO L273 TraceCheckUtils]: 170: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,416 INFO L273 TraceCheckUtils]: 171: Hoare triple {86493#false} assume !(~i~1 > 20); {86493#false} is VALID [2018-11-23 12:16:16,416 INFO L273 TraceCheckUtils]: 172: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,416 INFO L273 TraceCheckUtils]: 173: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,416 INFO L273 TraceCheckUtils]: 174: Hoare triple {86493#false} assume !(~i~1 > 20); {86493#false} is VALID [2018-11-23 12:16:16,416 INFO L273 TraceCheckUtils]: 175: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,416 INFO L273 TraceCheckUtils]: 176: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,416 INFO L273 TraceCheckUtils]: 177: Hoare triple {86493#false} assume !(~i~1 > 20); {86493#false} is VALID [2018-11-23 12:16:16,417 INFO L273 TraceCheckUtils]: 178: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,417 INFO L273 TraceCheckUtils]: 179: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,417 INFO L273 TraceCheckUtils]: 180: Hoare triple {86493#false} assume !(~i~1 > 20); {86493#false} is VALID [2018-11-23 12:16:16,417 INFO L273 TraceCheckUtils]: 181: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,417 INFO L273 TraceCheckUtils]: 182: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,417 INFO L273 TraceCheckUtils]: 183: Hoare triple {86493#false} assume !(~i~1 > 20); {86493#false} is VALID [2018-11-23 12:16:16,417 INFO L273 TraceCheckUtils]: 184: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,417 INFO L273 TraceCheckUtils]: 185: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,417 INFO L273 TraceCheckUtils]: 186: Hoare triple {86493#false} assume !(~i~1 > 20); {86493#false} is VALID [2018-11-23 12:16:16,417 INFO L273 TraceCheckUtils]: 187: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,418 INFO L273 TraceCheckUtils]: 188: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,418 INFO L273 TraceCheckUtils]: 189: Hoare triple {86493#false} assume !(~i~1 > 20); {86493#false} is VALID [2018-11-23 12:16:16,418 INFO L273 TraceCheckUtils]: 190: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,418 INFO L273 TraceCheckUtils]: 191: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,418 INFO L273 TraceCheckUtils]: 192: Hoare triple {86493#false} assume !(~i~1 > 20); {86493#false} is VALID [2018-11-23 12:16:16,418 INFO L273 TraceCheckUtils]: 193: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,418 INFO L273 TraceCheckUtils]: 194: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,418 INFO L273 TraceCheckUtils]: 195: Hoare triple {86493#false} assume !(~i~1 > 20); {86493#false} is VALID [2018-11-23 12:16:16,418 INFO L273 TraceCheckUtils]: 196: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,418 INFO L273 TraceCheckUtils]: 197: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,419 INFO L273 TraceCheckUtils]: 198: Hoare triple {86493#false} assume !(~i~1 > 20); {86493#false} is VALID [2018-11-23 12:16:16,419 INFO L273 TraceCheckUtils]: 199: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,419 INFO L273 TraceCheckUtils]: 200: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,419 INFO L273 TraceCheckUtils]: 201: Hoare triple {86493#false} assume !(~i~1 > 20); {86493#false} is VALID [2018-11-23 12:16:16,419 INFO L273 TraceCheckUtils]: 202: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,419 INFO L273 TraceCheckUtils]: 203: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,419 INFO L273 TraceCheckUtils]: 204: Hoare triple {86493#false} assume !(~i~1 > 20); {86493#false} is VALID [2018-11-23 12:16:16,419 INFO L273 TraceCheckUtils]: 205: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,419 INFO L273 TraceCheckUtils]: 206: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,419 INFO L273 TraceCheckUtils]: 207: Hoare triple {86493#false} assume !(~i~1 > 20); {86493#false} is VALID [2018-11-23 12:16:16,420 INFO L273 TraceCheckUtils]: 208: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,420 INFO L273 TraceCheckUtils]: 209: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,420 INFO L273 TraceCheckUtils]: 210: Hoare triple {86493#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {86493#false} is VALID [2018-11-23 12:16:16,420 INFO L273 TraceCheckUtils]: 211: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,420 INFO L273 TraceCheckUtils]: 212: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,420 INFO L273 TraceCheckUtils]: 213: Hoare triple {86493#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {86493#false} is VALID [2018-11-23 12:16:16,420 INFO L273 TraceCheckUtils]: 214: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,420 INFO L273 TraceCheckUtils]: 215: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,420 INFO L273 TraceCheckUtils]: 216: Hoare triple {86493#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {86493#false} is VALID [2018-11-23 12:16:16,420 INFO L273 TraceCheckUtils]: 217: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,421 INFO L273 TraceCheckUtils]: 218: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,421 INFO L273 TraceCheckUtils]: 219: Hoare triple {86493#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {86493#false} is VALID [2018-11-23 12:16:16,421 INFO L273 TraceCheckUtils]: 220: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,421 INFO L273 TraceCheckUtils]: 221: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,421 INFO L273 TraceCheckUtils]: 222: Hoare triple {86493#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {86493#false} is VALID [2018-11-23 12:16:16,421 INFO L273 TraceCheckUtils]: 223: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,421 INFO L273 TraceCheckUtils]: 224: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,421 INFO L273 TraceCheckUtils]: 225: Hoare triple {86493#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {86493#false} is VALID [2018-11-23 12:16:16,421 INFO L273 TraceCheckUtils]: 226: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,421 INFO L273 TraceCheckUtils]: 227: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,422 INFO L273 TraceCheckUtils]: 228: Hoare triple {86493#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {86493#false} is VALID [2018-11-23 12:16:16,422 INFO L273 TraceCheckUtils]: 229: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,422 INFO L273 TraceCheckUtils]: 230: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,422 INFO L273 TraceCheckUtils]: 231: Hoare triple {86493#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {86493#false} is VALID [2018-11-23 12:16:16,422 INFO L273 TraceCheckUtils]: 232: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,422 INFO L273 TraceCheckUtils]: 233: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,422 INFO L273 TraceCheckUtils]: 234: Hoare triple {86493#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {86493#false} is VALID [2018-11-23 12:16:16,422 INFO L273 TraceCheckUtils]: 235: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,422 INFO L273 TraceCheckUtils]: 236: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,422 INFO L273 TraceCheckUtils]: 237: Hoare triple {86493#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {86493#false} is VALID [2018-11-23 12:16:16,423 INFO L273 TraceCheckUtils]: 238: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,423 INFO L273 TraceCheckUtils]: 239: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,423 INFO L273 TraceCheckUtils]: 240: Hoare triple {86493#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {86493#false} is VALID [2018-11-23 12:16:16,423 INFO L273 TraceCheckUtils]: 241: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,423 INFO L273 TraceCheckUtils]: 242: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,423 INFO L273 TraceCheckUtils]: 243: Hoare triple {86493#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {86493#false} is VALID [2018-11-23 12:16:16,423 INFO L273 TraceCheckUtils]: 244: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,423 INFO L273 TraceCheckUtils]: 245: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,423 INFO L273 TraceCheckUtils]: 246: Hoare triple {86493#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {86493#false} is VALID [2018-11-23 12:16:16,423 INFO L273 TraceCheckUtils]: 247: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,424 INFO L273 TraceCheckUtils]: 248: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,424 INFO L273 TraceCheckUtils]: 249: Hoare triple {86493#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {86493#false} is VALID [2018-11-23 12:16:16,424 INFO L273 TraceCheckUtils]: 250: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,424 INFO L273 TraceCheckUtils]: 251: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,424 INFO L273 TraceCheckUtils]: 252: Hoare triple {86493#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {86493#false} is VALID [2018-11-23 12:16:16,424 INFO L273 TraceCheckUtils]: 253: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,424 INFO L273 TraceCheckUtils]: 254: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,424 INFO L273 TraceCheckUtils]: 255: Hoare triple {86493#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {86493#false} is VALID [2018-11-23 12:16:16,424 INFO L273 TraceCheckUtils]: 256: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,424 INFO L273 TraceCheckUtils]: 257: Hoare triple {86493#false} assume !(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,425 INFO L273 TraceCheckUtils]: 258: Hoare triple {86493#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {86493#false} is VALID [2018-11-23 12:16:16,425 INFO L273 TraceCheckUtils]: 259: Hoare triple {86493#false} assume true; {86493#false} is VALID [2018-11-23 12:16:16,425 INFO L268 TraceCheckUtils]: 260: Hoare quadruple {86493#false} {86493#false} #86#return; {86493#false} is VALID [2018-11-23 12:16:16,425 INFO L273 TraceCheckUtils]: 261: Hoare triple {86493#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {86493#false} is VALID [2018-11-23 12:16:16,425 INFO L273 TraceCheckUtils]: 262: Hoare triple {86493#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {86493#false} is VALID [2018-11-23 12:16:16,425 INFO L273 TraceCheckUtils]: 263: Hoare triple {86493#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {86493#false} is VALID [2018-11-23 12:16:16,425 INFO L273 TraceCheckUtils]: 264: Hoare triple {86493#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {86493#false} is VALID [2018-11-23 12:16:16,425 INFO L273 TraceCheckUtils]: 265: Hoare triple {86493#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {86493#false} is VALID [2018-11-23 12:16:16,425 INFO L273 TraceCheckUtils]: 266: Hoare triple {86493#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {86493#false} is VALID [2018-11-23 12:16:16,425 INFO L273 TraceCheckUtils]: 267: Hoare triple {86493#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {86493#false} is VALID [2018-11-23 12:16:16,426 INFO L273 TraceCheckUtils]: 268: Hoare triple {86493#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {86493#false} is VALID [2018-11-23 12:16:16,426 INFO L273 TraceCheckUtils]: 269: Hoare triple {86493#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {86493#false} is VALID [2018-11-23 12:16:16,426 INFO L273 TraceCheckUtils]: 270: Hoare triple {86493#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {86493#false} is VALID [2018-11-23 12:16:16,426 INFO L273 TraceCheckUtils]: 271: Hoare triple {86493#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {86493#false} is VALID [2018-11-23 12:16:16,426 INFO L273 TraceCheckUtils]: 272: Hoare triple {86493#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {86493#false} is VALID [2018-11-23 12:16:16,426 INFO L273 TraceCheckUtils]: 273: Hoare triple {86493#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {86493#false} is VALID [2018-11-23 12:16:16,426 INFO L273 TraceCheckUtils]: 274: Hoare triple {86493#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {86493#false} is VALID [2018-11-23 12:16:16,426 INFO L273 TraceCheckUtils]: 275: Hoare triple {86493#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {86493#false} is VALID [2018-11-23 12:16:16,426 INFO L273 TraceCheckUtils]: 276: Hoare triple {86493#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {86493#false} is VALID [2018-11-23 12:16:16,426 INFO L273 TraceCheckUtils]: 277: Hoare triple {86493#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {86493#false} is VALID [2018-11-23 12:16:16,427 INFO L273 TraceCheckUtils]: 278: Hoare triple {86493#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {86493#false} is VALID [2018-11-23 12:16:16,427 INFO L273 TraceCheckUtils]: 279: Hoare triple {86493#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {86493#false} is VALID [2018-11-23 12:16:16,427 INFO L273 TraceCheckUtils]: 280: Hoare triple {86493#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {86493#false} is VALID [2018-11-23 12:16:16,427 INFO L273 TraceCheckUtils]: 281: Hoare triple {86493#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {86493#false} is VALID [2018-11-23 12:16:16,427 INFO L273 TraceCheckUtils]: 282: Hoare triple {86493#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {86493#false} is VALID [2018-11-23 12:16:16,427 INFO L273 TraceCheckUtils]: 283: Hoare triple {86493#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {86493#false} is VALID [2018-11-23 12:16:16,427 INFO L273 TraceCheckUtils]: 284: Hoare triple {86493#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {86493#false} is VALID [2018-11-23 12:16:16,427 INFO L273 TraceCheckUtils]: 285: Hoare triple {86493#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {86493#false} is VALID [2018-11-23 12:16:16,427 INFO L273 TraceCheckUtils]: 286: Hoare triple {86493#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {86493#false} is VALID [2018-11-23 12:16:16,427 INFO L273 TraceCheckUtils]: 287: Hoare triple {86493#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {86493#false} is VALID [2018-11-23 12:16:16,428 INFO L273 TraceCheckUtils]: 288: Hoare triple {86493#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {86493#false} is VALID [2018-11-23 12:16:16,428 INFO L273 TraceCheckUtils]: 289: Hoare triple {86493#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {86493#false} is VALID [2018-11-23 12:16:16,428 INFO L273 TraceCheckUtils]: 290: Hoare triple {86493#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {86493#false} is VALID [2018-11-23 12:16:16,428 INFO L273 TraceCheckUtils]: 291: Hoare triple {86493#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {86493#false} is VALID [2018-11-23 12:16:16,428 INFO L273 TraceCheckUtils]: 292: Hoare triple {86493#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {86493#false} is VALID [2018-11-23 12:16:16,428 INFO L273 TraceCheckUtils]: 293: Hoare triple {86493#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {86493#false} is VALID [2018-11-23 12:16:16,428 INFO L273 TraceCheckUtils]: 294: Hoare triple {86493#false} assume !(~i~2 < 39); {86493#false} is VALID [2018-11-23 12:16:16,428 INFO L273 TraceCheckUtils]: 295: Hoare triple {86493#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {86493#false} is VALID [2018-11-23 12:16:16,428 INFO L256 TraceCheckUtils]: 296: Hoare triple {86493#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {86493#false} is VALID [2018-11-23 12:16:16,429 INFO L273 TraceCheckUtils]: 297: Hoare triple {86493#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {86493#false} is VALID [2018-11-23 12:16:16,429 INFO L273 TraceCheckUtils]: 298: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,429 INFO L273 TraceCheckUtils]: 299: Hoare triple {86493#false} assume !(~i~1 > 20); {86493#false} is VALID [2018-11-23 12:16:16,429 INFO L273 TraceCheckUtils]: 300: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,429 INFO L273 TraceCheckUtils]: 301: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,429 INFO L273 TraceCheckUtils]: 302: Hoare triple {86493#false} assume !(~i~1 > 20); {86493#false} is VALID [2018-11-23 12:16:16,429 INFO L273 TraceCheckUtils]: 303: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,429 INFO L273 TraceCheckUtils]: 304: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,429 INFO L273 TraceCheckUtils]: 305: Hoare triple {86493#false} assume !(~i~1 > 20); {86493#false} is VALID [2018-11-23 12:16:16,429 INFO L273 TraceCheckUtils]: 306: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,430 INFO L273 TraceCheckUtils]: 307: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,430 INFO L273 TraceCheckUtils]: 308: Hoare triple {86493#false} assume !(~i~1 > 20); {86493#false} is VALID [2018-11-23 12:16:16,430 INFO L273 TraceCheckUtils]: 309: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,430 INFO L273 TraceCheckUtils]: 310: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,430 INFO L273 TraceCheckUtils]: 311: Hoare triple {86493#false} assume !(~i~1 > 20); {86493#false} is VALID [2018-11-23 12:16:16,430 INFO L273 TraceCheckUtils]: 312: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,430 INFO L273 TraceCheckUtils]: 313: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,430 INFO L273 TraceCheckUtils]: 314: Hoare triple {86493#false} assume !(~i~1 > 20); {86493#false} is VALID [2018-11-23 12:16:16,430 INFO L273 TraceCheckUtils]: 315: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,430 INFO L273 TraceCheckUtils]: 316: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,431 INFO L273 TraceCheckUtils]: 317: Hoare triple {86493#false} assume !(~i~1 > 20); {86493#false} is VALID [2018-11-23 12:16:16,431 INFO L273 TraceCheckUtils]: 318: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,431 INFO L273 TraceCheckUtils]: 319: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,431 INFO L273 TraceCheckUtils]: 320: Hoare triple {86493#false} assume !(~i~1 > 20); {86493#false} is VALID [2018-11-23 12:16:16,431 INFO L273 TraceCheckUtils]: 321: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,431 INFO L273 TraceCheckUtils]: 322: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,431 INFO L273 TraceCheckUtils]: 323: Hoare triple {86493#false} assume !(~i~1 > 20); {86493#false} is VALID [2018-11-23 12:16:16,431 INFO L273 TraceCheckUtils]: 324: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,431 INFO L273 TraceCheckUtils]: 325: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,431 INFO L273 TraceCheckUtils]: 326: Hoare triple {86493#false} assume !(~i~1 > 20); {86493#false} is VALID [2018-11-23 12:16:16,432 INFO L273 TraceCheckUtils]: 327: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,432 INFO L273 TraceCheckUtils]: 328: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,432 INFO L273 TraceCheckUtils]: 329: Hoare triple {86493#false} assume !(~i~1 > 20); {86493#false} is VALID [2018-11-23 12:16:16,432 INFO L273 TraceCheckUtils]: 330: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,432 INFO L273 TraceCheckUtils]: 331: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,432 INFO L273 TraceCheckUtils]: 332: Hoare triple {86493#false} assume !(~i~1 > 20); {86493#false} is VALID [2018-11-23 12:16:16,432 INFO L273 TraceCheckUtils]: 333: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,432 INFO L273 TraceCheckUtils]: 334: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,432 INFO L273 TraceCheckUtils]: 335: Hoare triple {86493#false} assume !(~i~1 > 20); {86493#false} is VALID [2018-11-23 12:16:16,432 INFO L273 TraceCheckUtils]: 336: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,433 INFO L273 TraceCheckUtils]: 337: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,433 INFO L273 TraceCheckUtils]: 338: Hoare triple {86493#false} assume !(~i~1 > 20); {86493#false} is VALID [2018-11-23 12:16:16,433 INFO L273 TraceCheckUtils]: 339: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,433 INFO L273 TraceCheckUtils]: 340: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,433 INFO L273 TraceCheckUtils]: 341: Hoare triple {86493#false} assume !(~i~1 > 20); {86493#false} is VALID [2018-11-23 12:16:16,433 INFO L273 TraceCheckUtils]: 342: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,433 INFO L273 TraceCheckUtils]: 343: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,433 INFO L273 TraceCheckUtils]: 344: Hoare triple {86493#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {86493#false} is VALID [2018-11-23 12:16:16,433 INFO L273 TraceCheckUtils]: 345: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,434 INFO L273 TraceCheckUtils]: 346: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,434 INFO L273 TraceCheckUtils]: 347: Hoare triple {86493#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {86493#false} is VALID [2018-11-23 12:16:16,434 INFO L273 TraceCheckUtils]: 348: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,434 INFO L273 TraceCheckUtils]: 349: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,434 INFO L273 TraceCheckUtils]: 350: Hoare triple {86493#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {86493#false} is VALID [2018-11-23 12:16:16,434 INFO L273 TraceCheckUtils]: 351: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,434 INFO L273 TraceCheckUtils]: 352: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,434 INFO L273 TraceCheckUtils]: 353: Hoare triple {86493#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {86493#false} is VALID [2018-11-23 12:16:16,434 INFO L273 TraceCheckUtils]: 354: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,434 INFO L273 TraceCheckUtils]: 355: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,435 INFO L273 TraceCheckUtils]: 356: Hoare triple {86493#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {86493#false} is VALID [2018-11-23 12:16:16,435 INFO L273 TraceCheckUtils]: 357: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,435 INFO L273 TraceCheckUtils]: 358: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,435 INFO L273 TraceCheckUtils]: 359: Hoare triple {86493#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {86493#false} is VALID [2018-11-23 12:16:16,435 INFO L273 TraceCheckUtils]: 360: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,435 INFO L273 TraceCheckUtils]: 361: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,435 INFO L273 TraceCheckUtils]: 362: Hoare triple {86493#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {86493#false} is VALID [2018-11-23 12:16:16,435 INFO L273 TraceCheckUtils]: 363: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,435 INFO L273 TraceCheckUtils]: 364: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,435 INFO L273 TraceCheckUtils]: 365: Hoare triple {86493#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {86493#false} is VALID [2018-11-23 12:16:16,436 INFO L273 TraceCheckUtils]: 366: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,436 INFO L273 TraceCheckUtils]: 367: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,436 INFO L273 TraceCheckUtils]: 368: Hoare triple {86493#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {86493#false} is VALID [2018-11-23 12:16:16,436 INFO L273 TraceCheckUtils]: 369: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,436 INFO L273 TraceCheckUtils]: 370: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,436 INFO L273 TraceCheckUtils]: 371: Hoare triple {86493#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {86493#false} is VALID [2018-11-23 12:16:16,436 INFO L273 TraceCheckUtils]: 372: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,436 INFO L273 TraceCheckUtils]: 373: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,436 INFO L273 TraceCheckUtils]: 374: Hoare triple {86493#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {86493#false} is VALID [2018-11-23 12:16:16,436 INFO L273 TraceCheckUtils]: 375: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,437 INFO L273 TraceCheckUtils]: 376: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,437 INFO L273 TraceCheckUtils]: 377: Hoare triple {86493#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {86493#false} is VALID [2018-11-23 12:16:16,437 INFO L273 TraceCheckUtils]: 378: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,437 INFO L273 TraceCheckUtils]: 379: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,437 INFO L273 TraceCheckUtils]: 380: Hoare triple {86493#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {86493#false} is VALID [2018-11-23 12:16:16,437 INFO L273 TraceCheckUtils]: 381: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,437 INFO L273 TraceCheckUtils]: 382: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,437 INFO L273 TraceCheckUtils]: 383: Hoare triple {86493#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {86493#false} is VALID [2018-11-23 12:16:16,437 INFO L273 TraceCheckUtils]: 384: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,437 INFO L273 TraceCheckUtils]: 385: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,438 INFO L273 TraceCheckUtils]: 386: Hoare triple {86493#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {86493#false} is VALID [2018-11-23 12:16:16,438 INFO L273 TraceCheckUtils]: 387: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,438 INFO L273 TraceCheckUtils]: 388: Hoare triple {86493#false} assume !!(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,438 INFO L273 TraceCheckUtils]: 389: Hoare triple {86493#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {86493#false} is VALID [2018-11-23 12:16:16,438 INFO L273 TraceCheckUtils]: 390: Hoare triple {86493#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {86493#false} is VALID [2018-11-23 12:16:16,438 INFO L273 TraceCheckUtils]: 391: Hoare triple {86493#false} assume !(~i~1 < 40); {86493#false} is VALID [2018-11-23 12:16:16,438 INFO L273 TraceCheckUtils]: 392: Hoare triple {86493#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {86493#false} is VALID [2018-11-23 12:16:16,438 INFO L273 TraceCheckUtils]: 393: Hoare triple {86493#false} assume true; {86493#false} is VALID [2018-11-23 12:16:16,438 INFO L268 TraceCheckUtils]: 394: Hoare quadruple {86493#false} {86493#false} #88#return; {86493#false} is VALID [2018-11-23 12:16:16,438 INFO L273 TraceCheckUtils]: 395: Hoare triple {86493#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {86493#false} is VALID [2018-11-23 12:16:16,439 INFO L273 TraceCheckUtils]: 396: Hoare triple {86493#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {86493#false} is VALID [2018-11-23 12:16:16,439 INFO L273 TraceCheckUtils]: 397: Hoare triple {86493#false} assume !false; {86493#false} is VALID [2018-11-23 12:16:16,495 INFO L134 CoverageAnalysis]: Checked inductivity of 14009 backedges. 0 proven. 625 refuted. 0 times theorem prover too weak. 13384 trivial. 0 not checked. [2018-11-23 12:16:16,514 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:16:16,515 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [28] total 28 [2018-11-23 12:16:16,515 INFO L78 Accepts]: Start accepts. Automaton has 28 states. Word has length 398 [2018-11-23 12:16:16,516 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:16:16,516 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 28 states. [2018-11-23 12:16:16,609 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-23 12:16:16,609 INFO L459 AbstractCegarLoop]: Interpolant automaton has 28 states [2018-11-23 12:16:16,610 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 28 interpolants. [2018-11-23 12:16:16,610 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=378, Invalid=378, Unknown=0, NotChecked=0, Total=756 [2018-11-23 12:16:16,610 INFO L87 Difference]: Start difference. First operand 203 states and 224 transitions. Second operand 28 states. [2018-11-23 12:16:17,191 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:17,191 INFO L93 Difference]: Finished difference Result 350 states and 392 transitions. [2018-11-23 12:16:17,191 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 28 states. [2018-11-23 12:16:17,191 INFO L78 Accepts]: Start accepts. Automaton has 28 states. Word has length 398 [2018-11-23 12:16:17,191 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:16:17,192 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 28 states. [2018-11-23 12:16:17,193 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 118 transitions. [2018-11-23 12:16:17,193 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 28 states. [2018-11-23 12:16:17,194 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 118 transitions. [2018-11-23 12:16:17,194 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 28 states and 118 transitions. [2018-11-23 12:16:17,402 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 118 edges. 118 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:16:17,406 INFO L225 Difference]: With dead ends: 350 [2018-11-23 12:16:17,406 INFO L226 Difference]: Without dead ends: 206 [2018-11-23 12:16:17,408 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 397 GetRequests, 371 SyntacticMatches, 0 SemanticMatches, 26 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=378, Invalid=378, Unknown=0, NotChecked=0, Total=756 [2018-11-23 12:16:17,408 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 206 states. [2018-11-23 12:16:17,812 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 206 to 205. [2018-11-23 12:16:17,813 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:16:17,813 INFO L82 GeneralOperation]: Start isEquivalent. First operand 206 states. Second operand 205 states. [2018-11-23 12:16:17,813 INFO L74 IsIncluded]: Start isIncluded. First operand 206 states. Second operand 205 states. [2018-11-23 12:16:17,813 INFO L87 Difference]: Start difference. First operand 206 states. Second operand 205 states. [2018-11-23 12:16:17,816 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:17,816 INFO L93 Difference]: Finished difference Result 206 states and 227 transitions. [2018-11-23 12:16:17,816 INFO L276 IsEmpty]: Start isEmpty. Operand 206 states and 227 transitions. [2018-11-23 12:16:17,817 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:17,817 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:17,817 INFO L74 IsIncluded]: Start isIncluded. First operand 205 states. Second operand 206 states. [2018-11-23 12:16:17,817 INFO L87 Difference]: Start difference. First operand 205 states. Second operand 206 states. [2018-11-23 12:16:17,820 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:17,820 INFO L93 Difference]: Finished difference Result 206 states and 227 transitions. [2018-11-23 12:16:17,820 INFO L276 IsEmpty]: Start isEmpty. Operand 206 states and 227 transitions. [2018-11-23 12:16:17,820 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:17,820 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:17,821 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:16:17,821 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:16:17,821 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 205 states. [2018-11-23 12:16:17,824 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 205 states to 205 states and 226 transitions. [2018-11-23 12:16:17,824 INFO L78 Accepts]: Start accepts. Automaton has 205 states and 226 transitions. Word has length 398 [2018-11-23 12:16:17,824 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:16:17,824 INFO L480 AbstractCegarLoop]: Abstraction has 205 states and 226 transitions. [2018-11-23 12:16:17,824 INFO L481 AbstractCegarLoop]: Interpolant automaton has 28 states. [2018-11-23 12:16:17,824 INFO L276 IsEmpty]: Start isEmpty. Operand 205 states and 226 transitions. [2018-11-23 12:16:17,826 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 401 [2018-11-23 12:16:17,826 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:16:17,826 INFO L402 BasicCegarLoop]: trace histogram [93, 93, 48, 45, 26, 26, 16, 16, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:16:17,826 INFO L423 AbstractCegarLoop]: === Iteration 68 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:16:17,826 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:16:17,827 INFO L82 PathProgramCache]: Analyzing trace with hash 2075082456, now seen corresponding path program 63 times [2018-11-23 12:16:17,827 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:16:17,827 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:16:17,827 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:17,827 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:16:17,828 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:17,839 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:16:17,839 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:16:17,839 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 69 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 69 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:16:17,848 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-23 12:16:21,561 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 18 check-sat command(s) [2018-11-23 12:16:21,562 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:16:21,624 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:21,627 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:16:22,104 INFO L256 TraceCheckUtils]: 0: Hoare triple {88905#true} call ULTIMATE.init(); {88905#true} is VALID [2018-11-23 12:16:22,105 INFO L273 TraceCheckUtils]: 1: Hoare triple {88905#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {88905#true} is VALID [2018-11-23 12:16:22,105 INFO L273 TraceCheckUtils]: 2: Hoare triple {88905#true} assume true; {88905#true} is VALID [2018-11-23 12:16:22,105 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {88905#true} {88905#true} #78#return; {88905#true} is VALID [2018-11-23 12:16:22,105 INFO L256 TraceCheckUtils]: 4: Hoare triple {88905#true} call #t~ret12 := main(); {88905#true} is VALID [2018-11-23 12:16:22,105 INFO L273 TraceCheckUtils]: 5: Hoare triple {88905#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {88905#true} is VALID [2018-11-23 12:16:22,105 INFO L256 TraceCheckUtils]: 6: Hoare triple {88905#true} call init_nondet(~#x~0.base, ~#x~0.offset); {88905#true} is VALID [2018-11-23 12:16:22,106 INFO L273 TraceCheckUtils]: 7: Hoare triple {88905#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {88905#true} is VALID [2018-11-23 12:16:22,106 INFO L273 TraceCheckUtils]: 8: Hoare triple {88905#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {88905#true} is VALID [2018-11-23 12:16:22,106 INFO L273 TraceCheckUtils]: 9: Hoare triple {88905#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {88905#true} is VALID [2018-11-23 12:16:22,106 INFO L273 TraceCheckUtils]: 10: Hoare triple {88905#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {88905#true} is VALID [2018-11-23 12:16:22,106 INFO L273 TraceCheckUtils]: 11: Hoare triple {88905#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {88905#true} is VALID [2018-11-23 12:16:22,107 INFO L273 TraceCheckUtils]: 12: Hoare triple {88905#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {88905#true} is VALID [2018-11-23 12:16:22,107 INFO L273 TraceCheckUtils]: 13: Hoare triple {88905#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {88905#true} is VALID [2018-11-23 12:16:22,107 INFO L273 TraceCheckUtils]: 14: Hoare triple {88905#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {88905#true} is VALID [2018-11-23 12:16:22,107 INFO L273 TraceCheckUtils]: 15: Hoare triple {88905#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {88905#true} is VALID [2018-11-23 12:16:22,107 INFO L273 TraceCheckUtils]: 16: Hoare triple {88905#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {88905#true} is VALID [2018-11-23 12:16:22,107 INFO L273 TraceCheckUtils]: 17: Hoare triple {88905#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {88905#true} is VALID [2018-11-23 12:16:22,107 INFO L273 TraceCheckUtils]: 18: Hoare triple {88905#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {88905#true} is VALID [2018-11-23 12:16:22,107 INFO L273 TraceCheckUtils]: 19: Hoare triple {88905#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {88905#true} is VALID [2018-11-23 12:16:22,107 INFO L273 TraceCheckUtils]: 20: Hoare triple {88905#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {88905#true} is VALID [2018-11-23 12:16:22,108 INFO L273 TraceCheckUtils]: 21: Hoare triple {88905#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {88905#true} is VALID [2018-11-23 12:16:22,108 INFO L273 TraceCheckUtils]: 22: Hoare triple {88905#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {88905#true} is VALID [2018-11-23 12:16:22,108 INFO L273 TraceCheckUtils]: 23: Hoare triple {88905#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {88905#true} is VALID [2018-11-23 12:16:22,108 INFO L273 TraceCheckUtils]: 24: Hoare triple {88905#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {88905#true} is VALID [2018-11-23 12:16:22,108 INFO L273 TraceCheckUtils]: 25: Hoare triple {88905#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {88905#true} is VALID [2018-11-23 12:16:22,108 INFO L273 TraceCheckUtils]: 26: Hoare triple {88905#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {88905#true} is VALID [2018-11-23 12:16:22,108 INFO L273 TraceCheckUtils]: 27: Hoare triple {88905#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {88905#true} is VALID [2018-11-23 12:16:22,108 INFO L273 TraceCheckUtils]: 28: Hoare triple {88905#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {88905#true} is VALID [2018-11-23 12:16:22,108 INFO L273 TraceCheckUtils]: 29: Hoare triple {88905#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {88905#true} is VALID [2018-11-23 12:16:22,108 INFO L273 TraceCheckUtils]: 30: Hoare triple {88905#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {88905#true} is VALID [2018-11-23 12:16:22,109 INFO L273 TraceCheckUtils]: 31: Hoare triple {88905#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {88905#true} is VALID [2018-11-23 12:16:22,109 INFO L273 TraceCheckUtils]: 32: Hoare triple {88905#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {88905#true} is VALID [2018-11-23 12:16:22,109 INFO L273 TraceCheckUtils]: 33: Hoare triple {88905#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {88905#true} is VALID [2018-11-23 12:16:22,109 INFO L273 TraceCheckUtils]: 34: Hoare triple {88905#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {88905#true} is VALID [2018-11-23 12:16:22,109 INFO L273 TraceCheckUtils]: 35: Hoare triple {88905#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {88905#true} is VALID [2018-11-23 12:16:22,109 INFO L273 TraceCheckUtils]: 36: Hoare triple {88905#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {88905#true} is VALID [2018-11-23 12:16:22,109 INFO L273 TraceCheckUtils]: 37: Hoare triple {88905#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {88905#true} is VALID [2018-11-23 12:16:22,109 INFO L273 TraceCheckUtils]: 38: Hoare triple {88905#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {88905#true} is VALID [2018-11-23 12:16:22,109 INFO L273 TraceCheckUtils]: 39: Hoare triple {88905#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {88905#true} is VALID [2018-11-23 12:16:22,109 INFO L273 TraceCheckUtils]: 40: Hoare triple {88905#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {88905#true} is VALID [2018-11-23 12:16:22,110 INFO L273 TraceCheckUtils]: 41: Hoare triple {88905#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {88905#true} is VALID [2018-11-23 12:16:22,110 INFO L273 TraceCheckUtils]: 42: Hoare triple {88905#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {88905#true} is VALID [2018-11-23 12:16:22,110 INFO L273 TraceCheckUtils]: 43: Hoare triple {88905#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {88905#true} is VALID [2018-11-23 12:16:22,110 INFO L273 TraceCheckUtils]: 44: Hoare triple {88905#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {88905#true} is VALID [2018-11-23 12:16:22,110 INFO L273 TraceCheckUtils]: 45: Hoare triple {88905#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {88905#true} is VALID [2018-11-23 12:16:22,110 INFO L273 TraceCheckUtils]: 46: Hoare triple {88905#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {88905#true} is VALID [2018-11-23 12:16:22,110 INFO L273 TraceCheckUtils]: 47: Hoare triple {88905#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {88905#true} is VALID [2018-11-23 12:16:22,110 INFO L273 TraceCheckUtils]: 48: Hoare triple {88905#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {88905#true} is VALID [2018-11-23 12:16:22,110 INFO L273 TraceCheckUtils]: 49: Hoare triple {88905#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {88905#true} is VALID [2018-11-23 12:16:22,110 INFO L273 TraceCheckUtils]: 50: Hoare triple {88905#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {88905#true} is VALID [2018-11-23 12:16:22,111 INFO L273 TraceCheckUtils]: 51: Hoare triple {88905#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {88905#true} is VALID [2018-11-23 12:16:22,111 INFO L273 TraceCheckUtils]: 52: Hoare triple {88905#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {88905#true} is VALID [2018-11-23 12:16:22,111 INFO L273 TraceCheckUtils]: 53: Hoare triple {88905#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {88905#true} is VALID [2018-11-23 12:16:22,111 INFO L273 TraceCheckUtils]: 54: Hoare triple {88905#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {88905#true} is VALID [2018-11-23 12:16:22,111 INFO L273 TraceCheckUtils]: 55: Hoare triple {88905#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {88905#true} is VALID [2018-11-23 12:16:22,111 INFO L273 TraceCheckUtils]: 56: Hoare triple {88905#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {88905#true} is VALID [2018-11-23 12:16:22,111 INFO L273 TraceCheckUtils]: 57: Hoare triple {88905#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {88905#true} is VALID [2018-11-23 12:16:22,111 INFO L273 TraceCheckUtils]: 58: Hoare triple {88905#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {88905#true} is VALID [2018-11-23 12:16:22,111 INFO L273 TraceCheckUtils]: 59: Hoare triple {88905#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {88905#true} is VALID [2018-11-23 12:16:22,111 INFO L273 TraceCheckUtils]: 60: Hoare triple {88905#true} assume !(~i~0 < 40); {88905#true} is VALID [2018-11-23 12:16:22,112 INFO L273 TraceCheckUtils]: 61: Hoare triple {88905#true} assume true; {88905#true} is VALID [2018-11-23 12:16:22,112 INFO L268 TraceCheckUtils]: 62: Hoare quadruple {88905#true} {88905#true} #82#return; {88905#true} is VALID [2018-11-23 12:16:22,112 INFO L273 TraceCheckUtils]: 63: Hoare triple {88905#true} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {88905#true} is VALID [2018-11-23 12:16:22,112 INFO L256 TraceCheckUtils]: 64: Hoare triple {88905#true} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {88905#true} is VALID [2018-11-23 12:16:22,112 INFO L273 TraceCheckUtils]: 65: Hoare triple {88905#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {88905#true} is VALID [2018-11-23 12:16:22,112 INFO L273 TraceCheckUtils]: 66: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,112 INFO L273 TraceCheckUtils]: 67: Hoare triple {88905#true} assume !(~i~1 > 20); {88905#true} is VALID [2018-11-23 12:16:22,112 INFO L273 TraceCheckUtils]: 68: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,112 INFO L273 TraceCheckUtils]: 69: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,113 INFO L273 TraceCheckUtils]: 70: Hoare triple {88905#true} assume !(~i~1 > 20); {88905#true} is VALID [2018-11-23 12:16:22,113 INFO L273 TraceCheckUtils]: 71: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,113 INFO L273 TraceCheckUtils]: 72: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,113 INFO L273 TraceCheckUtils]: 73: Hoare triple {88905#true} assume !(~i~1 > 20); {88905#true} is VALID [2018-11-23 12:16:22,113 INFO L273 TraceCheckUtils]: 74: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,113 INFO L273 TraceCheckUtils]: 75: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,113 INFO L273 TraceCheckUtils]: 76: Hoare triple {88905#true} assume !(~i~1 > 20); {88905#true} is VALID [2018-11-23 12:16:22,113 INFO L273 TraceCheckUtils]: 77: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,113 INFO L273 TraceCheckUtils]: 78: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,114 INFO L273 TraceCheckUtils]: 79: Hoare triple {88905#true} assume !(~i~1 > 20); {88905#true} is VALID [2018-11-23 12:16:22,114 INFO L273 TraceCheckUtils]: 80: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,114 INFO L273 TraceCheckUtils]: 81: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,114 INFO L273 TraceCheckUtils]: 82: Hoare triple {88905#true} assume !(~i~1 > 20); {88905#true} is VALID [2018-11-23 12:16:22,114 INFO L273 TraceCheckUtils]: 83: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,114 INFO L273 TraceCheckUtils]: 84: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,114 INFO L273 TraceCheckUtils]: 85: Hoare triple {88905#true} assume !(~i~1 > 20); {88905#true} is VALID [2018-11-23 12:16:22,115 INFO L273 TraceCheckUtils]: 86: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,115 INFO L273 TraceCheckUtils]: 87: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,115 INFO L273 TraceCheckUtils]: 88: Hoare triple {88905#true} assume !(~i~1 > 20); {88905#true} is VALID [2018-11-23 12:16:22,115 INFO L273 TraceCheckUtils]: 89: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,115 INFO L273 TraceCheckUtils]: 90: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,115 INFO L273 TraceCheckUtils]: 91: Hoare triple {88905#true} assume !(~i~1 > 20); {88905#true} is VALID [2018-11-23 12:16:22,115 INFO L273 TraceCheckUtils]: 92: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,116 INFO L273 TraceCheckUtils]: 93: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,116 INFO L273 TraceCheckUtils]: 94: Hoare triple {88905#true} assume !(~i~1 > 20); {88905#true} is VALID [2018-11-23 12:16:22,116 INFO L273 TraceCheckUtils]: 95: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,116 INFO L273 TraceCheckUtils]: 96: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,116 INFO L273 TraceCheckUtils]: 97: Hoare triple {88905#true} assume !(~i~1 > 20); {88905#true} is VALID [2018-11-23 12:16:22,116 INFO L273 TraceCheckUtils]: 98: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,116 INFO L273 TraceCheckUtils]: 99: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,116 INFO L273 TraceCheckUtils]: 100: Hoare triple {88905#true} assume !(~i~1 > 20); {88905#true} is VALID [2018-11-23 12:16:22,117 INFO L273 TraceCheckUtils]: 101: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,117 INFO L273 TraceCheckUtils]: 102: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,117 INFO L273 TraceCheckUtils]: 103: Hoare triple {88905#true} assume !(~i~1 > 20); {88905#true} is VALID [2018-11-23 12:16:22,117 INFO L273 TraceCheckUtils]: 104: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,117 INFO L273 TraceCheckUtils]: 105: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,117 INFO L273 TraceCheckUtils]: 106: Hoare triple {88905#true} assume !(~i~1 > 20); {88905#true} is VALID [2018-11-23 12:16:22,117 INFO L273 TraceCheckUtils]: 107: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,118 INFO L273 TraceCheckUtils]: 108: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,118 INFO L273 TraceCheckUtils]: 109: Hoare triple {88905#true} assume !(~i~1 > 20); {88905#true} is VALID [2018-11-23 12:16:22,118 INFO L273 TraceCheckUtils]: 110: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,118 INFO L273 TraceCheckUtils]: 111: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,118 INFO L273 TraceCheckUtils]: 112: Hoare triple {88905#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {88905#true} is VALID [2018-11-23 12:16:22,118 INFO L273 TraceCheckUtils]: 113: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,118 INFO L273 TraceCheckUtils]: 114: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,118 INFO L273 TraceCheckUtils]: 115: Hoare triple {88905#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {88905#true} is VALID [2018-11-23 12:16:22,119 INFO L273 TraceCheckUtils]: 116: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,119 INFO L273 TraceCheckUtils]: 117: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,119 INFO L273 TraceCheckUtils]: 118: Hoare triple {88905#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {88905#true} is VALID [2018-11-23 12:16:22,119 INFO L273 TraceCheckUtils]: 119: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,119 INFO L273 TraceCheckUtils]: 120: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,119 INFO L273 TraceCheckUtils]: 121: Hoare triple {88905#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {88905#true} is VALID [2018-11-23 12:16:22,119 INFO L273 TraceCheckUtils]: 122: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,119 INFO L273 TraceCheckUtils]: 123: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,120 INFO L273 TraceCheckUtils]: 124: Hoare triple {88905#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {88905#true} is VALID [2018-11-23 12:16:22,120 INFO L273 TraceCheckUtils]: 125: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,120 INFO L273 TraceCheckUtils]: 126: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,120 INFO L273 TraceCheckUtils]: 127: Hoare triple {88905#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {88905#true} is VALID [2018-11-23 12:16:22,120 INFO L273 TraceCheckUtils]: 128: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,120 INFO L273 TraceCheckUtils]: 129: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,120 INFO L273 TraceCheckUtils]: 130: Hoare triple {88905#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {88905#true} is VALID [2018-11-23 12:16:22,120 INFO L273 TraceCheckUtils]: 131: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,121 INFO L273 TraceCheckUtils]: 132: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,121 INFO L273 TraceCheckUtils]: 133: Hoare triple {88905#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {88905#true} is VALID [2018-11-23 12:16:22,121 INFO L273 TraceCheckUtils]: 134: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,121 INFO L273 TraceCheckUtils]: 135: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,121 INFO L273 TraceCheckUtils]: 136: Hoare triple {88905#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {88905#true} is VALID [2018-11-23 12:16:22,121 INFO L273 TraceCheckUtils]: 137: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,121 INFO L273 TraceCheckUtils]: 138: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,122 INFO L273 TraceCheckUtils]: 139: Hoare triple {88905#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {88905#true} is VALID [2018-11-23 12:16:22,122 INFO L273 TraceCheckUtils]: 140: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,122 INFO L273 TraceCheckUtils]: 141: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,122 INFO L273 TraceCheckUtils]: 142: Hoare triple {88905#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {88905#true} is VALID [2018-11-23 12:16:22,122 INFO L273 TraceCheckUtils]: 143: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,122 INFO L273 TraceCheckUtils]: 144: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,122 INFO L273 TraceCheckUtils]: 145: Hoare triple {88905#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {88905#true} is VALID [2018-11-23 12:16:22,122 INFO L273 TraceCheckUtils]: 146: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,123 INFO L273 TraceCheckUtils]: 147: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,123 INFO L273 TraceCheckUtils]: 148: Hoare triple {88905#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {88905#true} is VALID [2018-11-23 12:16:22,123 INFO L273 TraceCheckUtils]: 149: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,123 INFO L273 TraceCheckUtils]: 150: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,123 INFO L273 TraceCheckUtils]: 151: Hoare triple {88905#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {88905#true} is VALID [2018-11-23 12:16:22,123 INFO L273 TraceCheckUtils]: 152: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,123 INFO L273 TraceCheckUtils]: 153: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,123 INFO L273 TraceCheckUtils]: 154: Hoare triple {88905#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {88905#true} is VALID [2018-11-23 12:16:22,124 INFO L273 TraceCheckUtils]: 155: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,124 INFO L273 TraceCheckUtils]: 156: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,124 INFO L273 TraceCheckUtils]: 157: Hoare triple {88905#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {88905#true} is VALID [2018-11-23 12:16:22,124 INFO L273 TraceCheckUtils]: 158: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,124 INFO L273 TraceCheckUtils]: 159: Hoare triple {88905#true} assume !(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,124 INFO L273 TraceCheckUtils]: 160: Hoare triple {88905#true} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {88905#true} is VALID [2018-11-23 12:16:22,124 INFO L273 TraceCheckUtils]: 161: Hoare triple {88905#true} assume true; {88905#true} is VALID [2018-11-23 12:16:22,125 INFO L268 TraceCheckUtils]: 162: Hoare quadruple {88905#true} {88905#true} #84#return; {88905#true} is VALID [2018-11-23 12:16:22,125 INFO L273 TraceCheckUtils]: 163: Hoare triple {88905#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {88905#true} is VALID [2018-11-23 12:16:22,125 INFO L256 TraceCheckUtils]: 164: Hoare triple {88905#true} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {88905#true} is VALID [2018-11-23 12:16:22,125 INFO L273 TraceCheckUtils]: 165: Hoare triple {88905#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {88905#true} is VALID [2018-11-23 12:16:22,125 INFO L273 TraceCheckUtils]: 166: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,125 INFO L273 TraceCheckUtils]: 167: Hoare triple {88905#true} assume !(~i~1 > 20); {88905#true} is VALID [2018-11-23 12:16:22,125 INFO L273 TraceCheckUtils]: 168: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,126 INFO L273 TraceCheckUtils]: 169: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,126 INFO L273 TraceCheckUtils]: 170: Hoare triple {88905#true} assume !(~i~1 > 20); {88905#true} is VALID [2018-11-23 12:16:22,126 INFO L273 TraceCheckUtils]: 171: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,126 INFO L273 TraceCheckUtils]: 172: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,126 INFO L273 TraceCheckUtils]: 173: Hoare triple {88905#true} assume !(~i~1 > 20); {88905#true} is VALID [2018-11-23 12:16:22,126 INFO L273 TraceCheckUtils]: 174: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,126 INFO L273 TraceCheckUtils]: 175: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,126 INFO L273 TraceCheckUtils]: 176: Hoare triple {88905#true} assume !(~i~1 > 20); {88905#true} is VALID [2018-11-23 12:16:22,127 INFO L273 TraceCheckUtils]: 177: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,127 INFO L273 TraceCheckUtils]: 178: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,127 INFO L273 TraceCheckUtils]: 179: Hoare triple {88905#true} assume !(~i~1 > 20); {88905#true} is VALID [2018-11-23 12:16:22,127 INFO L273 TraceCheckUtils]: 180: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,127 INFO L273 TraceCheckUtils]: 181: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,127 INFO L273 TraceCheckUtils]: 182: Hoare triple {88905#true} assume !(~i~1 > 20); {88905#true} is VALID [2018-11-23 12:16:22,127 INFO L273 TraceCheckUtils]: 183: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,127 INFO L273 TraceCheckUtils]: 184: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,127 INFO L273 TraceCheckUtils]: 185: Hoare triple {88905#true} assume !(~i~1 > 20); {88905#true} is VALID [2018-11-23 12:16:22,128 INFO L273 TraceCheckUtils]: 186: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,128 INFO L273 TraceCheckUtils]: 187: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,128 INFO L273 TraceCheckUtils]: 188: Hoare triple {88905#true} assume !(~i~1 > 20); {88905#true} is VALID [2018-11-23 12:16:22,128 INFO L273 TraceCheckUtils]: 189: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,128 INFO L273 TraceCheckUtils]: 190: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,128 INFO L273 TraceCheckUtils]: 191: Hoare triple {88905#true} assume !(~i~1 > 20); {88905#true} is VALID [2018-11-23 12:16:22,128 INFO L273 TraceCheckUtils]: 192: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,128 INFO L273 TraceCheckUtils]: 193: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,128 INFO L273 TraceCheckUtils]: 194: Hoare triple {88905#true} assume !(~i~1 > 20); {88905#true} is VALID [2018-11-23 12:16:22,128 INFO L273 TraceCheckUtils]: 195: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,129 INFO L273 TraceCheckUtils]: 196: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,129 INFO L273 TraceCheckUtils]: 197: Hoare triple {88905#true} assume !(~i~1 > 20); {88905#true} is VALID [2018-11-23 12:16:22,129 INFO L273 TraceCheckUtils]: 198: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,129 INFO L273 TraceCheckUtils]: 199: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,129 INFO L273 TraceCheckUtils]: 200: Hoare triple {88905#true} assume !(~i~1 > 20); {88905#true} is VALID [2018-11-23 12:16:22,129 INFO L273 TraceCheckUtils]: 201: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,129 INFO L273 TraceCheckUtils]: 202: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,129 INFO L273 TraceCheckUtils]: 203: Hoare triple {88905#true} assume !(~i~1 > 20); {88905#true} is VALID [2018-11-23 12:16:22,129 INFO L273 TraceCheckUtils]: 204: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,130 INFO L273 TraceCheckUtils]: 205: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,130 INFO L273 TraceCheckUtils]: 206: Hoare triple {88905#true} assume !(~i~1 > 20); {88905#true} is VALID [2018-11-23 12:16:22,130 INFO L273 TraceCheckUtils]: 207: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,130 INFO L273 TraceCheckUtils]: 208: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,130 INFO L273 TraceCheckUtils]: 209: Hoare triple {88905#true} assume !(~i~1 > 20); {88905#true} is VALID [2018-11-23 12:16:22,130 INFO L273 TraceCheckUtils]: 210: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,130 INFO L273 TraceCheckUtils]: 211: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,130 INFO L273 TraceCheckUtils]: 212: Hoare triple {88905#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {88905#true} is VALID [2018-11-23 12:16:22,130 INFO L273 TraceCheckUtils]: 213: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,130 INFO L273 TraceCheckUtils]: 214: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,131 INFO L273 TraceCheckUtils]: 215: Hoare triple {88905#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {88905#true} is VALID [2018-11-23 12:16:22,131 INFO L273 TraceCheckUtils]: 216: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,131 INFO L273 TraceCheckUtils]: 217: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,131 INFO L273 TraceCheckUtils]: 218: Hoare triple {88905#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {88905#true} is VALID [2018-11-23 12:16:22,131 INFO L273 TraceCheckUtils]: 219: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,131 INFO L273 TraceCheckUtils]: 220: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,131 INFO L273 TraceCheckUtils]: 221: Hoare triple {88905#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {88905#true} is VALID [2018-11-23 12:16:22,131 INFO L273 TraceCheckUtils]: 222: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,131 INFO L273 TraceCheckUtils]: 223: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,131 INFO L273 TraceCheckUtils]: 224: Hoare triple {88905#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {88905#true} is VALID [2018-11-23 12:16:22,132 INFO L273 TraceCheckUtils]: 225: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,132 INFO L273 TraceCheckUtils]: 226: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,132 INFO L273 TraceCheckUtils]: 227: Hoare triple {88905#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {88905#true} is VALID [2018-11-23 12:16:22,132 INFO L273 TraceCheckUtils]: 228: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,132 INFO L273 TraceCheckUtils]: 229: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,132 INFO L273 TraceCheckUtils]: 230: Hoare triple {88905#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {88905#true} is VALID [2018-11-23 12:16:22,132 INFO L273 TraceCheckUtils]: 231: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,132 INFO L273 TraceCheckUtils]: 232: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,132 INFO L273 TraceCheckUtils]: 233: Hoare triple {88905#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {88905#true} is VALID [2018-11-23 12:16:22,132 INFO L273 TraceCheckUtils]: 234: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,133 INFO L273 TraceCheckUtils]: 235: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,133 INFO L273 TraceCheckUtils]: 236: Hoare triple {88905#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {88905#true} is VALID [2018-11-23 12:16:22,133 INFO L273 TraceCheckUtils]: 237: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,133 INFO L273 TraceCheckUtils]: 238: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,133 INFO L273 TraceCheckUtils]: 239: Hoare triple {88905#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {88905#true} is VALID [2018-11-23 12:16:22,133 INFO L273 TraceCheckUtils]: 240: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,133 INFO L273 TraceCheckUtils]: 241: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,133 INFO L273 TraceCheckUtils]: 242: Hoare triple {88905#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {88905#true} is VALID [2018-11-23 12:16:22,133 INFO L273 TraceCheckUtils]: 243: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,134 INFO L273 TraceCheckUtils]: 244: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,134 INFO L273 TraceCheckUtils]: 245: Hoare triple {88905#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {88905#true} is VALID [2018-11-23 12:16:22,134 INFO L273 TraceCheckUtils]: 246: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,134 INFO L273 TraceCheckUtils]: 247: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,134 INFO L273 TraceCheckUtils]: 248: Hoare triple {88905#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {88905#true} is VALID [2018-11-23 12:16:22,134 INFO L273 TraceCheckUtils]: 249: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,134 INFO L273 TraceCheckUtils]: 250: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,134 INFO L273 TraceCheckUtils]: 251: Hoare triple {88905#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {88905#true} is VALID [2018-11-23 12:16:22,134 INFO L273 TraceCheckUtils]: 252: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,134 INFO L273 TraceCheckUtils]: 253: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,135 INFO L273 TraceCheckUtils]: 254: Hoare triple {88905#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {88905#true} is VALID [2018-11-23 12:16:22,135 INFO L273 TraceCheckUtils]: 255: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,135 INFO L273 TraceCheckUtils]: 256: Hoare triple {88905#true} assume !!(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,135 INFO L273 TraceCheckUtils]: 257: Hoare triple {88905#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {88905#true} is VALID [2018-11-23 12:16:22,135 INFO L273 TraceCheckUtils]: 258: Hoare triple {88905#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88905#true} is VALID [2018-11-23 12:16:22,135 INFO L273 TraceCheckUtils]: 259: Hoare triple {88905#true} assume !(~i~1 < 40); {88905#true} is VALID [2018-11-23 12:16:22,135 INFO L273 TraceCheckUtils]: 260: Hoare triple {88905#true} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {88905#true} is VALID [2018-11-23 12:16:22,135 INFO L273 TraceCheckUtils]: 261: Hoare triple {88905#true} assume true; {88905#true} is VALID [2018-11-23 12:16:22,135 INFO L268 TraceCheckUtils]: 262: Hoare quadruple {88905#true} {88905#true} #86#return; {88905#true} is VALID [2018-11-23 12:16:22,136 INFO L273 TraceCheckUtils]: 263: Hoare triple {88905#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {89699#(<= main_~i~2 0)} is VALID [2018-11-23 12:16:22,136 INFO L273 TraceCheckUtils]: 264: Hoare triple {89699#(<= main_~i~2 0)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {89699#(<= main_~i~2 0)} is VALID [2018-11-23 12:16:22,138 INFO L273 TraceCheckUtils]: 265: Hoare triple {89699#(<= main_~i~2 0)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {89706#(<= main_~i~2 1)} is VALID [2018-11-23 12:16:22,140 INFO L273 TraceCheckUtils]: 266: Hoare triple {89706#(<= main_~i~2 1)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {89706#(<= main_~i~2 1)} is VALID [2018-11-23 12:16:22,140 INFO L273 TraceCheckUtils]: 267: Hoare triple {89706#(<= main_~i~2 1)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {89713#(<= main_~i~2 2)} is VALID [2018-11-23 12:16:22,142 INFO L273 TraceCheckUtils]: 268: Hoare triple {89713#(<= main_~i~2 2)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {89713#(<= main_~i~2 2)} is VALID [2018-11-23 12:16:22,145 INFO L273 TraceCheckUtils]: 269: Hoare triple {89713#(<= main_~i~2 2)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {89720#(<= main_~i~2 3)} is VALID [2018-11-23 12:16:22,145 INFO L273 TraceCheckUtils]: 270: Hoare triple {89720#(<= main_~i~2 3)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {89720#(<= main_~i~2 3)} is VALID [2018-11-23 12:16:22,147 INFO L273 TraceCheckUtils]: 271: Hoare triple {89720#(<= main_~i~2 3)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {89727#(<= main_~i~2 4)} is VALID [2018-11-23 12:16:22,149 INFO L273 TraceCheckUtils]: 272: Hoare triple {89727#(<= main_~i~2 4)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {89727#(<= main_~i~2 4)} is VALID [2018-11-23 12:16:22,149 INFO L273 TraceCheckUtils]: 273: Hoare triple {89727#(<= main_~i~2 4)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {89734#(<= main_~i~2 5)} is VALID [2018-11-23 12:16:22,151 INFO L273 TraceCheckUtils]: 274: Hoare triple {89734#(<= main_~i~2 5)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {89734#(<= main_~i~2 5)} is VALID [2018-11-23 12:16:22,151 INFO L273 TraceCheckUtils]: 275: Hoare triple {89734#(<= main_~i~2 5)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {89741#(<= main_~i~2 6)} is VALID [2018-11-23 12:16:22,153 INFO L273 TraceCheckUtils]: 276: Hoare triple {89741#(<= main_~i~2 6)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {89741#(<= main_~i~2 6)} is VALID [2018-11-23 12:16:22,153 INFO L273 TraceCheckUtils]: 277: Hoare triple {89741#(<= main_~i~2 6)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {89748#(<= main_~i~2 7)} is VALID [2018-11-23 12:16:22,155 INFO L273 TraceCheckUtils]: 278: Hoare triple {89748#(<= main_~i~2 7)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {89748#(<= main_~i~2 7)} is VALID [2018-11-23 12:16:22,155 INFO L273 TraceCheckUtils]: 279: Hoare triple {89748#(<= main_~i~2 7)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {89755#(<= main_~i~2 8)} is VALID [2018-11-23 12:16:22,157 INFO L273 TraceCheckUtils]: 280: Hoare triple {89755#(<= main_~i~2 8)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {89755#(<= main_~i~2 8)} is VALID [2018-11-23 12:16:22,157 INFO L273 TraceCheckUtils]: 281: Hoare triple {89755#(<= main_~i~2 8)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {89762#(<= main_~i~2 9)} is VALID [2018-11-23 12:16:22,157 INFO L273 TraceCheckUtils]: 282: Hoare triple {89762#(<= main_~i~2 9)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {89762#(<= main_~i~2 9)} is VALID [2018-11-23 12:16:22,159 INFO L273 TraceCheckUtils]: 283: Hoare triple {89762#(<= main_~i~2 9)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {89769#(<= main_~i~2 10)} is VALID [2018-11-23 12:16:22,159 INFO L273 TraceCheckUtils]: 284: Hoare triple {89769#(<= main_~i~2 10)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {89769#(<= main_~i~2 10)} is VALID [2018-11-23 12:16:22,161 INFO L273 TraceCheckUtils]: 285: Hoare triple {89769#(<= main_~i~2 10)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {89776#(<= main_~i~2 11)} is VALID [2018-11-23 12:16:22,161 INFO L273 TraceCheckUtils]: 286: Hoare triple {89776#(<= main_~i~2 11)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {89776#(<= main_~i~2 11)} is VALID [2018-11-23 12:16:22,163 INFO L273 TraceCheckUtils]: 287: Hoare triple {89776#(<= main_~i~2 11)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {89783#(<= main_~i~2 12)} is VALID [2018-11-23 12:16:22,163 INFO L273 TraceCheckUtils]: 288: Hoare triple {89783#(<= main_~i~2 12)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {89783#(<= main_~i~2 12)} is VALID [2018-11-23 12:16:22,165 INFO L273 TraceCheckUtils]: 289: Hoare triple {89783#(<= main_~i~2 12)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {89790#(<= main_~i~2 13)} is VALID [2018-11-23 12:16:22,165 INFO L273 TraceCheckUtils]: 290: Hoare triple {89790#(<= main_~i~2 13)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {89790#(<= main_~i~2 13)} is VALID [2018-11-23 12:16:22,167 INFO L273 TraceCheckUtils]: 291: Hoare triple {89790#(<= main_~i~2 13)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {89797#(<= main_~i~2 14)} is VALID [2018-11-23 12:16:22,167 INFO L273 TraceCheckUtils]: 292: Hoare triple {89797#(<= main_~i~2 14)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {89797#(<= main_~i~2 14)} is VALID [2018-11-23 12:16:22,169 INFO L273 TraceCheckUtils]: 293: Hoare triple {89797#(<= main_~i~2 14)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {89804#(<= main_~i~2 15)} is VALID [2018-11-23 12:16:22,169 INFO L273 TraceCheckUtils]: 294: Hoare triple {89804#(<= main_~i~2 15)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {89804#(<= main_~i~2 15)} is VALID [2018-11-23 12:16:22,171 INFO L273 TraceCheckUtils]: 295: Hoare triple {89804#(<= main_~i~2 15)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {89811#(<= main_~i~2 16)} is VALID [2018-11-23 12:16:22,171 INFO L273 TraceCheckUtils]: 296: Hoare triple {89811#(<= main_~i~2 16)} assume !(~i~2 < 39); {88906#false} is VALID [2018-11-23 12:16:22,171 INFO L273 TraceCheckUtils]: 297: Hoare triple {88906#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {88906#false} is VALID [2018-11-23 12:16:22,171 INFO L256 TraceCheckUtils]: 298: Hoare triple {88906#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {88906#false} is VALID [2018-11-23 12:16:22,171 INFO L273 TraceCheckUtils]: 299: Hoare triple {88906#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {88906#false} is VALID [2018-11-23 12:16:22,171 INFO L273 TraceCheckUtils]: 300: Hoare triple {88906#false} assume !!(~i~1 < 40); {88906#false} is VALID [2018-11-23 12:16:22,172 INFO L273 TraceCheckUtils]: 301: Hoare triple {88906#false} assume !(~i~1 > 20); {88906#false} is VALID [2018-11-23 12:16:22,172 INFO L273 TraceCheckUtils]: 302: Hoare triple {88906#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88906#false} is VALID [2018-11-23 12:16:22,172 INFO L273 TraceCheckUtils]: 303: Hoare triple {88906#false} assume !!(~i~1 < 40); {88906#false} is VALID [2018-11-23 12:16:22,172 INFO L273 TraceCheckUtils]: 304: Hoare triple {88906#false} assume !(~i~1 > 20); {88906#false} is VALID [2018-11-23 12:16:22,172 INFO L273 TraceCheckUtils]: 305: Hoare triple {88906#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88906#false} is VALID [2018-11-23 12:16:22,172 INFO L273 TraceCheckUtils]: 306: Hoare triple {88906#false} assume !!(~i~1 < 40); {88906#false} is VALID [2018-11-23 12:16:22,172 INFO L273 TraceCheckUtils]: 307: Hoare triple {88906#false} assume !(~i~1 > 20); {88906#false} is VALID [2018-11-23 12:16:22,172 INFO L273 TraceCheckUtils]: 308: Hoare triple {88906#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88906#false} is VALID [2018-11-23 12:16:22,172 INFO L273 TraceCheckUtils]: 309: Hoare triple {88906#false} assume !!(~i~1 < 40); {88906#false} is VALID [2018-11-23 12:16:22,173 INFO L273 TraceCheckUtils]: 310: Hoare triple {88906#false} assume !(~i~1 > 20); {88906#false} is VALID [2018-11-23 12:16:22,173 INFO L273 TraceCheckUtils]: 311: Hoare triple {88906#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88906#false} is VALID [2018-11-23 12:16:22,173 INFO L273 TraceCheckUtils]: 312: Hoare triple {88906#false} assume !!(~i~1 < 40); {88906#false} is VALID [2018-11-23 12:16:22,173 INFO L273 TraceCheckUtils]: 313: Hoare triple {88906#false} assume !(~i~1 > 20); {88906#false} is VALID [2018-11-23 12:16:22,173 INFO L273 TraceCheckUtils]: 314: Hoare triple {88906#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88906#false} is VALID [2018-11-23 12:16:22,173 INFO L273 TraceCheckUtils]: 315: Hoare triple {88906#false} assume !!(~i~1 < 40); {88906#false} is VALID [2018-11-23 12:16:22,173 INFO L273 TraceCheckUtils]: 316: Hoare triple {88906#false} assume !(~i~1 > 20); {88906#false} is VALID [2018-11-23 12:16:22,173 INFO L273 TraceCheckUtils]: 317: Hoare triple {88906#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88906#false} is VALID [2018-11-23 12:16:22,173 INFO L273 TraceCheckUtils]: 318: Hoare triple {88906#false} assume !!(~i~1 < 40); {88906#false} is VALID [2018-11-23 12:16:22,173 INFO L273 TraceCheckUtils]: 319: Hoare triple {88906#false} assume !(~i~1 > 20); {88906#false} is VALID [2018-11-23 12:16:22,174 INFO L273 TraceCheckUtils]: 320: Hoare triple {88906#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88906#false} is VALID [2018-11-23 12:16:22,174 INFO L273 TraceCheckUtils]: 321: Hoare triple {88906#false} assume !!(~i~1 < 40); {88906#false} is VALID [2018-11-23 12:16:22,174 INFO L273 TraceCheckUtils]: 322: Hoare triple {88906#false} assume !(~i~1 > 20); {88906#false} is VALID [2018-11-23 12:16:22,174 INFO L273 TraceCheckUtils]: 323: Hoare triple {88906#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88906#false} is VALID [2018-11-23 12:16:22,174 INFO L273 TraceCheckUtils]: 324: Hoare triple {88906#false} assume !!(~i~1 < 40); {88906#false} is VALID [2018-11-23 12:16:22,174 INFO L273 TraceCheckUtils]: 325: Hoare triple {88906#false} assume !(~i~1 > 20); {88906#false} is VALID [2018-11-23 12:16:22,174 INFO L273 TraceCheckUtils]: 326: Hoare triple {88906#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88906#false} is VALID [2018-11-23 12:16:22,174 INFO L273 TraceCheckUtils]: 327: Hoare triple {88906#false} assume !!(~i~1 < 40); {88906#false} is VALID [2018-11-23 12:16:22,174 INFO L273 TraceCheckUtils]: 328: Hoare triple {88906#false} assume !(~i~1 > 20); {88906#false} is VALID [2018-11-23 12:16:22,174 INFO L273 TraceCheckUtils]: 329: Hoare triple {88906#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88906#false} is VALID [2018-11-23 12:16:22,175 INFO L273 TraceCheckUtils]: 330: Hoare triple {88906#false} assume !!(~i~1 < 40); {88906#false} is VALID [2018-11-23 12:16:22,175 INFO L273 TraceCheckUtils]: 331: Hoare triple {88906#false} assume !(~i~1 > 20); {88906#false} is VALID [2018-11-23 12:16:22,175 INFO L273 TraceCheckUtils]: 332: Hoare triple {88906#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88906#false} is VALID [2018-11-23 12:16:22,175 INFO L273 TraceCheckUtils]: 333: Hoare triple {88906#false} assume !!(~i~1 < 40); {88906#false} is VALID [2018-11-23 12:16:22,175 INFO L273 TraceCheckUtils]: 334: Hoare triple {88906#false} assume !(~i~1 > 20); {88906#false} is VALID [2018-11-23 12:16:22,175 INFO L273 TraceCheckUtils]: 335: Hoare triple {88906#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88906#false} is VALID [2018-11-23 12:16:22,175 INFO L273 TraceCheckUtils]: 336: Hoare triple {88906#false} assume !!(~i~1 < 40); {88906#false} is VALID [2018-11-23 12:16:22,175 INFO L273 TraceCheckUtils]: 337: Hoare triple {88906#false} assume !(~i~1 > 20); {88906#false} is VALID [2018-11-23 12:16:22,175 INFO L273 TraceCheckUtils]: 338: Hoare triple {88906#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88906#false} is VALID [2018-11-23 12:16:22,176 INFO L273 TraceCheckUtils]: 339: Hoare triple {88906#false} assume !!(~i~1 < 40); {88906#false} is VALID [2018-11-23 12:16:22,176 INFO L273 TraceCheckUtils]: 340: Hoare triple {88906#false} assume !(~i~1 > 20); {88906#false} is VALID [2018-11-23 12:16:22,176 INFO L273 TraceCheckUtils]: 341: Hoare triple {88906#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88906#false} is VALID [2018-11-23 12:16:22,176 INFO L273 TraceCheckUtils]: 342: Hoare triple {88906#false} assume !!(~i~1 < 40); {88906#false} is VALID [2018-11-23 12:16:22,176 INFO L273 TraceCheckUtils]: 343: Hoare triple {88906#false} assume !(~i~1 > 20); {88906#false} is VALID [2018-11-23 12:16:22,176 INFO L273 TraceCheckUtils]: 344: Hoare triple {88906#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88906#false} is VALID [2018-11-23 12:16:22,176 INFO L273 TraceCheckUtils]: 345: Hoare triple {88906#false} assume !!(~i~1 < 40); {88906#false} is VALID [2018-11-23 12:16:22,176 INFO L273 TraceCheckUtils]: 346: Hoare triple {88906#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {88906#false} is VALID [2018-11-23 12:16:22,176 INFO L273 TraceCheckUtils]: 347: Hoare triple {88906#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88906#false} is VALID [2018-11-23 12:16:22,176 INFO L273 TraceCheckUtils]: 348: Hoare triple {88906#false} assume !!(~i~1 < 40); {88906#false} is VALID [2018-11-23 12:16:22,177 INFO L273 TraceCheckUtils]: 349: Hoare triple {88906#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {88906#false} is VALID [2018-11-23 12:16:22,177 INFO L273 TraceCheckUtils]: 350: Hoare triple {88906#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88906#false} is VALID [2018-11-23 12:16:22,177 INFO L273 TraceCheckUtils]: 351: Hoare triple {88906#false} assume !!(~i~1 < 40); {88906#false} is VALID [2018-11-23 12:16:22,177 INFO L273 TraceCheckUtils]: 352: Hoare triple {88906#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {88906#false} is VALID [2018-11-23 12:16:22,177 INFO L273 TraceCheckUtils]: 353: Hoare triple {88906#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88906#false} is VALID [2018-11-23 12:16:22,177 INFO L273 TraceCheckUtils]: 354: Hoare triple {88906#false} assume !!(~i~1 < 40); {88906#false} is VALID [2018-11-23 12:16:22,177 INFO L273 TraceCheckUtils]: 355: Hoare triple {88906#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {88906#false} is VALID [2018-11-23 12:16:22,177 INFO L273 TraceCheckUtils]: 356: Hoare triple {88906#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88906#false} is VALID [2018-11-23 12:16:22,177 INFO L273 TraceCheckUtils]: 357: Hoare triple {88906#false} assume !!(~i~1 < 40); {88906#false} is VALID [2018-11-23 12:16:22,177 INFO L273 TraceCheckUtils]: 358: Hoare triple {88906#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {88906#false} is VALID [2018-11-23 12:16:22,178 INFO L273 TraceCheckUtils]: 359: Hoare triple {88906#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88906#false} is VALID [2018-11-23 12:16:22,178 INFO L273 TraceCheckUtils]: 360: Hoare triple {88906#false} assume !!(~i~1 < 40); {88906#false} is VALID [2018-11-23 12:16:22,178 INFO L273 TraceCheckUtils]: 361: Hoare triple {88906#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {88906#false} is VALID [2018-11-23 12:16:22,178 INFO L273 TraceCheckUtils]: 362: Hoare triple {88906#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88906#false} is VALID [2018-11-23 12:16:22,178 INFO L273 TraceCheckUtils]: 363: Hoare triple {88906#false} assume !!(~i~1 < 40); {88906#false} is VALID [2018-11-23 12:16:22,178 INFO L273 TraceCheckUtils]: 364: Hoare triple {88906#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {88906#false} is VALID [2018-11-23 12:16:22,178 INFO L273 TraceCheckUtils]: 365: Hoare triple {88906#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88906#false} is VALID [2018-11-23 12:16:22,178 INFO L273 TraceCheckUtils]: 366: Hoare triple {88906#false} assume !!(~i~1 < 40); {88906#false} is VALID [2018-11-23 12:16:22,178 INFO L273 TraceCheckUtils]: 367: Hoare triple {88906#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {88906#false} is VALID [2018-11-23 12:16:22,179 INFO L273 TraceCheckUtils]: 368: Hoare triple {88906#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88906#false} is VALID [2018-11-23 12:16:22,179 INFO L273 TraceCheckUtils]: 369: Hoare triple {88906#false} assume !!(~i~1 < 40); {88906#false} is VALID [2018-11-23 12:16:22,179 INFO L273 TraceCheckUtils]: 370: Hoare triple {88906#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {88906#false} is VALID [2018-11-23 12:16:22,179 INFO L273 TraceCheckUtils]: 371: Hoare triple {88906#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88906#false} is VALID [2018-11-23 12:16:22,179 INFO L273 TraceCheckUtils]: 372: Hoare triple {88906#false} assume !!(~i~1 < 40); {88906#false} is VALID [2018-11-23 12:16:22,179 INFO L273 TraceCheckUtils]: 373: Hoare triple {88906#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {88906#false} is VALID [2018-11-23 12:16:22,179 INFO L273 TraceCheckUtils]: 374: Hoare triple {88906#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88906#false} is VALID [2018-11-23 12:16:22,179 INFO L273 TraceCheckUtils]: 375: Hoare triple {88906#false} assume !!(~i~1 < 40); {88906#false} is VALID [2018-11-23 12:16:22,179 INFO L273 TraceCheckUtils]: 376: Hoare triple {88906#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {88906#false} is VALID [2018-11-23 12:16:22,179 INFO L273 TraceCheckUtils]: 377: Hoare triple {88906#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88906#false} is VALID [2018-11-23 12:16:22,180 INFO L273 TraceCheckUtils]: 378: Hoare triple {88906#false} assume !!(~i~1 < 40); {88906#false} is VALID [2018-11-23 12:16:22,180 INFO L273 TraceCheckUtils]: 379: Hoare triple {88906#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {88906#false} is VALID [2018-11-23 12:16:22,180 INFO L273 TraceCheckUtils]: 380: Hoare triple {88906#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88906#false} is VALID [2018-11-23 12:16:22,180 INFO L273 TraceCheckUtils]: 381: Hoare triple {88906#false} assume !!(~i~1 < 40); {88906#false} is VALID [2018-11-23 12:16:22,180 INFO L273 TraceCheckUtils]: 382: Hoare triple {88906#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {88906#false} is VALID [2018-11-23 12:16:22,180 INFO L273 TraceCheckUtils]: 383: Hoare triple {88906#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88906#false} is VALID [2018-11-23 12:16:22,180 INFO L273 TraceCheckUtils]: 384: Hoare triple {88906#false} assume !!(~i~1 < 40); {88906#false} is VALID [2018-11-23 12:16:22,180 INFO L273 TraceCheckUtils]: 385: Hoare triple {88906#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {88906#false} is VALID [2018-11-23 12:16:22,180 INFO L273 TraceCheckUtils]: 386: Hoare triple {88906#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88906#false} is VALID [2018-11-23 12:16:22,181 INFO L273 TraceCheckUtils]: 387: Hoare triple {88906#false} assume !!(~i~1 < 40); {88906#false} is VALID [2018-11-23 12:16:22,181 INFO L273 TraceCheckUtils]: 388: Hoare triple {88906#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {88906#false} is VALID [2018-11-23 12:16:22,181 INFO L273 TraceCheckUtils]: 389: Hoare triple {88906#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88906#false} is VALID [2018-11-23 12:16:22,181 INFO L273 TraceCheckUtils]: 390: Hoare triple {88906#false} assume !!(~i~1 < 40); {88906#false} is VALID [2018-11-23 12:16:22,181 INFO L273 TraceCheckUtils]: 391: Hoare triple {88906#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {88906#false} is VALID [2018-11-23 12:16:22,181 INFO L273 TraceCheckUtils]: 392: Hoare triple {88906#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {88906#false} is VALID [2018-11-23 12:16:22,181 INFO L273 TraceCheckUtils]: 393: Hoare triple {88906#false} assume !(~i~1 < 40); {88906#false} is VALID [2018-11-23 12:16:22,181 INFO L273 TraceCheckUtils]: 394: Hoare triple {88906#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {88906#false} is VALID [2018-11-23 12:16:22,181 INFO L273 TraceCheckUtils]: 395: Hoare triple {88906#false} assume true; {88906#false} is VALID [2018-11-23 12:16:22,181 INFO L268 TraceCheckUtils]: 396: Hoare quadruple {88906#false} {88906#false} #88#return; {88906#false} is VALID [2018-11-23 12:16:22,182 INFO L273 TraceCheckUtils]: 397: Hoare triple {88906#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {88906#false} is VALID [2018-11-23 12:16:22,182 INFO L273 TraceCheckUtils]: 398: Hoare triple {88906#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {88906#false} is VALID [2018-11-23 12:16:22,182 INFO L273 TraceCheckUtils]: 399: Hoare triple {88906#false} assume !false; {88906#false} is VALID [2018-11-23 12:16:22,236 INFO L134 CoverageAnalysis]: Checked inductivity of 14060 backedges. 5900 proven. 256 refuted. 0 times theorem prover too weak. 7904 trivial. 0 not checked. [2018-11-23 12:16:22,258 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:16:22,258 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [19] total 19 [2018-11-23 12:16:22,259 INFO L78 Accepts]: Start accepts. Automaton has 19 states. Word has length 400 [2018-11-23 12:16:22,259 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:16:22,259 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 19 states. [2018-11-23 12:16:22,353 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 75 edges. 75 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:16:22,353 INFO L459 AbstractCegarLoop]: Interpolant automaton has 19 states [2018-11-23 12:16:22,353 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2018-11-23 12:16:22,353 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=171, Invalid=171, Unknown=0, NotChecked=0, Total=342 [2018-11-23 12:16:22,353 INFO L87 Difference]: Start difference. First operand 205 states and 226 transitions. Second operand 19 states. [2018-11-23 12:16:22,871 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:22,871 INFO L93 Difference]: Finished difference Result 312 states and 351 transitions. [2018-11-23 12:16:22,871 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2018-11-23 12:16:22,871 INFO L78 Accepts]: Start accepts. Automaton has 19 states. Word has length 400 [2018-11-23 12:16:22,871 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:16:22,871 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 19 states. [2018-11-23 12:16:22,872 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 88 transitions. [2018-11-23 12:16:22,872 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 19 states. [2018-11-23 12:16:22,873 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 88 transitions. [2018-11-23 12:16:22,873 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 19 states and 88 transitions. [2018-11-23 12:16:22,954 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-23 12:16:22,958 INFO L225 Difference]: With dead ends: 312 [2018-11-23 12:16:22,959 INFO L226 Difference]: Without dead ends: 208 [2018-11-23 12:16:22,959 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 399 GetRequests, 382 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=171, Invalid=171, Unknown=0, NotChecked=0, Total=342 [2018-11-23 12:16:22,959 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 208 states. [2018-11-23 12:16:23,061 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 208 to 207. [2018-11-23 12:16:23,061 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:16:23,061 INFO L82 GeneralOperation]: Start isEquivalent. First operand 208 states. Second operand 207 states. [2018-11-23 12:16:23,061 INFO L74 IsIncluded]: Start isIncluded. First operand 208 states. Second operand 207 states. [2018-11-23 12:16:23,061 INFO L87 Difference]: Start difference. First operand 208 states. Second operand 207 states. [2018-11-23 12:16:23,066 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:23,066 INFO L93 Difference]: Finished difference Result 208 states and 229 transitions. [2018-11-23 12:16:23,066 INFO L276 IsEmpty]: Start isEmpty. Operand 208 states and 229 transitions. [2018-11-23 12:16:23,067 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:23,067 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:23,067 INFO L74 IsIncluded]: Start isIncluded. First operand 207 states. Second operand 208 states. [2018-11-23 12:16:23,067 INFO L87 Difference]: Start difference. First operand 207 states. Second operand 208 states. [2018-11-23 12:16:23,070 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:23,070 INFO L93 Difference]: Finished difference Result 208 states and 229 transitions. [2018-11-23 12:16:23,070 INFO L276 IsEmpty]: Start isEmpty. Operand 208 states and 229 transitions. [2018-11-23 12:16:23,071 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:23,071 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:23,071 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:16:23,071 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:16:23,071 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 207 states. [2018-11-23 12:16:23,074 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 207 states to 207 states and 228 transitions. [2018-11-23 12:16:23,074 INFO L78 Accepts]: Start accepts. Automaton has 207 states and 228 transitions. Word has length 400 [2018-11-23 12:16:23,074 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:16:23,074 INFO L480 AbstractCegarLoop]: Abstraction has 207 states and 228 transitions. [2018-11-23 12:16:23,074 INFO L481 AbstractCegarLoop]: Interpolant automaton has 19 states. [2018-11-23 12:16:23,074 INFO L276 IsEmpty]: Start isEmpty. Operand 207 states and 228 transitions. [2018-11-23 12:16:23,076 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 403 [2018-11-23 12:16:23,076 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:16:23,076 INFO L402 BasicCegarLoop]: trace histogram [93, 93, 48, 45, 26, 26, 17, 17, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:16:23,076 INFO L423 AbstractCegarLoop]: === Iteration 69 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:16:23,076 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:16:23,076 INFO L82 PathProgramCache]: Analyzing trace with hash 1738363770, now seen corresponding path program 64 times [2018-11-23 12:16:23,077 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:16:23,077 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:16:23,077 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:23,077 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:16:23,077 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:23,090 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:16:23,090 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:16:23,090 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 70 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 70 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:16:23,105 INFO L103 rtionOrderModulation]: Keeping assertion order TERMS_WITH_SMALL_CONSTANTS_FIRST [2018-11-23 12:16:23,256 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2018-11-23 12:16:23,256 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:16:23,320 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:23,323 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:16:24,176 INFO L256 TraceCheckUtils]: 0: Hoare triple {91266#true} call ULTIMATE.init(); {91266#true} is VALID [2018-11-23 12:16:24,176 INFO L273 TraceCheckUtils]: 1: Hoare triple {91266#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {91266#true} is VALID [2018-11-23 12:16:24,176 INFO L273 TraceCheckUtils]: 2: Hoare triple {91266#true} assume true; {91266#true} is VALID [2018-11-23 12:16:24,176 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {91266#true} {91266#true} #78#return; {91266#true} is VALID [2018-11-23 12:16:24,177 INFO L256 TraceCheckUtils]: 4: Hoare triple {91266#true} call #t~ret12 := main(); {91266#true} is VALID [2018-11-23 12:16:24,177 INFO L273 TraceCheckUtils]: 5: Hoare triple {91266#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {91266#true} is VALID [2018-11-23 12:16:24,177 INFO L256 TraceCheckUtils]: 6: Hoare triple {91266#true} call init_nondet(~#x~0.base, ~#x~0.offset); {91266#true} is VALID [2018-11-23 12:16:24,177 INFO L273 TraceCheckUtils]: 7: Hoare triple {91266#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {91266#true} is VALID [2018-11-23 12:16:24,177 INFO L273 TraceCheckUtils]: 8: Hoare triple {91266#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {91266#true} is VALID [2018-11-23 12:16:24,177 INFO L273 TraceCheckUtils]: 9: Hoare triple {91266#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {91266#true} is VALID [2018-11-23 12:16:24,178 INFO L273 TraceCheckUtils]: 10: Hoare triple {91266#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {91266#true} is VALID [2018-11-23 12:16:24,178 INFO L273 TraceCheckUtils]: 11: Hoare triple {91266#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {91266#true} is VALID [2018-11-23 12:16:24,178 INFO L273 TraceCheckUtils]: 12: Hoare triple {91266#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {91266#true} is VALID [2018-11-23 12:16:24,178 INFO L273 TraceCheckUtils]: 13: Hoare triple {91266#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {91266#true} is VALID [2018-11-23 12:16:24,178 INFO L273 TraceCheckUtils]: 14: Hoare triple {91266#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {91266#true} is VALID [2018-11-23 12:16:24,179 INFO L273 TraceCheckUtils]: 15: Hoare triple {91266#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {91266#true} is VALID [2018-11-23 12:16:24,179 INFO L273 TraceCheckUtils]: 16: Hoare triple {91266#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {91266#true} is VALID [2018-11-23 12:16:24,179 INFO L273 TraceCheckUtils]: 17: Hoare triple {91266#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {91266#true} is VALID [2018-11-23 12:16:24,179 INFO L273 TraceCheckUtils]: 18: Hoare triple {91266#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {91266#true} is VALID [2018-11-23 12:16:24,179 INFO L273 TraceCheckUtils]: 19: Hoare triple {91266#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {91266#true} is VALID [2018-11-23 12:16:24,179 INFO L273 TraceCheckUtils]: 20: Hoare triple {91266#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {91266#true} is VALID [2018-11-23 12:16:24,179 INFO L273 TraceCheckUtils]: 21: Hoare triple {91266#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {91266#true} is VALID [2018-11-23 12:16:24,179 INFO L273 TraceCheckUtils]: 22: Hoare triple {91266#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {91266#true} is VALID [2018-11-23 12:16:24,179 INFO L273 TraceCheckUtils]: 23: Hoare triple {91266#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {91266#true} is VALID [2018-11-23 12:16:24,179 INFO L273 TraceCheckUtils]: 24: Hoare triple {91266#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {91266#true} is VALID [2018-11-23 12:16:24,180 INFO L273 TraceCheckUtils]: 25: Hoare triple {91266#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {91266#true} is VALID [2018-11-23 12:16:24,180 INFO L273 TraceCheckUtils]: 26: Hoare triple {91266#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {91266#true} is VALID [2018-11-23 12:16:24,180 INFO L273 TraceCheckUtils]: 27: Hoare triple {91266#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {91266#true} is VALID [2018-11-23 12:16:24,180 INFO L273 TraceCheckUtils]: 28: Hoare triple {91266#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {91266#true} is VALID [2018-11-23 12:16:24,180 INFO L273 TraceCheckUtils]: 29: Hoare triple {91266#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {91266#true} is VALID [2018-11-23 12:16:24,180 INFO L273 TraceCheckUtils]: 30: Hoare triple {91266#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {91266#true} is VALID [2018-11-23 12:16:24,180 INFO L273 TraceCheckUtils]: 31: Hoare triple {91266#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {91266#true} is VALID [2018-11-23 12:16:24,180 INFO L273 TraceCheckUtils]: 32: Hoare triple {91266#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {91266#true} is VALID [2018-11-23 12:16:24,180 INFO L273 TraceCheckUtils]: 33: Hoare triple {91266#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {91266#true} is VALID [2018-11-23 12:16:24,180 INFO L273 TraceCheckUtils]: 34: Hoare triple {91266#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {91266#true} is VALID [2018-11-23 12:16:24,181 INFO L273 TraceCheckUtils]: 35: Hoare triple {91266#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {91266#true} is VALID [2018-11-23 12:16:24,181 INFO L273 TraceCheckUtils]: 36: Hoare triple {91266#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {91266#true} is VALID [2018-11-23 12:16:24,181 INFO L273 TraceCheckUtils]: 37: Hoare triple {91266#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {91266#true} is VALID [2018-11-23 12:16:24,181 INFO L273 TraceCheckUtils]: 38: Hoare triple {91266#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {91266#true} is VALID [2018-11-23 12:16:24,181 INFO L273 TraceCheckUtils]: 39: Hoare triple {91266#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {91266#true} is VALID [2018-11-23 12:16:24,181 INFO L273 TraceCheckUtils]: 40: Hoare triple {91266#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {91266#true} is VALID [2018-11-23 12:16:24,181 INFO L273 TraceCheckUtils]: 41: Hoare triple {91266#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {91266#true} is VALID [2018-11-23 12:16:24,181 INFO L273 TraceCheckUtils]: 42: Hoare triple {91266#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {91266#true} is VALID [2018-11-23 12:16:24,181 INFO L273 TraceCheckUtils]: 43: Hoare triple {91266#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {91266#true} is VALID [2018-11-23 12:16:24,181 INFO L273 TraceCheckUtils]: 44: Hoare triple {91266#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {91266#true} is VALID [2018-11-23 12:16:24,182 INFO L273 TraceCheckUtils]: 45: Hoare triple {91266#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {91266#true} is VALID [2018-11-23 12:16:24,182 INFO L273 TraceCheckUtils]: 46: Hoare triple {91266#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {91266#true} is VALID [2018-11-23 12:16:24,182 INFO L273 TraceCheckUtils]: 47: Hoare triple {91266#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {91266#true} is VALID [2018-11-23 12:16:24,182 INFO L273 TraceCheckUtils]: 48: Hoare triple {91266#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {91266#true} is VALID [2018-11-23 12:16:24,182 INFO L273 TraceCheckUtils]: 49: Hoare triple {91266#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {91266#true} is VALID [2018-11-23 12:16:24,182 INFO L273 TraceCheckUtils]: 50: Hoare triple {91266#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {91266#true} is VALID [2018-11-23 12:16:24,182 INFO L273 TraceCheckUtils]: 51: Hoare triple {91266#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {91266#true} is VALID [2018-11-23 12:16:24,182 INFO L273 TraceCheckUtils]: 52: Hoare triple {91266#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {91266#true} is VALID [2018-11-23 12:16:24,182 INFO L273 TraceCheckUtils]: 53: Hoare triple {91266#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {91266#true} is VALID [2018-11-23 12:16:24,183 INFO L273 TraceCheckUtils]: 54: Hoare triple {91266#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {91266#true} is VALID [2018-11-23 12:16:24,183 INFO L273 TraceCheckUtils]: 55: Hoare triple {91266#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {91266#true} is VALID [2018-11-23 12:16:24,183 INFO L273 TraceCheckUtils]: 56: Hoare triple {91266#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {91266#true} is VALID [2018-11-23 12:16:24,183 INFO L273 TraceCheckUtils]: 57: Hoare triple {91266#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {91266#true} is VALID [2018-11-23 12:16:24,183 INFO L273 TraceCheckUtils]: 58: Hoare triple {91266#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {91266#true} is VALID [2018-11-23 12:16:24,183 INFO L273 TraceCheckUtils]: 59: Hoare triple {91266#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {91266#true} is VALID [2018-11-23 12:16:24,183 INFO L273 TraceCheckUtils]: 60: Hoare triple {91266#true} assume !(~i~0 < 40); {91266#true} is VALID [2018-11-23 12:16:24,183 INFO L273 TraceCheckUtils]: 61: Hoare triple {91266#true} assume true; {91266#true} is VALID [2018-11-23 12:16:24,183 INFO L268 TraceCheckUtils]: 62: Hoare quadruple {91266#true} {91266#true} #82#return; {91266#true} is VALID [2018-11-23 12:16:24,183 INFO L273 TraceCheckUtils]: 63: Hoare triple {91266#true} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {91266#true} is VALID [2018-11-23 12:16:24,184 INFO L256 TraceCheckUtils]: 64: Hoare triple {91266#true} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {91266#true} is VALID [2018-11-23 12:16:24,184 INFO L273 TraceCheckUtils]: 65: Hoare triple {91266#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {91266#true} is VALID [2018-11-23 12:16:24,184 INFO L273 TraceCheckUtils]: 66: Hoare triple {91266#true} assume !!(~i~1 < 40); {91266#true} is VALID [2018-11-23 12:16:24,184 INFO L273 TraceCheckUtils]: 67: Hoare triple {91266#true} assume !(~i~1 > 20); {91266#true} is VALID [2018-11-23 12:16:24,184 INFO L273 TraceCheckUtils]: 68: Hoare triple {91266#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91266#true} is VALID [2018-11-23 12:16:24,184 INFO L273 TraceCheckUtils]: 69: Hoare triple {91266#true} assume !!(~i~1 < 40); {91266#true} is VALID [2018-11-23 12:16:24,184 INFO L273 TraceCheckUtils]: 70: Hoare triple {91266#true} assume !(~i~1 > 20); {91266#true} is VALID [2018-11-23 12:16:24,184 INFO L273 TraceCheckUtils]: 71: Hoare triple {91266#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91266#true} is VALID [2018-11-23 12:16:24,184 INFO L273 TraceCheckUtils]: 72: Hoare triple {91266#true} assume !!(~i~1 < 40); {91266#true} is VALID [2018-11-23 12:16:24,184 INFO L273 TraceCheckUtils]: 73: Hoare triple {91266#true} assume !(~i~1 > 20); {91266#true} is VALID [2018-11-23 12:16:24,185 INFO L273 TraceCheckUtils]: 74: Hoare triple {91266#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91266#true} is VALID [2018-11-23 12:16:24,185 INFO L273 TraceCheckUtils]: 75: Hoare triple {91266#true} assume !!(~i~1 < 40); {91266#true} is VALID [2018-11-23 12:16:24,185 INFO L273 TraceCheckUtils]: 76: Hoare triple {91266#true} assume !(~i~1 > 20); {91266#true} is VALID [2018-11-23 12:16:24,185 INFO L273 TraceCheckUtils]: 77: Hoare triple {91266#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91266#true} is VALID [2018-11-23 12:16:24,185 INFO L273 TraceCheckUtils]: 78: Hoare triple {91266#true} assume !!(~i~1 < 40); {91266#true} is VALID [2018-11-23 12:16:24,185 INFO L273 TraceCheckUtils]: 79: Hoare triple {91266#true} assume !(~i~1 > 20); {91266#true} is VALID [2018-11-23 12:16:24,185 INFO L273 TraceCheckUtils]: 80: Hoare triple {91266#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91266#true} is VALID [2018-11-23 12:16:24,185 INFO L273 TraceCheckUtils]: 81: Hoare triple {91266#true} assume !!(~i~1 < 40); {91266#true} is VALID [2018-11-23 12:16:24,185 INFO L273 TraceCheckUtils]: 82: Hoare triple {91266#true} assume !(~i~1 > 20); {91266#true} is VALID [2018-11-23 12:16:24,185 INFO L273 TraceCheckUtils]: 83: Hoare triple {91266#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91266#true} is VALID [2018-11-23 12:16:24,186 INFO L273 TraceCheckUtils]: 84: Hoare triple {91266#true} assume !!(~i~1 < 40); {91266#true} is VALID [2018-11-23 12:16:24,186 INFO L273 TraceCheckUtils]: 85: Hoare triple {91266#true} assume !(~i~1 > 20); {91266#true} is VALID [2018-11-23 12:16:24,186 INFO L273 TraceCheckUtils]: 86: Hoare triple {91266#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91266#true} is VALID [2018-11-23 12:16:24,186 INFO L273 TraceCheckUtils]: 87: Hoare triple {91266#true} assume !!(~i~1 < 40); {91266#true} is VALID [2018-11-23 12:16:24,186 INFO L273 TraceCheckUtils]: 88: Hoare triple {91266#true} assume !(~i~1 > 20); {91266#true} is VALID [2018-11-23 12:16:24,186 INFO L273 TraceCheckUtils]: 89: Hoare triple {91266#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91266#true} is VALID [2018-11-23 12:16:24,186 INFO L273 TraceCheckUtils]: 90: Hoare triple {91266#true} assume !!(~i~1 < 40); {91266#true} is VALID [2018-11-23 12:16:24,186 INFO L273 TraceCheckUtils]: 91: Hoare triple {91266#true} assume !(~i~1 > 20); {91266#true} is VALID [2018-11-23 12:16:24,186 INFO L273 TraceCheckUtils]: 92: Hoare triple {91266#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91266#true} is VALID [2018-11-23 12:16:24,186 INFO L273 TraceCheckUtils]: 93: Hoare triple {91266#true} assume !!(~i~1 < 40); {91266#true} is VALID [2018-11-23 12:16:24,187 INFO L273 TraceCheckUtils]: 94: Hoare triple {91266#true} assume !(~i~1 > 20); {91266#true} is VALID [2018-11-23 12:16:24,187 INFO L273 TraceCheckUtils]: 95: Hoare triple {91266#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91266#true} is VALID [2018-11-23 12:16:24,187 INFO L273 TraceCheckUtils]: 96: Hoare triple {91266#true} assume !!(~i~1 < 40); {91266#true} is VALID [2018-11-23 12:16:24,187 INFO L273 TraceCheckUtils]: 97: Hoare triple {91266#true} assume !(~i~1 > 20); {91266#true} is VALID [2018-11-23 12:16:24,187 INFO L273 TraceCheckUtils]: 98: Hoare triple {91266#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91266#true} is VALID [2018-11-23 12:16:24,187 INFO L273 TraceCheckUtils]: 99: Hoare triple {91266#true} assume !!(~i~1 < 40); {91266#true} is VALID [2018-11-23 12:16:24,187 INFO L273 TraceCheckUtils]: 100: Hoare triple {91266#true} assume !(~i~1 > 20); {91266#true} is VALID [2018-11-23 12:16:24,187 INFO L273 TraceCheckUtils]: 101: Hoare triple {91266#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91266#true} is VALID [2018-11-23 12:16:24,187 INFO L273 TraceCheckUtils]: 102: Hoare triple {91266#true} assume !!(~i~1 < 40); {91266#true} is VALID [2018-11-23 12:16:24,187 INFO L273 TraceCheckUtils]: 103: Hoare triple {91266#true} assume !(~i~1 > 20); {91266#true} is VALID [2018-11-23 12:16:24,188 INFO L273 TraceCheckUtils]: 104: Hoare triple {91266#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91266#true} is VALID [2018-11-23 12:16:24,188 INFO L273 TraceCheckUtils]: 105: Hoare triple {91266#true} assume !!(~i~1 < 40); {91266#true} is VALID [2018-11-23 12:16:24,188 INFO L273 TraceCheckUtils]: 106: Hoare triple {91266#true} assume !(~i~1 > 20); {91266#true} is VALID [2018-11-23 12:16:24,188 INFO L273 TraceCheckUtils]: 107: Hoare triple {91266#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91266#true} is VALID [2018-11-23 12:16:24,188 INFO L273 TraceCheckUtils]: 108: Hoare triple {91266#true} assume !!(~i~1 < 40); {91266#true} is VALID [2018-11-23 12:16:24,188 INFO L273 TraceCheckUtils]: 109: Hoare triple {91266#true} assume !(~i~1 > 20); {91266#true} is VALID [2018-11-23 12:16:24,188 INFO L273 TraceCheckUtils]: 110: Hoare triple {91266#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91266#true} is VALID [2018-11-23 12:16:24,188 INFO L273 TraceCheckUtils]: 111: Hoare triple {91266#true} assume !!(~i~1 < 40); {91266#true} is VALID [2018-11-23 12:16:24,188 INFO L273 TraceCheckUtils]: 112: Hoare triple {91266#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {91266#true} is VALID [2018-11-23 12:16:24,188 INFO L273 TraceCheckUtils]: 113: Hoare triple {91266#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91266#true} is VALID [2018-11-23 12:16:24,189 INFO L273 TraceCheckUtils]: 114: Hoare triple {91266#true} assume !!(~i~1 < 40); {91266#true} is VALID [2018-11-23 12:16:24,189 INFO L273 TraceCheckUtils]: 115: Hoare triple {91266#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {91266#true} is VALID [2018-11-23 12:16:24,189 INFO L273 TraceCheckUtils]: 116: Hoare triple {91266#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91266#true} is VALID [2018-11-23 12:16:24,189 INFO L273 TraceCheckUtils]: 117: Hoare triple {91266#true} assume !!(~i~1 < 40); {91266#true} is VALID [2018-11-23 12:16:24,189 INFO L273 TraceCheckUtils]: 118: Hoare triple {91266#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {91266#true} is VALID [2018-11-23 12:16:24,189 INFO L273 TraceCheckUtils]: 119: Hoare triple {91266#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91266#true} is VALID [2018-11-23 12:16:24,189 INFO L273 TraceCheckUtils]: 120: Hoare triple {91266#true} assume !!(~i~1 < 40); {91266#true} is VALID [2018-11-23 12:16:24,189 INFO L273 TraceCheckUtils]: 121: Hoare triple {91266#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {91266#true} is VALID [2018-11-23 12:16:24,189 INFO L273 TraceCheckUtils]: 122: Hoare triple {91266#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91266#true} is VALID [2018-11-23 12:16:24,189 INFO L273 TraceCheckUtils]: 123: Hoare triple {91266#true} assume !!(~i~1 < 40); {91266#true} is VALID [2018-11-23 12:16:24,190 INFO L273 TraceCheckUtils]: 124: Hoare triple {91266#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {91266#true} is VALID [2018-11-23 12:16:24,190 INFO L273 TraceCheckUtils]: 125: Hoare triple {91266#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91266#true} is VALID [2018-11-23 12:16:24,190 INFO L273 TraceCheckUtils]: 126: Hoare triple {91266#true} assume !!(~i~1 < 40); {91266#true} is VALID [2018-11-23 12:16:24,190 INFO L273 TraceCheckUtils]: 127: Hoare triple {91266#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {91266#true} is VALID [2018-11-23 12:16:24,190 INFO L273 TraceCheckUtils]: 128: Hoare triple {91266#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91266#true} is VALID [2018-11-23 12:16:24,190 INFO L273 TraceCheckUtils]: 129: Hoare triple {91266#true} assume !!(~i~1 < 40); {91266#true} is VALID [2018-11-23 12:16:24,190 INFO L273 TraceCheckUtils]: 130: Hoare triple {91266#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {91266#true} is VALID [2018-11-23 12:16:24,190 INFO L273 TraceCheckUtils]: 131: Hoare triple {91266#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91266#true} is VALID [2018-11-23 12:16:24,190 INFO L273 TraceCheckUtils]: 132: Hoare triple {91266#true} assume !!(~i~1 < 40); {91266#true} is VALID [2018-11-23 12:16:24,190 INFO L273 TraceCheckUtils]: 133: Hoare triple {91266#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {91266#true} is VALID [2018-11-23 12:16:24,191 INFO L273 TraceCheckUtils]: 134: Hoare triple {91266#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91266#true} is VALID [2018-11-23 12:16:24,191 INFO L273 TraceCheckUtils]: 135: Hoare triple {91266#true} assume !!(~i~1 < 40); {91266#true} is VALID [2018-11-23 12:16:24,191 INFO L273 TraceCheckUtils]: 136: Hoare triple {91266#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {91266#true} is VALID [2018-11-23 12:16:24,191 INFO L273 TraceCheckUtils]: 137: Hoare triple {91266#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91266#true} is VALID [2018-11-23 12:16:24,191 INFO L273 TraceCheckUtils]: 138: Hoare triple {91266#true} assume !!(~i~1 < 40); {91266#true} is VALID [2018-11-23 12:16:24,191 INFO L273 TraceCheckUtils]: 139: Hoare triple {91266#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {91266#true} is VALID [2018-11-23 12:16:24,191 INFO L273 TraceCheckUtils]: 140: Hoare triple {91266#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91266#true} is VALID [2018-11-23 12:16:24,191 INFO L273 TraceCheckUtils]: 141: Hoare triple {91266#true} assume !!(~i~1 < 40); {91266#true} is VALID [2018-11-23 12:16:24,191 INFO L273 TraceCheckUtils]: 142: Hoare triple {91266#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {91266#true} is VALID [2018-11-23 12:16:24,191 INFO L273 TraceCheckUtils]: 143: Hoare triple {91266#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91266#true} is VALID [2018-11-23 12:16:24,192 INFO L273 TraceCheckUtils]: 144: Hoare triple {91266#true} assume !!(~i~1 < 40); {91266#true} is VALID [2018-11-23 12:16:24,192 INFO L273 TraceCheckUtils]: 145: Hoare triple {91266#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {91266#true} is VALID [2018-11-23 12:16:24,192 INFO L273 TraceCheckUtils]: 146: Hoare triple {91266#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91266#true} is VALID [2018-11-23 12:16:24,192 INFO L273 TraceCheckUtils]: 147: Hoare triple {91266#true} assume !!(~i~1 < 40); {91266#true} is VALID [2018-11-23 12:16:24,192 INFO L273 TraceCheckUtils]: 148: Hoare triple {91266#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {91266#true} is VALID [2018-11-23 12:16:24,192 INFO L273 TraceCheckUtils]: 149: Hoare triple {91266#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91266#true} is VALID [2018-11-23 12:16:24,192 INFO L273 TraceCheckUtils]: 150: Hoare triple {91266#true} assume !!(~i~1 < 40); {91266#true} is VALID [2018-11-23 12:16:24,192 INFO L273 TraceCheckUtils]: 151: Hoare triple {91266#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {91266#true} is VALID [2018-11-23 12:16:24,192 INFO L273 TraceCheckUtils]: 152: Hoare triple {91266#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91266#true} is VALID [2018-11-23 12:16:24,192 INFO L273 TraceCheckUtils]: 153: Hoare triple {91266#true} assume !!(~i~1 < 40); {91266#true} is VALID [2018-11-23 12:16:24,193 INFO L273 TraceCheckUtils]: 154: Hoare triple {91266#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {91266#true} is VALID [2018-11-23 12:16:24,193 INFO L273 TraceCheckUtils]: 155: Hoare triple {91266#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91266#true} is VALID [2018-11-23 12:16:24,193 INFO L273 TraceCheckUtils]: 156: Hoare triple {91266#true} assume !!(~i~1 < 40); {91266#true} is VALID [2018-11-23 12:16:24,193 INFO L273 TraceCheckUtils]: 157: Hoare triple {91266#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {91266#true} is VALID [2018-11-23 12:16:24,193 INFO L273 TraceCheckUtils]: 158: Hoare triple {91266#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91266#true} is VALID [2018-11-23 12:16:24,193 INFO L273 TraceCheckUtils]: 159: Hoare triple {91266#true} assume !(~i~1 < 40); {91266#true} is VALID [2018-11-23 12:16:24,193 INFO L273 TraceCheckUtils]: 160: Hoare triple {91266#true} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {91266#true} is VALID [2018-11-23 12:16:24,193 INFO L273 TraceCheckUtils]: 161: Hoare triple {91266#true} assume true; {91266#true} is VALID [2018-11-23 12:16:24,193 INFO L268 TraceCheckUtils]: 162: Hoare quadruple {91266#true} {91266#true} #84#return; {91266#true} is VALID [2018-11-23 12:16:24,193 INFO L273 TraceCheckUtils]: 163: Hoare triple {91266#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {91266#true} is VALID [2018-11-23 12:16:24,194 INFO L256 TraceCheckUtils]: 164: Hoare triple {91266#true} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {91266#true} is VALID [2018-11-23 12:16:24,194 INFO L273 TraceCheckUtils]: 165: Hoare triple {91266#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {91766#(<= rangesum_~i~1 0)} is VALID [2018-11-23 12:16:24,194 INFO L273 TraceCheckUtils]: 166: Hoare triple {91766#(<= rangesum_~i~1 0)} assume !!(~i~1 < 40); {91766#(<= rangesum_~i~1 0)} is VALID [2018-11-23 12:16:24,195 INFO L273 TraceCheckUtils]: 167: Hoare triple {91766#(<= rangesum_~i~1 0)} assume !(~i~1 > 20); {91766#(<= rangesum_~i~1 0)} is VALID [2018-11-23 12:16:24,195 INFO L273 TraceCheckUtils]: 168: Hoare triple {91766#(<= rangesum_~i~1 0)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91776#(<= rangesum_~i~1 1)} is VALID [2018-11-23 12:16:24,195 INFO L273 TraceCheckUtils]: 169: Hoare triple {91776#(<= rangesum_~i~1 1)} assume !!(~i~1 < 40); {91776#(<= rangesum_~i~1 1)} is VALID [2018-11-23 12:16:24,196 INFO L273 TraceCheckUtils]: 170: Hoare triple {91776#(<= rangesum_~i~1 1)} assume !(~i~1 > 20); {91776#(<= rangesum_~i~1 1)} is VALID [2018-11-23 12:16:24,196 INFO L273 TraceCheckUtils]: 171: Hoare triple {91776#(<= rangesum_~i~1 1)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91786#(<= rangesum_~i~1 2)} is VALID [2018-11-23 12:16:24,196 INFO L273 TraceCheckUtils]: 172: Hoare triple {91786#(<= rangesum_~i~1 2)} assume !!(~i~1 < 40); {91786#(<= rangesum_~i~1 2)} is VALID [2018-11-23 12:16:24,197 INFO L273 TraceCheckUtils]: 173: Hoare triple {91786#(<= rangesum_~i~1 2)} assume !(~i~1 > 20); {91786#(<= rangesum_~i~1 2)} is VALID [2018-11-23 12:16:24,197 INFO L273 TraceCheckUtils]: 174: Hoare triple {91786#(<= rangesum_~i~1 2)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91796#(<= rangesum_~i~1 3)} is VALID [2018-11-23 12:16:24,198 INFO L273 TraceCheckUtils]: 175: Hoare triple {91796#(<= rangesum_~i~1 3)} assume !!(~i~1 < 40); {91796#(<= rangesum_~i~1 3)} is VALID [2018-11-23 12:16:24,198 INFO L273 TraceCheckUtils]: 176: Hoare triple {91796#(<= rangesum_~i~1 3)} assume !(~i~1 > 20); {91796#(<= rangesum_~i~1 3)} is VALID [2018-11-23 12:16:24,199 INFO L273 TraceCheckUtils]: 177: Hoare triple {91796#(<= rangesum_~i~1 3)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91806#(<= rangesum_~i~1 4)} is VALID [2018-11-23 12:16:24,199 INFO L273 TraceCheckUtils]: 178: Hoare triple {91806#(<= rangesum_~i~1 4)} assume !!(~i~1 < 40); {91806#(<= rangesum_~i~1 4)} is VALID [2018-11-23 12:16:24,200 INFO L273 TraceCheckUtils]: 179: Hoare triple {91806#(<= rangesum_~i~1 4)} assume !(~i~1 > 20); {91806#(<= rangesum_~i~1 4)} is VALID [2018-11-23 12:16:24,200 INFO L273 TraceCheckUtils]: 180: Hoare triple {91806#(<= rangesum_~i~1 4)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91816#(<= rangesum_~i~1 5)} is VALID [2018-11-23 12:16:24,201 INFO L273 TraceCheckUtils]: 181: Hoare triple {91816#(<= rangesum_~i~1 5)} assume !!(~i~1 < 40); {91816#(<= rangesum_~i~1 5)} is VALID [2018-11-23 12:16:24,201 INFO L273 TraceCheckUtils]: 182: Hoare triple {91816#(<= rangesum_~i~1 5)} assume !(~i~1 > 20); {91816#(<= rangesum_~i~1 5)} is VALID [2018-11-23 12:16:24,202 INFO L273 TraceCheckUtils]: 183: Hoare triple {91816#(<= rangesum_~i~1 5)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91826#(<= rangesum_~i~1 6)} is VALID [2018-11-23 12:16:24,203 INFO L273 TraceCheckUtils]: 184: Hoare triple {91826#(<= rangesum_~i~1 6)} assume !!(~i~1 < 40); {91826#(<= rangesum_~i~1 6)} is VALID [2018-11-23 12:16:24,203 INFO L273 TraceCheckUtils]: 185: Hoare triple {91826#(<= rangesum_~i~1 6)} assume !(~i~1 > 20); {91826#(<= rangesum_~i~1 6)} is VALID [2018-11-23 12:16:24,204 INFO L273 TraceCheckUtils]: 186: Hoare triple {91826#(<= rangesum_~i~1 6)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91836#(<= rangesum_~i~1 7)} is VALID [2018-11-23 12:16:24,204 INFO L273 TraceCheckUtils]: 187: Hoare triple {91836#(<= rangesum_~i~1 7)} assume !!(~i~1 < 40); {91836#(<= rangesum_~i~1 7)} is VALID [2018-11-23 12:16:24,205 INFO L273 TraceCheckUtils]: 188: Hoare triple {91836#(<= rangesum_~i~1 7)} assume !(~i~1 > 20); {91836#(<= rangesum_~i~1 7)} is VALID [2018-11-23 12:16:24,205 INFO L273 TraceCheckUtils]: 189: Hoare triple {91836#(<= rangesum_~i~1 7)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91846#(<= rangesum_~i~1 8)} is VALID [2018-11-23 12:16:24,206 INFO L273 TraceCheckUtils]: 190: Hoare triple {91846#(<= rangesum_~i~1 8)} assume !!(~i~1 < 40); {91846#(<= rangesum_~i~1 8)} is VALID [2018-11-23 12:16:24,206 INFO L273 TraceCheckUtils]: 191: Hoare triple {91846#(<= rangesum_~i~1 8)} assume !(~i~1 > 20); {91846#(<= rangesum_~i~1 8)} is VALID [2018-11-23 12:16:24,207 INFO L273 TraceCheckUtils]: 192: Hoare triple {91846#(<= rangesum_~i~1 8)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91856#(<= rangesum_~i~1 9)} is VALID [2018-11-23 12:16:24,208 INFO L273 TraceCheckUtils]: 193: Hoare triple {91856#(<= rangesum_~i~1 9)} assume !!(~i~1 < 40); {91856#(<= rangesum_~i~1 9)} is VALID [2018-11-23 12:16:24,208 INFO L273 TraceCheckUtils]: 194: Hoare triple {91856#(<= rangesum_~i~1 9)} assume !(~i~1 > 20); {91856#(<= rangesum_~i~1 9)} is VALID [2018-11-23 12:16:24,209 INFO L273 TraceCheckUtils]: 195: Hoare triple {91856#(<= rangesum_~i~1 9)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91866#(<= rangesum_~i~1 10)} is VALID [2018-11-23 12:16:24,209 INFO L273 TraceCheckUtils]: 196: Hoare triple {91866#(<= rangesum_~i~1 10)} assume !!(~i~1 < 40); {91866#(<= rangesum_~i~1 10)} is VALID [2018-11-23 12:16:24,210 INFO L273 TraceCheckUtils]: 197: Hoare triple {91866#(<= rangesum_~i~1 10)} assume !(~i~1 > 20); {91866#(<= rangesum_~i~1 10)} is VALID [2018-11-23 12:16:24,211 INFO L273 TraceCheckUtils]: 198: Hoare triple {91866#(<= rangesum_~i~1 10)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91876#(<= rangesum_~i~1 11)} is VALID [2018-11-23 12:16:24,211 INFO L273 TraceCheckUtils]: 199: Hoare triple {91876#(<= rangesum_~i~1 11)} assume !!(~i~1 < 40); {91876#(<= rangesum_~i~1 11)} is VALID [2018-11-23 12:16:24,212 INFO L273 TraceCheckUtils]: 200: Hoare triple {91876#(<= rangesum_~i~1 11)} assume !(~i~1 > 20); {91876#(<= rangesum_~i~1 11)} is VALID [2018-11-23 12:16:24,212 INFO L273 TraceCheckUtils]: 201: Hoare triple {91876#(<= rangesum_~i~1 11)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91886#(<= rangesum_~i~1 12)} is VALID [2018-11-23 12:16:24,213 INFO L273 TraceCheckUtils]: 202: Hoare triple {91886#(<= rangesum_~i~1 12)} assume !!(~i~1 < 40); {91886#(<= rangesum_~i~1 12)} is VALID [2018-11-23 12:16:24,213 INFO L273 TraceCheckUtils]: 203: Hoare triple {91886#(<= rangesum_~i~1 12)} assume !(~i~1 > 20); {91886#(<= rangesum_~i~1 12)} is VALID [2018-11-23 12:16:24,214 INFO L273 TraceCheckUtils]: 204: Hoare triple {91886#(<= rangesum_~i~1 12)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91896#(<= rangesum_~i~1 13)} is VALID [2018-11-23 12:16:24,215 INFO L273 TraceCheckUtils]: 205: Hoare triple {91896#(<= rangesum_~i~1 13)} assume !!(~i~1 < 40); {91896#(<= rangesum_~i~1 13)} is VALID [2018-11-23 12:16:24,215 INFO L273 TraceCheckUtils]: 206: Hoare triple {91896#(<= rangesum_~i~1 13)} assume !(~i~1 > 20); {91896#(<= rangesum_~i~1 13)} is VALID [2018-11-23 12:16:24,216 INFO L273 TraceCheckUtils]: 207: Hoare triple {91896#(<= rangesum_~i~1 13)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91906#(<= rangesum_~i~1 14)} is VALID [2018-11-23 12:16:24,216 INFO L273 TraceCheckUtils]: 208: Hoare triple {91906#(<= rangesum_~i~1 14)} assume !!(~i~1 < 40); {91906#(<= rangesum_~i~1 14)} is VALID [2018-11-23 12:16:24,217 INFO L273 TraceCheckUtils]: 209: Hoare triple {91906#(<= rangesum_~i~1 14)} assume !(~i~1 > 20); {91906#(<= rangesum_~i~1 14)} is VALID [2018-11-23 12:16:24,218 INFO L273 TraceCheckUtils]: 210: Hoare triple {91906#(<= rangesum_~i~1 14)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91916#(<= rangesum_~i~1 15)} is VALID [2018-11-23 12:16:24,218 INFO L273 TraceCheckUtils]: 211: Hoare triple {91916#(<= rangesum_~i~1 15)} assume !!(~i~1 < 40); {91916#(<= rangesum_~i~1 15)} is VALID [2018-11-23 12:16:24,219 INFO L273 TraceCheckUtils]: 212: Hoare triple {91916#(<= rangesum_~i~1 15)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {91916#(<= rangesum_~i~1 15)} is VALID [2018-11-23 12:16:24,219 INFO L273 TraceCheckUtils]: 213: Hoare triple {91916#(<= rangesum_~i~1 15)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91926#(<= rangesum_~i~1 16)} is VALID [2018-11-23 12:16:24,220 INFO L273 TraceCheckUtils]: 214: Hoare triple {91926#(<= rangesum_~i~1 16)} assume !!(~i~1 < 40); {91926#(<= rangesum_~i~1 16)} is VALID [2018-11-23 12:16:24,220 INFO L273 TraceCheckUtils]: 215: Hoare triple {91926#(<= rangesum_~i~1 16)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {91926#(<= rangesum_~i~1 16)} is VALID [2018-11-23 12:16:24,221 INFO L273 TraceCheckUtils]: 216: Hoare triple {91926#(<= rangesum_~i~1 16)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91936#(<= rangesum_~i~1 17)} is VALID [2018-11-23 12:16:24,221 INFO L273 TraceCheckUtils]: 217: Hoare triple {91936#(<= rangesum_~i~1 17)} assume !!(~i~1 < 40); {91936#(<= rangesum_~i~1 17)} is VALID [2018-11-23 12:16:24,222 INFO L273 TraceCheckUtils]: 218: Hoare triple {91936#(<= rangesum_~i~1 17)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {91936#(<= rangesum_~i~1 17)} is VALID [2018-11-23 12:16:24,223 INFO L273 TraceCheckUtils]: 219: Hoare triple {91936#(<= rangesum_~i~1 17)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91946#(<= rangesum_~i~1 18)} is VALID [2018-11-23 12:16:24,223 INFO L273 TraceCheckUtils]: 220: Hoare triple {91946#(<= rangesum_~i~1 18)} assume !!(~i~1 < 40); {91946#(<= rangesum_~i~1 18)} is VALID [2018-11-23 12:16:24,224 INFO L273 TraceCheckUtils]: 221: Hoare triple {91946#(<= rangesum_~i~1 18)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {91946#(<= rangesum_~i~1 18)} is VALID [2018-11-23 12:16:24,224 INFO L273 TraceCheckUtils]: 222: Hoare triple {91946#(<= rangesum_~i~1 18)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91956#(<= rangesum_~i~1 19)} is VALID [2018-11-23 12:16:24,225 INFO L273 TraceCheckUtils]: 223: Hoare triple {91956#(<= rangesum_~i~1 19)} assume !!(~i~1 < 40); {91956#(<= rangesum_~i~1 19)} is VALID [2018-11-23 12:16:24,225 INFO L273 TraceCheckUtils]: 224: Hoare triple {91956#(<= rangesum_~i~1 19)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {91956#(<= rangesum_~i~1 19)} is VALID [2018-11-23 12:16:24,226 INFO L273 TraceCheckUtils]: 225: Hoare triple {91956#(<= rangesum_~i~1 19)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91966#(<= rangesum_~i~1 20)} is VALID [2018-11-23 12:16:24,226 INFO L273 TraceCheckUtils]: 226: Hoare triple {91966#(<= rangesum_~i~1 20)} assume !!(~i~1 < 40); {91966#(<= rangesum_~i~1 20)} is VALID [2018-11-23 12:16:24,227 INFO L273 TraceCheckUtils]: 227: Hoare triple {91966#(<= rangesum_~i~1 20)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {91966#(<= rangesum_~i~1 20)} is VALID [2018-11-23 12:16:24,228 INFO L273 TraceCheckUtils]: 228: Hoare triple {91966#(<= rangesum_~i~1 20)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91976#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:16:24,228 INFO L273 TraceCheckUtils]: 229: Hoare triple {91976#(<= rangesum_~i~1 21)} assume !!(~i~1 < 40); {91976#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:16:24,229 INFO L273 TraceCheckUtils]: 230: Hoare triple {91976#(<= rangesum_~i~1 21)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {91976#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:16:24,229 INFO L273 TraceCheckUtils]: 231: Hoare triple {91976#(<= rangesum_~i~1 21)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91986#(<= rangesum_~i~1 22)} is VALID [2018-11-23 12:16:24,230 INFO L273 TraceCheckUtils]: 232: Hoare triple {91986#(<= rangesum_~i~1 22)} assume !!(~i~1 < 40); {91986#(<= rangesum_~i~1 22)} is VALID [2018-11-23 12:16:24,230 INFO L273 TraceCheckUtils]: 233: Hoare triple {91986#(<= rangesum_~i~1 22)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {91986#(<= rangesum_~i~1 22)} is VALID [2018-11-23 12:16:24,231 INFO L273 TraceCheckUtils]: 234: Hoare triple {91986#(<= rangesum_~i~1 22)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91996#(<= rangesum_~i~1 23)} is VALID [2018-11-23 12:16:24,232 INFO L273 TraceCheckUtils]: 235: Hoare triple {91996#(<= rangesum_~i~1 23)} assume !!(~i~1 < 40); {91996#(<= rangesum_~i~1 23)} is VALID [2018-11-23 12:16:24,232 INFO L273 TraceCheckUtils]: 236: Hoare triple {91996#(<= rangesum_~i~1 23)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {91996#(<= rangesum_~i~1 23)} is VALID [2018-11-23 12:16:24,233 INFO L273 TraceCheckUtils]: 237: Hoare triple {91996#(<= rangesum_~i~1 23)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {92006#(<= rangesum_~i~1 24)} is VALID [2018-11-23 12:16:24,233 INFO L273 TraceCheckUtils]: 238: Hoare triple {92006#(<= rangesum_~i~1 24)} assume !!(~i~1 < 40); {92006#(<= rangesum_~i~1 24)} is VALID [2018-11-23 12:16:24,234 INFO L273 TraceCheckUtils]: 239: Hoare triple {92006#(<= rangesum_~i~1 24)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {92006#(<= rangesum_~i~1 24)} is VALID [2018-11-23 12:16:24,235 INFO L273 TraceCheckUtils]: 240: Hoare triple {92006#(<= rangesum_~i~1 24)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {92016#(<= rangesum_~i~1 25)} is VALID [2018-11-23 12:16:24,235 INFO L273 TraceCheckUtils]: 241: Hoare triple {92016#(<= rangesum_~i~1 25)} assume !!(~i~1 < 40); {92016#(<= rangesum_~i~1 25)} is VALID [2018-11-23 12:16:24,236 INFO L273 TraceCheckUtils]: 242: Hoare triple {92016#(<= rangesum_~i~1 25)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {92016#(<= rangesum_~i~1 25)} is VALID [2018-11-23 12:16:24,236 INFO L273 TraceCheckUtils]: 243: Hoare triple {92016#(<= rangesum_~i~1 25)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {92026#(<= rangesum_~i~1 26)} is VALID [2018-11-23 12:16:24,237 INFO L273 TraceCheckUtils]: 244: Hoare triple {92026#(<= rangesum_~i~1 26)} assume !!(~i~1 < 40); {92026#(<= rangesum_~i~1 26)} is VALID [2018-11-23 12:16:24,237 INFO L273 TraceCheckUtils]: 245: Hoare triple {92026#(<= rangesum_~i~1 26)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {92026#(<= rangesum_~i~1 26)} is VALID [2018-11-23 12:16:24,238 INFO L273 TraceCheckUtils]: 246: Hoare triple {92026#(<= rangesum_~i~1 26)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {92036#(<= rangesum_~i~1 27)} is VALID [2018-11-23 12:16:24,239 INFO L273 TraceCheckUtils]: 247: Hoare triple {92036#(<= rangesum_~i~1 27)} assume !!(~i~1 < 40); {92036#(<= rangesum_~i~1 27)} is VALID [2018-11-23 12:16:24,239 INFO L273 TraceCheckUtils]: 248: Hoare triple {92036#(<= rangesum_~i~1 27)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {92036#(<= rangesum_~i~1 27)} is VALID [2018-11-23 12:16:24,240 INFO L273 TraceCheckUtils]: 249: Hoare triple {92036#(<= rangesum_~i~1 27)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {92046#(<= rangesum_~i~1 28)} is VALID [2018-11-23 12:16:24,240 INFO L273 TraceCheckUtils]: 250: Hoare triple {92046#(<= rangesum_~i~1 28)} assume !!(~i~1 < 40); {92046#(<= rangesum_~i~1 28)} is VALID [2018-11-23 12:16:24,241 INFO L273 TraceCheckUtils]: 251: Hoare triple {92046#(<= rangesum_~i~1 28)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {92046#(<= rangesum_~i~1 28)} is VALID [2018-11-23 12:16:24,241 INFO L273 TraceCheckUtils]: 252: Hoare triple {92046#(<= rangesum_~i~1 28)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {92056#(<= rangesum_~i~1 29)} is VALID [2018-11-23 12:16:24,242 INFO L273 TraceCheckUtils]: 253: Hoare triple {92056#(<= rangesum_~i~1 29)} assume !!(~i~1 < 40); {92056#(<= rangesum_~i~1 29)} is VALID [2018-11-23 12:16:24,242 INFO L273 TraceCheckUtils]: 254: Hoare triple {92056#(<= rangesum_~i~1 29)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {92056#(<= rangesum_~i~1 29)} is VALID [2018-11-23 12:16:24,243 INFO L273 TraceCheckUtils]: 255: Hoare triple {92056#(<= rangesum_~i~1 29)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {92066#(<= rangesum_~i~1 30)} is VALID [2018-11-23 12:16:24,244 INFO L273 TraceCheckUtils]: 256: Hoare triple {92066#(<= rangesum_~i~1 30)} assume !!(~i~1 < 40); {92066#(<= rangesum_~i~1 30)} is VALID [2018-11-23 12:16:24,244 INFO L273 TraceCheckUtils]: 257: Hoare triple {92066#(<= rangesum_~i~1 30)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {92066#(<= rangesum_~i~1 30)} is VALID [2018-11-23 12:16:24,245 INFO L273 TraceCheckUtils]: 258: Hoare triple {92066#(<= rangesum_~i~1 30)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {92076#(<= rangesum_~i~1 31)} is VALID [2018-11-23 12:16:24,246 INFO L273 TraceCheckUtils]: 259: Hoare triple {92076#(<= rangesum_~i~1 31)} assume !(~i~1 < 40); {91267#false} is VALID [2018-11-23 12:16:24,246 INFO L273 TraceCheckUtils]: 260: Hoare triple {91267#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {91267#false} is VALID [2018-11-23 12:16:24,246 INFO L273 TraceCheckUtils]: 261: Hoare triple {91267#false} assume true; {91267#false} is VALID [2018-11-23 12:16:24,246 INFO L268 TraceCheckUtils]: 262: Hoare quadruple {91267#false} {91266#true} #86#return; {91267#false} is VALID [2018-11-23 12:16:24,246 INFO L273 TraceCheckUtils]: 263: Hoare triple {91267#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {91267#false} is VALID [2018-11-23 12:16:24,247 INFO L273 TraceCheckUtils]: 264: Hoare triple {91267#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {91267#false} is VALID [2018-11-23 12:16:24,247 INFO L273 TraceCheckUtils]: 265: Hoare triple {91267#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {91267#false} is VALID [2018-11-23 12:16:24,247 INFO L273 TraceCheckUtils]: 266: Hoare triple {91267#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {91267#false} is VALID [2018-11-23 12:16:24,247 INFO L273 TraceCheckUtils]: 267: Hoare triple {91267#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {91267#false} is VALID [2018-11-23 12:16:24,247 INFO L273 TraceCheckUtils]: 268: Hoare triple {91267#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {91267#false} is VALID [2018-11-23 12:16:24,248 INFO L273 TraceCheckUtils]: 269: Hoare triple {91267#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {91267#false} is VALID [2018-11-23 12:16:24,248 INFO L273 TraceCheckUtils]: 270: Hoare triple {91267#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {91267#false} is VALID [2018-11-23 12:16:24,248 INFO L273 TraceCheckUtils]: 271: Hoare triple {91267#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {91267#false} is VALID [2018-11-23 12:16:24,248 INFO L273 TraceCheckUtils]: 272: Hoare triple {91267#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {91267#false} is VALID [2018-11-23 12:16:24,248 INFO L273 TraceCheckUtils]: 273: Hoare triple {91267#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {91267#false} is VALID [2018-11-23 12:16:24,248 INFO L273 TraceCheckUtils]: 274: Hoare triple {91267#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {91267#false} is VALID [2018-11-23 12:16:24,249 INFO L273 TraceCheckUtils]: 275: Hoare triple {91267#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {91267#false} is VALID [2018-11-23 12:16:24,249 INFO L273 TraceCheckUtils]: 276: Hoare triple {91267#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {91267#false} is VALID [2018-11-23 12:16:24,249 INFO L273 TraceCheckUtils]: 277: Hoare triple {91267#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {91267#false} is VALID [2018-11-23 12:16:24,249 INFO L273 TraceCheckUtils]: 278: Hoare triple {91267#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {91267#false} is VALID [2018-11-23 12:16:24,249 INFO L273 TraceCheckUtils]: 279: Hoare triple {91267#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {91267#false} is VALID [2018-11-23 12:16:24,249 INFO L273 TraceCheckUtils]: 280: Hoare triple {91267#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {91267#false} is VALID [2018-11-23 12:16:24,250 INFO L273 TraceCheckUtils]: 281: Hoare triple {91267#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {91267#false} is VALID [2018-11-23 12:16:24,250 INFO L273 TraceCheckUtils]: 282: Hoare triple {91267#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {91267#false} is VALID [2018-11-23 12:16:24,250 INFO L273 TraceCheckUtils]: 283: Hoare triple {91267#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {91267#false} is VALID [2018-11-23 12:16:24,250 INFO L273 TraceCheckUtils]: 284: Hoare triple {91267#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {91267#false} is VALID [2018-11-23 12:16:24,250 INFO L273 TraceCheckUtils]: 285: Hoare triple {91267#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {91267#false} is VALID [2018-11-23 12:16:24,250 INFO L273 TraceCheckUtils]: 286: Hoare triple {91267#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {91267#false} is VALID [2018-11-23 12:16:24,251 INFO L273 TraceCheckUtils]: 287: Hoare triple {91267#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {91267#false} is VALID [2018-11-23 12:16:24,251 INFO L273 TraceCheckUtils]: 288: Hoare triple {91267#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {91267#false} is VALID [2018-11-23 12:16:24,251 INFO L273 TraceCheckUtils]: 289: Hoare triple {91267#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {91267#false} is VALID [2018-11-23 12:16:24,251 INFO L273 TraceCheckUtils]: 290: Hoare triple {91267#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {91267#false} is VALID [2018-11-23 12:16:24,251 INFO L273 TraceCheckUtils]: 291: Hoare triple {91267#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {91267#false} is VALID [2018-11-23 12:16:24,251 INFO L273 TraceCheckUtils]: 292: Hoare triple {91267#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {91267#false} is VALID [2018-11-23 12:16:24,251 INFO L273 TraceCheckUtils]: 293: Hoare triple {91267#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {91267#false} is VALID [2018-11-23 12:16:24,251 INFO L273 TraceCheckUtils]: 294: Hoare triple {91267#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {91267#false} is VALID [2018-11-23 12:16:24,251 INFO L273 TraceCheckUtils]: 295: Hoare triple {91267#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {91267#false} is VALID [2018-11-23 12:16:24,252 INFO L273 TraceCheckUtils]: 296: Hoare triple {91267#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {91267#false} is VALID [2018-11-23 12:16:24,252 INFO L273 TraceCheckUtils]: 297: Hoare triple {91267#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {91267#false} is VALID [2018-11-23 12:16:24,252 INFO L273 TraceCheckUtils]: 298: Hoare triple {91267#false} assume !(~i~2 < 39); {91267#false} is VALID [2018-11-23 12:16:24,252 INFO L273 TraceCheckUtils]: 299: Hoare triple {91267#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {91267#false} is VALID [2018-11-23 12:16:24,252 INFO L256 TraceCheckUtils]: 300: Hoare triple {91267#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {91267#false} is VALID [2018-11-23 12:16:24,252 INFO L273 TraceCheckUtils]: 301: Hoare triple {91267#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {91267#false} is VALID [2018-11-23 12:16:24,252 INFO L273 TraceCheckUtils]: 302: Hoare triple {91267#false} assume !!(~i~1 < 40); {91267#false} is VALID [2018-11-23 12:16:24,252 INFO L273 TraceCheckUtils]: 303: Hoare triple {91267#false} assume !(~i~1 > 20); {91267#false} is VALID [2018-11-23 12:16:24,252 INFO L273 TraceCheckUtils]: 304: Hoare triple {91267#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91267#false} is VALID [2018-11-23 12:16:24,252 INFO L273 TraceCheckUtils]: 305: Hoare triple {91267#false} assume !!(~i~1 < 40); {91267#false} is VALID [2018-11-23 12:16:24,253 INFO L273 TraceCheckUtils]: 306: Hoare triple {91267#false} assume !(~i~1 > 20); {91267#false} is VALID [2018-11-23 12:16:24,253 INFO L273 TraceCheckUtils]: 307: Hoare triple {91267#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91267#false} is VALID [2018-11-23 12:16:24,253 INFO L273 TraceCheckUtils]: 308: Hoare triple {91267#false} assume !!(~i~1 < 40); {91267#false} is VALID [2018-11-23 12:16:24,253 INFO L273 TraceCheckUtils]: 309: Hoare triple {91267#false} assume !(~i~1 > 20); {91267#false} is VALID [2018-11-23 12:16:24,253 INFO L273 TraceCheckUtils]: 310: Hoare triple {91267#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91267#false} is VALID [2018-11-23 12:16:24,253 INFO L273 TraceCheckUtils]: 311: Hoare triple {91267#false} assume !!(~i~1 < 40); {91267#false} is VALID [2018-11-23 12:16:24,253 INFO L273 TraceCheckUtils]: 312: Hoare triple {91267#false} assume !(~i~1 > 20); {91267#false} is VALID [2018-11-23 12:16:24,253 INFO L273 TraceCheckUtils]: 313: Hoare triple {91267#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91267#false} is VALID [2018-11-23 12:16:24,253 INFO L273 TraceCheckUtils]: 314: Hoare triple {91267#false} assume !!(~i~1 < 40); {91267#false} is VALID [2018-11-23 12:16:24,253 INFO L273 TraceCheckUtils]: 315: Hoare triple {91267#false} assume !(~i~1 > 20); {91267#false} is VALID [2018-11-23 12:16:24,254 INFO L273 TraceCheckUtils]: 316: Hoare triple {91267#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91267#false} is VALID [2018-11-23 12:16:24,254 INFO L273 TraceCheckUtils]: 317: Hoare triple {91267#false} assume !!(~i~1 < 40); {91267#false} is VALID [2018-11-23 12:16:24,254 INFO L273 TraceCheckUtils]: 318: Hoare triple {91267#false} assume !(~i~1 > 20); {91267#false} is VALID [2018-11-23 12:16:24,254 INFO L273 TraceCheckUtils]: 319: Hoare triple {91267#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91267#false} is VALID [2018-11-23 12:16:24,254 INFO L273 TraceCheckUtils]: 320: Hoare triple {91267#false} assume !!(~i~1 < 40); {91267#false} is VALID [2018-11-23 12:16:24,254 INFO L273 TraceCheckUtils]: 321: Hoare triple {91267#false} assume !(~i~1 > 20); {91267#false} is VALID [2018-11-23 12:16:24,254 INFO L273 TraceCheckUtils]: 322: Hoare triple {91267#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91267#false} is VALID [2018-11-23 12:16:24,254 INFO L273 TraceCheckUtils]: 323: Hoare triple {91267#false} assume !!(~i~1 < 40); {91267#false} is VALID [2018-11-23 12:16:24,254 INFO L273 TraceCheckUtils]: 324: Hoare triple {91267#false} assume !(~i~1 > 20); {91267#false} is VALID [2018-11-23 12:16:24,254 INFO L273 TraceCheckUtils]: 325: Hoare triple {91267#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91267#false} is VALID [2018-11-23 12:16:24,255 INFO L273 TraceCheckUtils]: 326: Hoare triple {91267#false} assume !!(~i~1 < 40); {91267#false} is VALID [2018-11-23 12:16:24,255 INFO L273 TraceCheckUtils]: 327: Hoare triple {91267#false} assume !(~i~1 > 20); {91267#false} is VALID [2018-11-23 12:16:24,255 INFO L273 TraceCheckUtils]: 328: Hoare triple {91267#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91267#false} is VALID [2018-11-23 12:16:24,255 INFO L273 TraceCheckUtils]: 329: Hoare triple {91267#false} assume !!(~i~1 < 40); {91267#false} is VALID [2018-11-23 12:16:24,255 INFO L273 TraceCheckUtils]: 330: Hoare triple {91267#false} assume !(~i~1 > 20); {91267#false} is VALID [2018-11-23 12:16:24,255 INFO L273 TraceCheckUtils]: 331: Hoare triple {91267#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91267#false} is VALID [2018-11-23 12:16:24,255 INFO L273 TraceCheckUtils]: 332: Hoare triple {91267#false} assume !!(~i~1 < 40); {91267#false} is VALID [2018-11-23 12:16:24,255 INFO L273 TraceCheckUtils]: 333: Hoare triple {91267#false} assume !(~i~1 > 20); {91267#false} is VALID [2018-11-23 12:16:24,255 INFO L273 TraceCheckUtils]: 334: Hoare triple {91267#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91267#false} is VALID [2018-11-23 12:16:24,256 INFO L273 TraceCheckUtils]: 335: Hoare triple {91267#false} assume !!(~i~1 < 40); {91267#false} is VALID [2018-11-23 12:16:24,256 INFO L273 TraceCheckUtils]: 336: Hoare triple {91267#false} assume !(~i~1 > 20); {91267#false} is VALID [2018-11-23 12:16:24,256 INFO L273 TraceCheckUtils]: 337: Hoare triple {91267#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91267#false} is VALID [2018-11-23 12:16:24,256 INFO L273 TraceCheckUtils]: 338: Hoare triple {91267#false} assume !!(~i~1 < 40); {91267#false} is VALID [2018-11-23 12:16:24,256 INFO L273 TraceCheckUtils]: 339: Hoare triple {91267#false} assume !(~i~1 > 20); {91267#false} is VALID [2018-11-23 12:16:24,256 INFO L273 TraceCheckUtils]: 340: Hoare triple {91267#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91267#false} is VALID [2018-11-23 12:16:24,256 INFO L273 TraceCheckUtils]: 341: Hoare triple {91267#false} assume !!(~i~1 < 40); {91267#false} is VALID [2018-11-23 12:16:24,256 INFO L273 TraceCheckUtils]: 342: Hoare triple {91267#false} assume !(~i~1 > 20); {91267#false} is VALID [2018-11-23 12:16:24,256 INFO L273 TraceCheckUtils]: 343: Hoare triple {91267#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91267#false} is VALID [2018-11-23 12:16:24,256 INFO L273 TraceCheckUtils]: 344: Hoare triple {91267#false} assume !!(~i~1 < 40); {91267#false} is VALID [2018-11-23 12:16:24,257 INFO L273 TraceCheckUtils]: 345: Hoare triple {91267#false} assume !(~i~1 > 20); {91267#false} is VALID [2018-11-23 12:16:24,257 INFO L273 TraceCheckUtils]: 346: Hoare triple {91267#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91267#false} is VALID [2018-11-23 12:16:24,257 INFO L273 TraceCheckUtils]: 347: Hoare triple {91267#false} assume !!(~i~1 < 40); {91267#false} is VALID [2018-11-23 12:16:24,257 INFO L273 TraceCheckUtils]: 348: Hoare triple {91267#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {91267#false} is VALID [2018-11-23 12:16:24,257 INFO L273 TraceCheckUtils]: 349: Hoare triple {91267#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91267#false} is VALID [2018-11-23 12:16:24,257 INFO L273 TraceCheckUtils]: 350: Hoare triple {91267#false} assume !!(~i~1 < 40); {91267#false} is VALID [2018-11-23 12:16:24,257 INFO L273 TraceCheckUtils]: 351: Hoare triple {91267#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {91267#false} is VALID [2018-11-23 12:16:24,257 INFO L273 TraceCheckUtils]: 352: Hoare triple {91267#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91267#false} is VALID [2018-11-23 12:16:24,257 INFO L273 TraceCheckUtils]: 353: Hoare triple {91267#false} assume !!(~i~1 < 40); {91267#false} is VALID [2018-11-23 12:16:24,257 INFO L273 TraceCheckUtils]: 354: Hoare triple {91267#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {91267#false} is VALID [2018-11-23 12:16:24,258 INFO L273 TraceCheckUtils]: 355: Hoare triple {91267#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91267#false} is VALID [2018-11-23 12:16:24,258 INFO L273 TraceCheckUtils]: 356: Hoare triple {91267#false} assume !!(~i~1 < 40); {91267#false} is VALID [2018-11-23 12:16:24,258 INFO L273 TraceCheckUtils]: 357: Hoare triple {91267#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {91267#false} is VALID [2018-11-23 12:16:24,258 INFO L273 TraceCheckUtils]: 358: Hoare triple {91267#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91267#false} is VALID [2018-11-23 12:16:24,258 INFO L273 TraceCheckUtils]: 359: Hoare triple {91267#false} assume !!(~i~1 < 40); {91267#false} is VALID [2018-11-23 12:16:24,258 INFO L273 TraceCheckUtils]: 360: Hoare triple {91267#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {91267#false} is VALID [2018-11-23 12:16:24,258 INFO L273 TraceCheckUtils]: 361: Hoare triple {91267#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91267#false} is VALID [2018-11-23 12:16:24,258 INFO L273 TraceCheckUtils]: 362: Hoare triple {91267#false} assume !!(~i~1 < 40); {91267#false} is VALID [2018-11-23 12:16:24,258 INFO L273 TraceCheckUtils]: 363: Hoare triple {91267#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {91267#false} is VALID [2018-11-23 12:16:24,258 INFO L273 TraceCheckUtils]: 364: Hoare triple {91267#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91267#false} is VALID [2018-11-23 12:16:24,259 INFO L273 TraceCheckUtils]: 365: Hoare triple {91267#false} assume !!(~i~1 < 40); {91267#false} is VALID [2018-11-23 12:16:24,259 INFO L273 TraceCheckUtils]: 366: Hoare triple {91267#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {91267#false} is VALID [2018-11-23 12:16:24,259 INFO L273 TraceCheckUtils]: 367: Hoare triple {91267#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91267#false} is VALID [2018-11-23 12:16:24,259 INFO L273 TraceCheckUtils]: 368: Hoare triple {91267#false} assume !!(~i~1 < 40); {91267#false} is VALID [2018-11-23 12:16:24,259 INFO L273 TraceCheckUtils]: 369: Hoare triple {91267#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {91267#false} is VALID [2018-11-23 12:16:24,259 INFO L273 TraceCheckUtils]: 370: Hoare triple {91267#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91267#false} is VALID [2018-11-23 12:16:24,259 INFO L273 TraceCheckUtils]: 371: Hoare triple {91267#false} assume !!(~i~1 < 40); {91267#false} is VALID [2018-11-23 12:16:24,259 INFO L273 TraceCheckUtils]: 372: Hoare triple {91267#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {91267#false} is VALID [2018-11-23 12:16:24,259 INFO L273 TraceCheckUtils]: 373: Hoare triple {91267#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91267#false} is VALID [2018-11-23 12:16:24,259 INFO L273 TraceCheckUtils]: 374: Hoare triple {91267#false} assume !!(~i~1 < 40); {91267#false} is VALID [2018-11-23 12:16:24,260 INFO L273 TraceCheckUtils]: 375: Hoare triple {91267#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {91267#false} is VALID [2018-11-23 12:16:24,260 INFO L273 TraceCheckUtils]: 376: Hoare triple {91267#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91267#false} is VALID [2018-11-23 12:16:24,260 INFO L273 TraceCheckUtils]: 377: Hoare triple {91267#false} assume !!(~i~1 < 40); {91267#false} is VALID [2018-11-23 12:16:24,260 INFO L273 TraceCheckUtils]: 378: Hoare triple {91267#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {91267#false} is VALID [2018-11-23 12:16:24,260 INFO L273 TraceCheckUtils]: 379: Hoare triple {91267#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91267#false} is VALID [2018-11-23 12:16:24,260 INFO L273 TraceCheckUtils]: 380: Hoare triple {91267#false} assume !!(~i~1 < 40); {91267#false} is VALID [2018-11-23 12:16:24,260 INFO L273 TraceCheckUtils]: 381: Hoare triple {91267#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {91267#false} is VALID [2018-11-23 12:16:24,260 INFO L273 TraceCheckUtils]: 382: Hoare triple {91267#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91267#false} is VALID [2018-11-23 12:16:24,260 INFO L273 TraceCheckUtils]: 383: Hoare triple {91267#false} assume !!(~i~1 < 40); {91267#false} is VALID [2018-11-23 12:16:24,260 INFO L273 TraceCheckUtils]: 384: Hoare triple {91267#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {91267#false} is VALID [2018-11-23 12:16:24,261 INFO L273 TraceCheckUtils]: 385: Hoare triple {91267#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91267#false} is VALID [2018-11-23 12:16:24,261 INFO L273 TraceCheckUtils]: 386: Hoare triple {91267#false} assume !!(~i~1 < 40); {91267#false} is VALID [2018-11-23 12:16:24,261 INFO L273 TraceCheckUtils]: 387: Hoare triple {91267#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {91267#false} is VALID [2018-11-23 12:16:24,261 INFO L273 TraceCheckUtils]: 388: Hoare triple {91267#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91267#false} is VALID [2018-11-23 12:16:24,261 INFO L273 TraceCheckUtils]: 389: Hoare triple {91267#false} assume !!(~i~1 < 40); {91267#false} is VALID [2018-11-23 12:16:24,261 INFO L273 TraceCheckUtils]: 390: Hoare triple {91267#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {91267#false} is VALID [2018-11-23 12:16:24,261 INFO L273 TraceCheckUtils]: 391: Hoare triple {91267#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91267#false} is VALID [2018-11-23 12:16:24,261 INFO L273 TraceCheckUtils]: 392: Hoare triple {91267#false} assume !!(~i~1 < 40); {91267#false} is VALID [2018-11-23 12:16:24,261 INFO L273 TraceCheckUtils]: 393: Hoare triple {91267#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {91267#false} is VALID [2018-11-23 12:16:24,261 INFO L273 TraceCheckUtils]: 394: Hoare triple {91267#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {91267#false} is VALID [2018-11-23 12:16:24,262 INFO L273 TraceCheckUtils]: 395: Hoare triple {91267#false} assume !(~i~1 < 40); {91267#false} is VALID [2018-11-23 12:16:24,262 INFO L273 TraceCheckUtils]: 396: Hoare triple {91267#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {91267#false} is VALID [2018-11-23 12:16:24,262 INFO L273 TraceCheckUtils]: 397: Hoare triple {91267#false} assume true; {91267#false} is VALID [2018-11-23 12:16:24,262 INFO L268 TraceCheckUtils]: 398: Hoare quadruple {91267#false} {91267#false} #88#return; {91267#false} is VALID [2018-11-23 12:16:24,262 INFO L273 TraceCheckUtils]: 399: Hoare triple {91267#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {91267#false} is VALID [2018-11-23 12:16:24,262 INFO L273 TraceCheckUtils]: 400: Hoare triple {91267#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {91267#false} is VALID [2018-11-23 12:16:24,262 INFO L273 TraceCheckUtils]: 401: Hoare triple {91267#false} assume !false; {91267#false} is VALID [2018-11-23 12:16:24,325 INFO L134 CoverageAnalysis]: Checked inductivity of 14093 backedges. 8846 proven. 1426 refuted. 0 times theorem prover too weak. 3821 trivial. 0 not checked. [2018-11-23 12:16:24,345 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:16:24,345 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [34] total 34 [2018-11-23 12:16:24,345 INFO L78 Accepts]: Start accepts. Automaton has 34 states. Word has length 402 [2018-11-23 12:16:24,345 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:16:24,346 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 34 states. [2018-11-23 12:16:24,488 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 140 edges. 140 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:16:24,488 INFO L459 AbstractCegarLoop]: Interpolant automaton has 34 states [2018-11-23 12:16:24,489 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 34 interpolants. [2018-11-23 12:16:24,489 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=561, Invalid=561, Unknown=0, NotChecked=0, Total=1122 [2018-11-23 12:16:24,489 INFO L87 Difference]: Start difference. First operand 207 states and 228 transitions. Second operand 34 states. [2018-11-23 12:16:25,188 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:25,188 INFO L93 Difference]: Finished difference Result 367 states and 416 transitions. [2018-11-23 12:16:25,189 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 34 states. [2018-11-23 12:16:25,189 INFO L78 Accepts]: Start accepts. Automaton has 34 states. Word has length 402 [2018-11-23 12:16:25,189 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:16:25,189 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 34 states. [2018-11-23 12:16:25,190 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 176 transitions. [2018-11-23 12:16:25,190 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 34 states. [2018-11-23 12:16:25,192 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 176 transitions. [2018-11-23 12:16:25,192 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 34 states and 176 transitions. [2018-11-23 12:16:25,355 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 176 edges. 176 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:16:25,360 INFO L225 Difference]: With dead ends: 367 [2018-11-23 12:16:25,360 INFO L226 Difference]: Without dead ends: 225 [2018-11-23 12:16:25,361 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 401 GetRequests, 369 SyntacticMatches, 0 SemanticMatches, 32 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=561, Invalid=561, Unknown=0, NotChecked=0, Total=1122 [2018-11-23 12:16:25,361 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 225 states. [2018-11-23 12:16:25,486 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 225 to 225. [2018-11-23 12:16:25,486 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:16:25,486 INFO L82 GeneralOperation]: Start isEquivalent. First operand 225 states. Second operand 225 states. [2018-11-23 12:16:25,486 INFO L74 IsIncluded]: Start isIncluded. First operand 225 states. Second operand 225 states. [2018-11-23 12:16:25,487 INFO L87 Difference]: Start difference. First operand 225 states. Second operand 225 states. [2018-11-23 12:16:25,491 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:25,492 INFO L93 Difference]: Finished difference Result 225 states and 246 transitions. [2018-11-23 12:16:25,492 INFO L276 IsEmpty]: Start isEmpty. Operand 225 states and 246 transitions. [2018-11-23 12:16:25,492 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:25,492 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:25,492 INFO L74 IsIncluded]: Start isIncluded. First operand 225 states. Second operand 225 states. [2018-11-23 12:16:25,492 INFO L87 Difference]: Start difference. First operand 225 states. Second operand 225 states. [2018-11-23 12:16:25,496 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:25,496 INFO L93 Difference]: Finished difference Result 225 states and 246 transitions. [2018-11-23 12:16:25,496 INFO L276 IsEmpty]: Start isEmpty. Operand 225 states and 246 transitions. [2018-11-23 12:16:25,496 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:25,496 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:25,496 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:16:25,496 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:16:25,496 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 225 states. [2018-11-23 12:16:25,500 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 225 states to 225 states and 246 transitions. [2018-11-23 12:16:25,500 INFO L78 Accepts]: Start accepts. Automaton has 225 states and 246 transitions. Word has length 402 [2018-11-23 12:16:25,500 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:16:25,500 INFO L480 AbstractCegarLoop]: Abstraction has 225 states and 246 transitions. [2018-11-23 12:16:25,500 INFO L481 AbstractCegarLoop]: Interpolant automaton has 34 states. [2018-11-23 12:16:25,500 INFO L276 IsEmpty]: Start isEmpty. Operand 225 states and 246 transitions. [2018-11-23 12:16:25,502 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 457 [2018-11-23 12:16:25,502 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:16:25,503 INFO L402 BasicCegarLoop]: trace histogram [111, 111, 63, 48, 26, 26, 17, 17, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:16:25,503 INFO L423 AbstractCegarLoop]: === Iteration 70 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:16:25,503 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:16:25,503 INFO L82 PathProgramCache]: Analyzing trace with hash 233657978, now seen corresponding path program 65 times [2018-11-23 12:16:25,503 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:16:25,503 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:16:25,504 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:25,504 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:16:25,504 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:25,514 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:16:25,514 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:16:25,514 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 71 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 71 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:16:25,528 INFO L103 rtionOrderModulation]: Keeping assertion order INSIDE_LOOP_FIRST1 [2018-11-23 12:16:25,607 INFO L249 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 19 check-sat command(s) [2018-11-23 12:16:25,607 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:16:25,673 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:25,676 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:16:26,227 INFO L256 TraceCheckUtils]: 0: Hoare triple {93786#true} call ULTIMATE.init(); {93786#true} is VALID [2018-11-23 12:16:26,227 INFO L273 TraceCheckUtils]: 1: Hoare triple {93786#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {93786#true} is VALID [2018-11-23 12:16:26,228 INFO L273 TraceCheckUtils]: 2: Hoare triple {93786#true} assume true; {93786#true} is VALID [2018-11-23 12:16:26,228 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {93786#true} {93786#true} #78#return; {93786#true} is VALID [2018-11-23 12:16:26,228 INFO L256 TraceCheckUtils]: 4: Hoare triple {93786#true} call #t~ret12 := main(); {93786#true} is VALID [2018-11-23 12:16:26,228 INFO L273 TraceCheckUtils]: 5: Hoare triple {93786#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {93786#true} is VALID [2018-11-23 12:16:26,228 INFO L256 TraceCheckUtils]: 6: Hoare triple {93786#true} call init_nondet(~#x~0.base, ~#x~0.offset); {93786#true} is VALID [2018-11-23 12:16:26,228 INFO L273 TraceCheckUtils]: 7: Hoare triple {93786#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {93786#true} is VALID [2018-11-23 12:16:26,229 INFO L273 TraceCheckUtils]: 8: Hoare triple {93786#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {93786#true} is VALID [2018-11-23 12:16:26,229 INFO L273 TraceCheckUtils]: 9: Hoare triple {93786#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {93786#true} is VALID [2018-11-23 12:16:26,229 INFO L273 TraceCheckUtils]: 10: Hoare triple {93786#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {93786#true} is VALID [2018-11-23 12:16:26,229 INFO L273 TraceCheckUtils]: 11: Hoare triple {93786#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {93786#true} is VALID [2018-11-23 12:16:26,229 INFO L273 TraceCheckUtils]: 12: Hoare triple {93786#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {93786#true} is VALID [2018-11-23 12:16:26,229 INFO L273 TraceCheckUtils]: 13: Hoare triple {93786#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {93786#true} is VALID [2018-11-23 12:16:26,230 INFO L273 TraceCheckUtils]: 14: Hoare triple {93786#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {93786#true} is VALID [2018-11-23 12:16:26,230 INFO L273 TraceCheckUtils]: 15: Hoare triple {93786#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {93786#true} is VALID [2018-11-23 12:16:26,230 INFO L273 TraceCheckUtils]: 16: Hoare triple {93786#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {93786#true} is VALID [2018-11-23 12:16:26,230 INFO L273 TraceCheckUtils]: 17: Hoare triple {93786#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {93786#true} is VALID [2018-11-23 12:16:26,230 INFO L273 TraceCheckUtils]: 18: Hoare triple {93786#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {93786#true} is VALID [2018-11-23 12:16:26,230 INFO L273 TraceCheckUtils]: 19: Hoare triple {93786#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {93786#true} is VALID [2018-11-23 12:16:26,230 INFO L273 TraceCheckUtils]: 20: Hoare triple {93786#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {93786#true} is VALID [2018-11-23 12:16:26,230 INFO L273 TraceCheckUtils]: 21: Hoare triple {93786#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {93786#true} is VALID [2018-11-23 12:16:26,230 INFO L273 TraceCheckUtils]: 22: Hoare triple {93786#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {93786#true} is VALID [2018-11-23 12:16:26,230 INFO L273 TraceCheckUtils]: 23: Hoare triple {93786#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {93786#true} is VALID [2018-11-23 12:16:26,231 INFO L273 TraceCheckUtils]: 24: Hoare triple {93786#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {93786#true} is VALID [2018-11-23 12:16:26,231 INFO L273 TraceCheckUtils]: 25: Hoare triple {93786#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {93786#true} is VALID [2018-11-23 12:16:26,231 INFO L273 TraceCheckUtils]: 26: Hoare triple {93786#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {93786#true} is VALID [2018-11-23 12:16:26,231 INFO L273 TraceCheckUtils]: 27: Hoare triple {93786#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {93786#true} is VALID [2018-11-23 12:16:26,231 INFO L273 TraceCheckUtils]: 28: Hoare triple {93786#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {93786#true} is VALID [2018-11-23 12:16:26,231 INFO L273 TraceCheckUtils]: 29: Hoare triple {93786#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {93786#true} is VALID [2018-11-23 12:16:26,231 INFO L273 TraceCheckUtils]: 30: Hoare triple {93786#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {93786#true} is VALID [2018-11-23 12:16:26,231 INFO L273 TraceCheckUtils]: 31: Hoare triple {93786#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {93786#true} is VALID [2018-11-23 12:16:26,231 INFO L273 TraceCheckUtils]: 32: Hoare triple {93786#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {93786#true} is VALID [2018-11-23 12:16:26,232 INFO L273 TraceCheckUtils]: 33: Hoare triple {93786#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {93786#true} is VALID [2018-11-23 12:16:26,232 INFO L273 TraceCheckUtils]: 34: Hoare triple {93786#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {93786#true} is VALID [2018-11-23 12:16:26,232 INFO L273 TraceCheckUtils]: 35: Hoare triple {93786#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {93786#true} is VALID [2018-11-23 12:16:26,232 INFO L273 TraceCheckUtils]: 36: Hoare triple {93786#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {93786#true} is VALID [2018-11-23 12:16:26,232 INFO L273 TraceCheckUtils]: 37: Hoare triple {93786#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {93786#true} is VALID [2018-11-23 12:16:26,232 INFO L273 TraceCheckUtils]: 38: Hoare triple {93786#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {93786#true} is VALID [2018-11-23 12:16:26,232 INFO L273 TraceCheckUtils]: 39: Hoare triple {93786#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {93786#true} is VALID [2018-11-23 12:16:26,232 INFO L273 TraceCheckUtils]: 40: Hoare triple {93786#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {93786#true} is VALID [2018-11-23 12:16:26,232 INFO L273 TraceCheckUtils]: 41: Hoare triple {93786#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {93786#true} is VALID [2018-11-23 12:16:26,232 INFO L273 TraceCheckUtils]: 42: Hoare triple {93786#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {93786#true} is VALID [2018-11-23 12:16:26,233 INFO L273 TraceCheckUtils]: 43: Hoare triple {93786#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {93786#true} is VALID [2018-11-23 12:16:26,233 INFO L273 TraceCheckUtils]: 44: Hoare triple {93786#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {93786#true} is VALID [2018-11-23 12:16:26,233 INFO L273 TraceCheckUtils]: 45: Hoare triple {93786#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {93786#true} is VALID [2018-11-23 12:16:26,233 INFO L273 TraceCheckUtils]: 46: Hoare triple {93786#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {93786#true} is VALID [2018-11-23 12:16:26,233 INFO L273 TraceCheckUtils]: 47: Hoare triple {93786#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {93786#true} is VALID [2018-11-23 12:16:26,233 INFO L273 TraceCheckUtils]: 48: Hoare triple {93786#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {93786#true} is VALID [2018-11-23 12:16:26,233 INFO L273 TraceCheckUtils]: 49: Hoare triple {93786#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {93786#true} is VALID [2018-11-23 12:16:26,233 INFO L273 TraceCheckUtils]: 50: Hoare triple {93786#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {93786#true} is VALID [2018-11-23 12:16:26,233 INFO L273 TraceCheckUtils]: 51: Hoare triple {93786#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {93786#true} is VALID [2018-11-23 12:16:26,233 INFO L273 TraceCheckUtils]: 52: Hoare triple {93786#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {93786#true} is VALID [2018-11-23 12:16:26,234 INFO L273 TraceCheckUtils]: 53: Hoare triple {93786#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {93786#true} is VALID [2018-11-23 12:16:26,234 INFO L273 TraceCheckUtils]: 54: Hoare triple {93786#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {93786#true} is VALID [2018-11-23 12:16:26,234 INFO L273 TraceCheckUtils]: 55: Hoare triple {93786#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {93786#true} is VALID [2018-11-23 12:16:26,234 INFO L273 TraceCheckUtils]: 56: Hoare triple {93786#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {93786#true} is VALID [2018-11-23 12:16:26,234 INFO L273 TraceCheckUtils]: 57: Hoare triple {93786#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {93786#true} is VALID [2018-11-23 12:16:26,234 INFO L273 TraceCheckUtils]: 58: Hoare triple {93786#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {93786#true} is VALID [2018-11-23 12:16:26,234 INFO L273 TraceCheckUtils]: 59: Hoare triple {93786#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {93786#true} is VALID [2018-11-23 12:16:26,234 INFO L273 TraceCheckUtils]: 60: Hoare triple {93786#true} assume !(~i~0 < 40); {93786#true} is VALID [2018-11-23 12:16:26,234 INFO L273 TraceCheckUtils]: 61: Hoare triple {93786#true} assume true; {93786#true} is VALID [2018-11-23 12:16:26,234 INFO L268 TraceCheckUtils]: 62: Hoare quadruple {93786#true} {93786#true} #82#return; {93786#true} is VALID [2018-11-23 12:16:26,235 INFO L273 TraceCheckUtils]: 63: Hoare triple {93786#true} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {93786#true} is VALID [2018-11-23 12:16:26,235 INFO L256 TraceCheckUtils]: 64: Hoare triple {93786#true} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {93786#true} is VALID [2018-11-23 12:16:26,235 INFO L273 TraceCheckUtils]: 65: Hoare triple {93786#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {93786#true} is VALID [2018-11-23 12:16:26,235 INFO L273 TraceCheckUtils]: 66: Hoare triple {93786#true} assume !!(~i~1 < 40); {93786#true} is VALID [2018-11-23 12:16:26,235 INFO L273 TraceCheckUtils]: 67: Hoare triple {93786#true} assume !(~i~1 > 20); {93786#true} is VALID [2018-11-23 12:16:26,235 INFO L273 TraceCheckUtils]: 68: Hoare triple {93786#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93786#true} is VALID [2018-11-23 12:16:26,235 INFO L273 TraceCheckUtils]: 69: Hoare triple {93786#true} assume !!(~i~1 < 40); {93786#true} is VALID [2018-11-23 12:16:26,235 INFO L273 TraceCheckUtils]: 70: Hoare triple {93786#true} assume !(~i~1 > 20); {93786#true} is VALID [2018-11-23 12:16:26,235 INFO L273 TraceCheckUtils]: 71: Hoare triple {93786#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93786#true} is VALID [2018-11-23 12:16:26,235 INFO L273 TraceCheckUtils]: 72: Hoare triple {93786#true} assume !!(~i~1 < 40); {93786#true} is VALID [2018-11-23 12:16:26,236 INFO L273 TraceCheckUtils]: 73: Hoare triple {93786#true} assume !(~i~1 > 20); {93786#true} is VALID [2018-11-23 12:16:26,236 INFO L273 TraceCheckUtils]: 74: Hoare triple {93786#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93786#true} is VALID [2018-11-23 12:16:26,236 INFO L273 TraceCheckUtils]: 75: Hoare triple {93786#true} assume !!(~i~1 < 40); {93786#true} is VALID [2018-11-23 12:16:26,236 INFO L273 TraceCheckUtils]: 76: Hoare triple {93786#true} assume !(~i~1 > 20); {93786#true} is VALID [2018-11-23 12:16:26,236 INFO L273 TraceCheckUtils]: 77: Hoare triple {93786#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93786#true} is VALID [2018-11-23 12:16:26,236 INFO L273 TraceCheckUtils]: 78: Hoare triple {93786#true} assume !!(~i~1 < 40); {93786#true} is VALID [2018-11-23 12:16:26,236 INFO L273 TraceCheckUtils]: 79: Hoare triple {93786#true} assume !(~i~1 > 20); {93786#true} is VALID [2018-11-23 12:16:26,236 INFO L273 TraceCheckUtils]: 80: Hoare triple {93786#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93786#true} is VALID [2018-11-23 12:16:26,236 INFO L273 TraceCheckUtils]: 81: Hoare triple {93786#true} assume !!(~i~1 < 40); {93786#true} is VALID [2018-11-23 12:16:26,236 INFO L273 TraceCheckUtils]: 82: Hoare triple {93786#true} assume !(~i~1 > 20); {93786#true} is VALID [2018-11-23 12:16:26,237 INFO L273 TraceCheckUtils]: 83: Hoare triple {93786#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93786#true} is VALID [2018-11-23 12:16:26,237 INFO L273 TraceCheckUtils]: 84: Hoare triple {93786#true} assume !!(~i~1 < 40); {93786#true} is VALID [2018-11-23 12:16:26,237 INFO L273 TraceCheckUtils]: 85: Hoare triple {93786#true} assume !(~i~1 > 20); {93786#true} is VALID [2018-11-23 12:16:26,237 INFO L273 TraceCheckUtils]: 86: Hoare triple {93786#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93786#true} is VALID [2018-11-23 12:16:26,237 INFO L273 TraceCheckUtils]: 87: Hoare triple {93786#true} assume !!(~i~1 < 40); {93786#true} is VALID [2018-11-23 12:16:26,237 INFO L273 TraceCheckUtils]: 88: Hoare triple {93786#true} assume !(~i~1 > 20); {93786#true} is VALID [2018-11-23 12:16:26,237 INFO L273 TraceCheckUtils]: 89: Hoare triple {93786#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93786#true} is VALID [2018-11-23 12:16:26,237 INFO L273 TraceCheckUtils]: 90: Hoare triple {93786#true} assume !!(~i~1 < 40); {93786#true} is VALID [2018-11-23 12:16:26,237 INFO L273 TraceCheckUtils]: 91: Hoare triple {93786#true} assume !(~i~1 > 20); {93786#true} is VALID [2018-11-23 12:16:26,237 INFO L273 TraceCheckUtils]: 92: Hoare triple {93786#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93786#true} is VALID [2018-11-23 12:16:26,238 INFO L273 TraceCheckUtils]: 93: Hoare triple {93786#true} assume !!(~i~1 < 40); {93786#true} is VALID [2018-11-23 12:16:26,238 INFO L273 TraceCheckUtils]: 94: Hoare triple {93786#true} assume !(~i~1 > 20); {93786#true} is VALID [2018-11-23 12:16:26,238 INFO L273 TraceCheckUtils]: 95: Hoare triple {93786#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93786#true} is VALID [2018-11-23 12:16:26,238 INFO L273 TraceCheckUtils]: 96: Hoare triple {93786#true} assume !!(~i~1 < 40); {93786#true} is VALID [2018-11-23 12:16:26,238 INFO L273 TraceCheckUtils]: 97: Hoare triple {93786#true} assume !(~i~1 > 20); {93786#true} is VALID [2018-11-23 12:16:26,238 INFO L273 TraceCheckUtils]: 98: Hoare triple {93786#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93786#true} is VALID [2018-11-23 12:16:26,238 INFO L273 TraceCheckUtils]: 99: Hoare triple {93786#true} assume !!(~i~1 < 40); {93786#true} is VALID [2018-11-23 12:16:26,238 INFO L273 TraceCheckUtils]: 100: Hoare triple {93786#true} assume !(~i~1 > 20); {93786#true} is VALID [2018-11-23 12:16:26,238 INFO L273 TraceCheckUtils]: 101: Hoare triple {93786#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93786#true} is VALID [2018-11-23 12:16:26,238 INFO L273 TraceCheckUtils]: 102: Hoare triple {93786#true} assume !!(~i~1 < 40); {93786#true} is VALID [2018-11-23 12:16:26,239 INFO L273 TraceCheckUtils]: 103: Hoare triple {93786#true} assume !(~i~1 > 20); {93786#true} is VALID [2018-11-23 12:16:26,239 INFO L273 TraceCheckUtils]: 104: Hoare triple {93786#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93786#true} is VALID [2018-11-23 12:16:26,239 INFO L273 TraceCheckUtils]: 105: Hoare triple {93786#true} assume !!(~i~1 < 40); {93786#true} is VALID [2018-11-23 12:16:26,239 INFO L273 TraceCheckUtils]: 106: Hoare triple {93786#true} assume !(~i~1 > 20); {93786#true} is VALID [2018-11-23 12:16:26,239 INFO L273 TraceCheckUtils]: 107: Hoare triple {93786#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93786#true} is VALID [2018-11-23 12:16:26,239 INFO L273 TraceCheckUtils]: 108: Hoare triple {93786#true} assume !!(~i~1 < 40); {93786#true} is VALID [2018-11-23 12:16:26,239 INFO L273 TraceCheckUtils]: 109: Hoare triple {93786#true} assume !(~i~1 > 20); {93786#true} is VALID [2018-11-23 12:16:26,239 INFO L273 TraceCheckUtils]: 110: Hoare triple {93786#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93786#true} is VALID [2018-11-23 12:16:26,239 INFO L273 TraceCheckUtils]: 111: Hoare triple {93786#true} assume !!(~i~1 < 40); {93786#true} is VALID [2018-11-23 12:16:26,239 INFO L273 TraceCheckUtils]: 112: Hoare triple {93786#true} assume !(~i~1 > 20); {93786#true} is VALID [2018-11-23 12:16:26,240 INFO L273 TraceCheckUtils]: 113: Hoare triple {93786#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93786#true} is VALID [2018-11-23 12:16:26,240 INFO L273 TraceCheckUtils]: 114: Hoare triple {93786#true} assume !!(~i~1 < 40); {93786#true} is VALID [2018-11-23 12:16:26,240 INFO L273 TraceCheckUtils]: 115: Hoare triple {93786#true} assume !(~i~1 > 20); {93786#true} is VALID [2018-11-23 12:16:26,240 INFO L273 TraceCheckUtils]: 116: Hoare triple {93786#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93786#true} is VALID [2018-11-23 12:16:26,240 INFO L273 TraceCheckUtils]: 117: Hoare triple {93786#true} assume !!(~i~1 < 40); {93786#true} is VALID [2018-11-23 12:16:26,240 INFO L273 TraceCheckUtils]: 118: Hoare triple {93786#true} assume !(~i~1 > 20); {93786#true} is VALID [2018-11-23 12:16:26,240 INFO L273 TraceCheckUtils]: 119: Hoare triple {93786#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93786#true} is VALID [2018-11-23 12:16:26,240 INFO L273 TraceCheckUtils]: 120: Hoare triple {93786#true} assume !!(~i~1 < 40); {93786#true} is VALID [2018-11-23 12:16:26,240 INFO L273 TraceCheckUtils]: 121: Hoare triple {93786#true} assume !(~i~1 > 20); {93786#true} is VALID [2018-11-23 12:16:26,241 INFO L273 TraceCheckUtils]: 122: Hoare triple {93786#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93786#true} is VALID [2018-11-23 12:16:26,241 INFO L273 TraceCheckUtils]: 123: Hoare triple {93786#true} assume !!(~i~1 < 40); {93786#true} is VALID [2018-11-23 12:16:26,241 INFO L273 TraceCheckUtils]: 124: Hoare triple {93786#true} assume !(~i~1 > 20); {93786#true} is VALID [2018-11-23 12:16:26,241 INFO L273 TraceCheckUtils]: 125: Hoare triple {93786#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93786#true} is VALID [2018-11-23 12:16:26,241 INFO L273 TraceCheckUtils]: 126: Hoare triple {93786#true} assume !!(~i~1 < 40); {93786#true} is VALID [2018-11-23 12:16:26,241 INFO L273 TraceCheckUtils]: 127: Hoare triple {93786#true} assume !(~i~1 > 20); {94172#(<= rangesum_~i~1 20)} is VALID [2018-11-23 12:16:26,242 INFO L273 TraceCheckUtils]: 128: Hoare triple {94172#(<= rangesum_~i~1 20)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {94176#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:16:26,242 INFO L273 TraceCheckUtils]: 129: Hoare triple {94176#(<= rangesum_~i~1 21)} assume !!(~i~1 < 40); {94176#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:16:26,243 INFO L273 TraceCheckUtils]: 130: Hoare triple {94176#(<= rangesum_~i~1 21)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {94176#(<= rangesum_~i~1 21)} is VALID [2018-11-23 12:16:26,243 INFO L273 TraceCheckUtils]: 131: Hoare triple {94176#(<= rangesum_~i~1 21)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {94186#(<= rangesum_~i~1 22)} is VALID [2018-11-23 12:16:26,243 INFO L273 TraceCheckUtils]: 132: Hoare triple {94186#(<= rangesum_~i~1 22)} assume !!(~i~1 < 40); {94186#(<= rangesum_~i~1 22)} is VALID [2018-11-23 12:16:26,244 INFO L273 TraceCheckUtils]: 133: Hoare triple {94186#(<= rangesum_~i~1 22)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {94186#(<= rangesum_~i~1 22)} is VALID [2018-11-23 12:16:26,244 INFO L273 TraceCheckUtils]: 134: Hoare triple {94186#(<= rangesum_~i~1 22)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {94196#(<= rangesum_~i~1 23)} is VALID [2018-11-23 12:16:26,244 INFO L273 TraceCheckUtils]: 135: Hoare triple {94196#(<= rangesum_~i~1 23)} assume !!(~i~1 < 40); {94196#(<= rangesum_~i~1 23)} is VALID [2018-11-23 12:16:26,245 INFO L273 TraceCheckUtils]: 136: Hoare triple {94196#(<= rangesum_~i~1 23)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {94196#(<= rangesum_~i~1 23)} is VALID [2018-11-23 12:16:26,246 INFO L273 TraceCheckUtils]: 137: Hoare triple {94196#(<= rangesum_~i~1 23)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {94206#(<= rangesum_~i~1 24)} is VALID [2018-11-23 12:16:26,246 INFO L273 TraceCheckUtils]: 138: Hoare triple {94206#(<= rangesum_~i~1 24)} assume !!(~i~1 < 40); {94206#(<= rangesum_~i~1 24)} is VALID [2018-11-23 12:16:26,247 INFO L273 TraceCheckUtils]: 139: Hoare triple {94206#(<= rangesum_~i~1 24)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {94206#(<= rangesum_~i~1 24)} is VALID [2018-11-23 12:16:26,247 INFO L273 TraceCheckUtils]: 140: Hoare triple {94206#(<= rangesum_~i~1 24)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {94216#(<= rangesum_~i~1 25)} is VALID [2018-11-23 12:16:26,248 INFO L273 TraceCheckUtils]: 141: Hoare triple {94216#(<= rangesum_~i~1 25)} assume !!(~i~1 < 40); {94216#(<= rangesum_~i~1 25)} is VALID [2018-11-23 12:16:26,248 INFO L273 TraceCheckUtils]: 142: Hoare triple {94216#(<= rangesum_~i~1 25)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {94216#(<= rangesum_~i~1 25)} is VALID [2018-11-23 12:16:26,249 INFO L273 TraceCheckUtils]: 143: Hoare triple {94216#(<= rangesum_~i~1 25)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {94226#(<= rangesum_~i~1 26)} is VALID [2018-11-23 12:16:26,250 INFO L273 TraceCheckUtils]: 144: Hoare triple {94226#(<= rangesum_~i~1 26)} assume !!(~i~1 < 40); {94226#(<= rangesum_~i~1 26)} is VALID [2018-11-23 12:16:26,250 INFO L273 TraceCheckUtils]: 145: Hoare triple {94226#(<= rangesum_~i~1 26)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {94226#(<= rangesum_~i~1 26)} is VALID [2018-11-23 12:16:26,251 INFO L273 TraceCheckUtils]: 146: Hoare triple {94226#(<= rangesum_~i~1 26)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {94236#(<= rangesum_~i~1 27)} is VALID [2018-11-23 12:16:26,251 INFO L273 TraceCheckUtils]: 147: Hoare triple {94236#(<= rangesum_~i~1 27)} assume !!(~i~1 < 40); {94236#(<= rangesum_~i~1 27)} is VALID [2018-11-23 12:16:26,252 INFO L273 TraceCheckUtils]: 148: Hoare triple {94236#(<= rangesum_~i~1 27)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {94236#(<= rangesum_~i~1 27)} is VALID [2018-11-23 12:16:26,252 INFO L273 TraceCheckUtils]: 149: Hoare triple {94236#(<= rangesum_~i~1 27)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {94246#(<= rangesum_~i~1 28)} is VALID [2018-11-23 12:16:26,253 INFO L273 TraceCheckUtils]: 150: Hoare triple {94246#(<= rangesum_~i~1 28)} assume !!(~i~1 < 40); {94246#(<= rangesum_~i~1 28)} is VALID [2018-11-23 12:16:26,253 INFO L273 TraceCheckUtils]: 151: Hoare triple {94246#(<= rangesum_~i~1 28)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {94246#(<= rangesum_~i~1 28)} is VALID [2018-11-23 12:16:26,254 INFO L273 TraceCheckUtils]: 152: Hoare triple {94246#(<= rangesum_~i~1 28)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {94256#(<= rangesum_~i~1 29)} is VALID [2018-11-23 12:16:26,255 INFO L273 TraceCheckUtils]: 153: Hoare triple {94256#(<= rangesum_~i~1 29)} assume !!(~i~1 < 40); {94256#(<= rangesum_~i~1 29)} is VALID [2018-11-23 12:16:26,255 INFO L273 TraceCheckUtils]: 154: Hoare triple {94256#(<= rangesum_~i~1 29)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {94256#(<= rangesum_~i~1 29)} is VALID [2018-11-23 12:16:26,256 INFO L273 TraceCheckUtils]: 155: Hoare triple {94256#(<= rangesum_~i~1 29)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {94266#(<= rangesum_~i~1 30)} is VALID [2018-11-23 12:16:26,256 INFO L273 TraceCheckUtils]: 156: Hoare triple {94266#(<= rangesum_~i~1 30)} assume !!(~i~1 < 40); {94266#(<= rangesum_~i~1 30)} is VALID [2018-11-23 12:16:26,257 INFO L273 TraceCheckUtils]: 157: Hoare triple {94266#(<= rangesum_~i~1 30)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {94266#(<= rangesum_~i~1 30)} is VALID [2018-11-23 12:16:26,258 INFO L273 TraceCheckUtils]: 158: Hoare triple {94266#(<= rangesum_~i~1 30)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {94276#(<= rangesum_~i~1 31)} is VALID [2018-11-23 12:16:26,258 INFO L273 TraceCheckUtils]: 159: Hoare triple {94276#(<= rangesum_~i~1 31)} assume !!(~i~1 < 40); {94276#(<= rangesum_~i~1 31)} is VALID [2018-11-23 12:16:26,259 INFO L273 TraceCheckUtils]: 160: Hoare triple {94276#(<= rangesum_~i~1 31)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {94276#(<= rangesum_~i~1 31)} is VALID [2018-11-23 12:16:26,259 INFO L273 TraceCheckUtils]: 161: Hoare triple {94276#(<= rangesum_~i~1 31)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {94286#(<= rangesum_~i~1 32)} is VALID [2018-11-23 12:16:26,260 INFO L273 TraceCheckUtils]: 162: Hoare triple {94286#(<= rangesum_~i~1 32)} assume !!(~i~1 < 40); {94286#(<= rangesum_~i~1 32)} is VALID [2018-11-23 12:16:26,260 INFO L273 TraceCheckUtils]: 163: Hoare triple {94286#(<= rangesum_~i~1 32)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {94286#(<= rangesum_~i~1 32)} is VALID [2018-11-23 12:16:26,261 INFO L273 TraceCheckUtils]: 164: Hoare triple {94286#(<= rangesum_~i~1 32)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {94296#(<= rangesum_~i~1 33)} is VALID [2018-11-23 12:16:26,262 INFO L273 TraceCheckUtils]: 165: Hoare triple {94296#(<= rangesum_~i~1 33)} assume !!(~i~1 < 40); {94296#(<= rangesum_~i~1 33)} is VALID [2018-11-23 12:16:26,262 INFO L273 TraceCheckUtils]: 166: Hoare triple {94296#(<= rangesum_~i~1 33)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {94296#(<= rangesum_~i~1 33)} is VALID [2018-11-23 12:16:26,263 INFO L273 TraceCheckUtils]: 167: Hoare triple {94296#(<= rangesum_~i~1 33)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {94306#(<= rangesum_~i~1 34)} is VALID [2018-11-23 12:16:26,263 INFO L273 TraceCheckUtils]: 168: Hoare triple {94306#(<= rangesum_~i~1 34)} assume !!(~i~1 < 40); {94306#(<= rangesum_~i~1 34)} is VALID [2018-11-23 12:16:26,264 INFO L273 TraceCheckUtils]: 169: Hoare triple {94306#(<= rangesum_~i~1 34)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {94306#(<= rangesum_~i~1 34)} is VALID [2018-11-23 12:16:26,264 INFO L273 TraceCheckUtils]: 170: Hoare triple {94306#(<= rangesum_~i~1 34)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {94316#(<= rangesum_~i~1 35)} is VALID [2018-11-23 12:16:26,265 INFO L273 TraceCheckUtils]: 171: Hoare triple {94316#(<= rangesum_~i~1 35)} assume !!(~i~1 < 40); {94316#(<= rangesum_~i~1 35)} is VALID [2018-11-23 12:16:26,265 INFO L273 TraceCheckUtils]: 172: Hoare triple {94316#(<= rangesum_~i~1 35)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {94316#(<= rangesum_~i~1 35)} is VALID [2018-11-23 12:16:26,266 INFO L273 TraceCheckUtils]: 173: Hoare triple {94316#(<= rangesum_~i~1 35)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {94326#(<= rangesum_~i~1 36)} is VALID [2018-11-23 12:16:26,267 INFO L273 TraceCheckUtils]: 174: Hoare triple {94326#(<= rangesum_~i~1 36)} assume !!(~i~1 < 40); {94326#(<= rangesum_~i~1 36)} is VALID [2018-11-23 12:16:26,267 INFO L273 TraceCheckUtils]: 175: Hoare triple {94326#(<= rangesum_~i~1 36)} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {94326#(<= rangesum_~i~1 36)} is VALID [2018-11-23 12:16:26,268 INFO L273 TraceCheckUtils]: 176: Hoare triple {94326#(<= rangesum_~i~1 36)} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {94336#(<= rangesum_~i~1 37)} is VALID [2018-11-23 12:16:26,269 INFO L273 TraceCheckUtils]: 177: Hoare triple {94336#(<= rangesum_~i~1 37)} assume !(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,269 INFO L273 TraceCheckUtils]: 178: Hoare triple {93787#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {93787#false} is VALID [2018-11-23 12:16:26,269 INFO L273 TraceCheckUtils]: 179: Hoare triple {93787#false} assume true; {93787#false} is VALID [2018-11-23 12:16:26,269 INFO L268 TraceCheckUtils]: 180: Hoare quadruple {93787#false} {93786#true} #84#return; {93787#false} is VALID [2018-11-23 12:16:26,269 INFO L273 TraceCheckUtils]: 181: Hoare triple {93787#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {93787#false} is VALID [2018-11-23 12:16:26,270 INFO L256 TraceCheckUtils]: 182: Hoare triple {93787#false} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {93787#false} is VALID [2018-11-23 12:16:26,270 INFO L273 TraceCheckUtils]: 183: Hoare triple {93787#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {93787#false} is VALID [2018-11-23 12:16:26,270 INFO L273 TraceCheckUtils]: 184: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,270 INFO L273 TraceCheckUtils]: 185: Hoare triple {93787#false} assume !(~i~1 > 20); {93787#false} is VALID [2018-11-23 12:16:26,270 INFO L273 TraceCheckUtils]: 186: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,271 INFO L273 TraceCheckUtils]: 187: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,271 INFO L273 TraceCheckUtils]: 188: Hoare triple {93787#false} assume !(~i~1 > 20); {93787#false} is VALID [2018-11-23 12:16:26,271 INFO L273 TraceCheckUtils]: 189: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,271 INFO L273 TraceCheckUtils]: 190: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,271 INFO L273 TraceCheckUtils]: 191: Hoare triple {93787#false} assume !(~i~1 > 20); {93787#false} is VALID [2018-11-23 12:16:26,271 INFO L273 TraceCheckUtils]: 192: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,272 INFO L273 TraceCheckUtils]: 193: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,272 INFO L273 TraceCheckUtils]: 194: Hoare triple {93787#false} assume !(~i~1 > 20); {93787#false} is VALID [2018-11-23 12:16:26,272 INFO L273 TraceCheckUtils]: 195: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,272 INFO L273 TraceCheckUtils]: 196: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,272 INFO L273 TraceCheckUtils]: 197: Hoare triple {93787#false} assume !(~i~1 > 20); {93787#false} is VALID [2018-11-23 12:16:26,272 INFO L273 TraceCheckUtils]: 198: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,273 INFO L273 TraceCheckUtils]: 199: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,273 INFO L273 TraceCheckUtils]: 200: Hoare triple {93787#false} assume !(~i~1 > 20); {93787#false} is VALID [2018-11-23 12:16:26,273 INFO L273 TraceCheckUtils]: 201: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,273 INFO L273 TraceCheckUtils]: 202: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,273 INFO L273 TraceCheckUtils]: 203: Hoare triple {93787#false} assume !(~i~1 > 20); {93787#false} is VALID [2018-11-23 12:16:26,274 INFO L273 TraceCheckUtils]: 204: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,274 INFO L273 TraceCheckUtils]: 205: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,274 INFO L273 TraceCheckUtils]: 206: Hoare triple {93787#false} assume !(~i~1 > 20); {93787#false} is VALID [2018-11-23 12:16:26,274 INFO L273 TraceCheckUtils]: 207: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,274 INFO L273 TraceCheckUtils]: 208: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,274 INFO L273 TraceCheckUtils]: 209: Hoare triple {93787#false} assume !(~i~1 > 20); {93787#false} is VALID [2018-11-23 12:16:26,274 INFO L273 TraceCheckUtils]: 210: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,274 INFO L273 TraceCheckUtils]: 211: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,274 INFO L273 TraceCheckUtils]: 212: Hoare triple {93787#false} assume !(~i~1 > 20); {93787#false} is VALID [2018-11-23 12:16:26,274 INFO L273 TraceCheckUtils]: 213: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,275 INFO L273 TraceCheckUtils]: 214: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,275 INFO L273 TraceCheckUtils]: 215: Hoare triple {93787#false} assume !(~i~1 > 20); {93787#false} is VALID [2018-11-23 12:16:26,275 INFO L273 TraceCheckUtils]: 216: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,275 INFO L273 TraceCheckUtils]: 217: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,275 INFO L273 TraceCheckUtils]: 218: Hoare triple {93787#false} assume !(~i~1 > 20); {93787#false} is VALID [2018-11-23 12:16:26,275 INFO L273 TraceCheckUtils]: 219: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,275 INFO L273 TraceCheckUtils]: 220: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,275 INFO L273 TraceCheckUtils]: 221: Hoare triple {93787#false} assume !(~i~1 > 20); {93787#false} is VALID [2018-11-23 12:16:26,275 INFO L273 TraceCheckUtils]: 222: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,275 INFO L273 TraceCheckUtils]: 223: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,276 INFO L273 TraceCheckUtils]: 224: Hoare triple {93787#false} assume !(~i~1 > 20); {93787#false} is VALID [2018-11-23 12:16:26,276 INFO L273 TraceCheckUtils]: 225: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,276 INFO L273 TraceCheckUtils]: 226: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,276 INFO L273 TraceCheckUtils]: 227: Hoare triple {93787#false} assume !(~i~1 > 20); {93787#false} is VALID [2018-11-23 12:16:26,276 INFO L273 TraceCheckUtils]: 228: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,276 INFO L273 TraceCheckUtils]: 229: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,276 INFO L273 TraceCheckUtils]: 230: Hoare triple {93787#false} assume !(~i~1 > 20); {93787#false} is VALID [2018-11-23 12:16:26,276 INFO L273 TraceCheckUtils]: 231: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,276 INFO L273 TraceCheckUtils]: 232: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,277 INFO L273 TraceCheckUtils]: 233: Hoare triple {93787#false} assume !(~i~1 > 20); {93787#false} is VALID [2018-11-23 12:16:26,277 INFO L273 TraceCheckUtils]: 234: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,277 INFO L273 TraceCheckUtils]: 235: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,277 INFO L273 TraceCheckUtils]: 236: Hoare triple {93787#false} assume !(~i~1 > 20); {93787#false} is VALID [2018-11-23 12:16:26,277 INFO L273 TraceCheckUtils]: 237: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,277 INFO L273 TraceCheckUtils]: 238: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,277 INFO L273 TraceCheckUtils]: 239: Hoare triple {93787#false} assume !(~i~1 > 20); {93787#false} is VALID [2018-11-23 12:16:26,277 INFO L273 TraceCheckUtils]: 240: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,277 INFO L273 TraceCheckUtils]: 241: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,277 INFO L273 TraceCheckUtils]: 242: Hoare triple {93787#false} assume !(~i~1 > 20); {93787#false} is VALID [2018-11-23 12:16:26,278 INFO L273 TraceCheckUtils]: 243: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,278 INFO L273 TraceCheckUtils]: 244: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,278 INFO L273 TraceCheckUtils]: 245: Hoare triple {93787#false} assume !(~i~1 > 20); {93787#false} is VALID [2018-11-23 12:16:26,278 INFO L273 TraceCheckUtils]: 246: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,278 INFO L273 TraceCheckUtils]: 247: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,278 INFO L273 TraceCheckUtils]: 248: Hoare triple {93787#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {93787#false} is VALID [2018-11-23 12:16:26,278 INFO L273 TraceCheckUtils]: 249: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,278 INFO L273 TraceCheckUtils]: 250: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,278 INFO L273 TraceCheckUtils]: 251: Hoare triple {93787#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {93787#false} is VALID [2018-11-23 12:16:26,278 INFO L273 TraceCheckUtils]: 252: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,279 INFO L273 TraceCheckUtils]: 253: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,279 INFO L273 TraceCheckUtils]: 254: Hoare triple {93787#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {93787#false} is VALID [2018-11-23 12:16:26,279 INFO L273 TraceCheckUtils]: 255: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,279 INFO L273 TraceCheckUtils]: 256: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,279 INFO L273 TraceCheckUtils]: 257: Hoare triple {93787#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {93787#false} is VALID [2018-11-23 12:16:26,279 INFO L273 TraceCheckUtils]: 258: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,279 INFO L273 TraceCheckUtils]: 259: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,279 INFO L273 TraceCheckUtils]: 260: Hoare triple {93787#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {93787#false} is VALID [2018-11-23 12:16:26,279 INFO L273 TraceCheckUtils]: 261: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,279 INFO L273 TraceCheckUtils]: 262: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,280 INFO L273 TraceCheckUtils]: 263: Hoare triple {93787#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {93787#false} is VALID [2018-11-23 12:16:26,280 INFO L273 TraceCheckUtils]: 264: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,280 INFO L273 TraceCheckUtils]: 265: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,280 INFO L273 TraceCheckUtils]: 266: Hoare triple {93787#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {93787#false} is VALID [2018-11-23 12:16:26,280 INFO L273 TraceCheckUtils]: 267: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,280 INFO L273 TraceCheckUtils]: 268: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,280 INFO L273 TraceCheckUtils]: 269: Hoare triple {93787#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {93787#false} is VALID [2018-11-23 12:16:26,280 INFO L273 TraceCheckUtils]: 270: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,280 INFO L273 TraceCheckUtils]: 271: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,281 INFO L273 TraceCheckUtils]: 272: Hoare triple {93787#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {93787#false} is VALID [2018-11-23 12:16:26,281 INFO L273 TraceCheckUtils]: 273: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,281 INFO L273 TraceCheckUtils]: 274: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,281 INFO L273 TraceCheckUtils]: 275: Hoare triple {93787#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {93787#false} is VALID [2018-11-23 12:16:26,281 INFO L273 TraceCheckUtils]: 276: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,281 INFO L273 TraceCheckUtils]: 277: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,281 INFO L273 TraceCheckUtils]: 278: Hoare triple {93787#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {93787#false} is VALID [2018-11-23 12:16:26,281 INFO L273 TraceCheckUtils]: 279: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,281 INFO L273 TraceCheckUtils]: 280: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,281 INFO L273 TraceCheckUtils]: 281: Hoare triple {93787#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {93787#false} is VALID [2018-11-23 12:16:26,282 INFO L273 TraceCheckUtils]: 282: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,282 INFO L273 TraceCheckUtils]: 283: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,282 INFO L273 TraceCheckUtils]: 284: Hoare triple {93787#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {93787#false} is VALID [2018-11-23 12:16:26,282 INFO L273 TraceCheckUtils]: 285: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,282 INFO L273 TraceCheckUtils]: 286: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,282 INFO L273 TraceCheckUtils]: 287: Hoare triple {93787#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {93787#false} is VALID [2018-11-23 12:16:26,282 INFO L273 TraceCheckUtils]: 288: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,282 INFO L273 TraceCheckUtils]: 289: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,282 INFO L273 TraceCheckUtils]: 290: Hoare triple {93787#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {93787#false} is VALID [2018-11-23 12:16:26,282 INFO L273 TraceCheckUtils]: 291: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,283 INFO L273 TraceCheckUtils]: 292: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,283 INFO L273 TraceCheckUtils]: 293: Hoare triple {93787#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {93787#false} is VALID [2018-11-23 12:16:26,283 INFO L273 TraceCheckUtils]: 294: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,283 INFO L273 TraceCheckUtils]: 295: Hoare triple {93787#false} assume !(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,283 INFO L273 TraceCheckUtils]: 296: Hoare triple {93787#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {93787#false} is VALID [2018-11-23 12:16:26,283 INFO L273 TraceCheckUtils]: 297: Hoare triple {93787#false} assume true; {93787#false} is VALID [2018-11-23 12:16:26,283 INFO L268 TraceCheckUtils]: 298: Hoare quadruple {93787#false} {93787#false} #86#return; {93787#false} is VALID [2018-11-23 12:16:26,283 INFO L273 TraceCheckUtils]: 299: Hoare triple {93787#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {93787#false} is VALID [2018-11-23 12:16:26,283 INFO L273 TraceCheckUtils]: 300: Hoare triple {93787#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {93787#false} is VALID [2018-11-23 12:16:26,284 INFO L273 TraceCheckUtils]: 301: Hoare triple {93787#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {93787#false} is VALID [2018-11-23 12:16:26,284 INFO L273 TraceCheckUtils]: 302: Hoare triple {93787#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {93787#false} is VALID [2018-11-23 12:16:26,284 INFO L273 TraceCheckUtils]: 303: Hoare triple {93787#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {93787#false} is VALID [2018-11-23 12:16:26,284 INFO L273 TraceCheckUtils]: 304: Hoare triple {93787#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {93787#false} is VALID [2018-11-23 12:16:26,284 INFO L273 TraceCheckUtils]: 305: Hoare triple {93787#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {93787#false} is VALID [2018-11-23 12:16:26,284 INFO L273 TraceCheckUtils]: 306: Hoare triple {93787#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {93787#false} is VALID [2018-11-23 12:16:26,284 INFO L273 TraceCheckUtils]: 307: Hoare triple {93787#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {93787#false} is VALID [2018-11-23 12:16:26,284 INFO L273 TraceCheckUtils]: 308: Hoare triple {93787#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {93787#false} is VALID [2018-11-23 12:16:26,284 INFO L273 TraceCheckUtils]: 309: Hoare triple {93787#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {93787#false} is VALID [2018-11-23 12:16:26,284 INFO L273 TraceCheckUtils]: 310: Hoare triple {93787#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {93787#false} is VALID [2018-11-23 12:16:26,285 INFO L273 TraceCheckUtils]: 311: Hoare triple {93787#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {93787#false} is VALID [2018-11-23 12:16:26,285 INFO L273 TraceCheckUtils]: 312: Hoare triple {93787#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {93787#false} is VALID [2018-11-23 12:16:26,285 INFO L273 TraceCheckUtils]: 313: Hoare triple {93787#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {93787#false} is VALID [2018-11-23 12:16:26,285 INFO L273 TraceCheckUtils]: 314: Hoare triple {93787#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {93787#false} is VALID [2018-11-23 12:16:26,285 INFO L273 TraceCheckUtils]: 315: Hoare triple {93787#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {93787#false} is VALID [2018-11-23 12:16:26,285 INFO L273 TraceCheckUtils]: 316: Hoare triple {93787#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {93787#false} is VALID [2018-11-23 12:16:26,285 INFO L273 TraceCheckUtils]: 317: Hoare triple {93787#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {93787#false} is VALID [2018-11-23 12:16:26,285 INFO L273 TraceCheckUtils]: 318: Hoare triple {93787#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {93787#false} is VALID [2018-11-23 12:16:26,285 INFO L273 TraceCheckUtils]: 319: Hoare triple {93787#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {93787#false} is VALID [2018-11-23 12:16:26,285 INFO L273 TraceCheckUtils]: 320: Hoare triple {93787#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {93787#false} is VALID [2018-11-23 12:16:26,286 INFO L273 TraceCheckUtils]: 321: Hoare triple {93787#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {93787#false} is VALID [2018-11-23 12:16:26,286 INFO L273 TraceCheckUtils]: 322: Hoare triple {93787#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {93787#false} is VALID [2018-11-23 12:16:26,286 INFO L273 TraceCheckUtils]: 323: Hoare triple {93787#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {93787#false} is VALID [2018-11-23 12:16:26,286 INFO L273 TraceCheckUtils]: 324: Hoare triple {93787#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {93787#false} is VALID [2018-11-23 12:16:26,286 INFO L273 TraceCheckUtils]: 325: Hoare triple {93787#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {93787#false} is VALID [2018-11-23 12:16:26,286 INFO L273 TraceCheckUtils]: 326: Hoare triple {93787#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {93787#false} is VALID [2018-11-23 12:16:26,286 INFO L273 TraceCheckUtils]: 327: Hoare triple {93787#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {93787#false} is VALID [2018-11-23 12:16:26,286 INFO L273 TraceCheckUtils]: 328: Hoare triple {93787#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {93787#false} is VALID [2018-11-23 12:16:26,286 INFO L273 TraceCheckUtils]: 329: Hoare triple {93787#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {93787#false} is VALID [2018-11-23 12:16:26,286 INFO L273 TraceCheckUtils]: 330: Hoare triple {93787#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {93787#false} is VALID [2018-11-23 12:16:26,287 INFO L273 TraceCheckUtils]: 331: Hoare triple {93787#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {93787#false} is VALID [2018-11-23 12:16:26,287 INFO L273 TraceCheckUtils]: 332: Hoare triple {93787#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {93787#false} is VALID [2018-11-23 12:16:26,287 INFO L273 TraceCheckUtils]: 333: Hoare triple {93787#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {93787#false} is VALID [2018-11-23 12:16:26,287 INFO L273 TraceCheckUtils]: 334: Hoare triple {93787#false} assume !(~i~2 < 39); {93787#false} is VALID [2018-11-23 12:16:26,287 INFO L273 TraceCheckUtils]: 335: Hoare triple {93787#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {93787#false} is VALID [2018-11-23 12:16:26,287 INFO L256 TraceCheckUtils]: 336: Hoare triple {93787#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {93787#false} is VALID [2018-11-23 12:16:26,287 INFO L273 TraceCheckUtils]: 337: Hoare triple {93787#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {93787#false} is VALID [2018-11-23 12:16:26,287 INFO L273 TraceCheckUtils]: 338: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,287 INFO L273 TraceCheckUtils]: 339: Hoare triple {93787#false} assume !(~i~1 > 20); {93787#false} is VALID [2018-11-23 12:16:26,287 INFO L273 TraceCheckUtils]: 340: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,288 INFO L273 TraceCheckUtils]: 341: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,288 INFO L273 TraceCheckUtils]: 342: Hoare triple {93787#false} assume !(~i~1 > 20); {93787#false} is VALID [2018-11-23 12:16:26,288 INFO L273 TraceCheckUtils]: 343: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,288 INFO L273 TraceCheckUtils]: 344: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,288 INFO L273 TraceCheckUtils]: 345: Hoare triple {93787#false} assume !(~i~1 > 20); {93787#false} is VALID [2018-11-23 12:16:26,288 INFO L273 TraceCheckUtils]: 346: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,288 INFO L273 TraceCheckUtils]: 347: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,288 INFO L273 TraceCheckUtils]: 348: Hoare triple {93787#false} assume !(~i~1 > 20); {93787#false} is VALID [2018-11-23 12:16:26,288 INFO L273 TraceCheckUtils]: 349: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,289 INFO L273 TraceCheckUtils]: 350: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,289 INFO L273 TraceCheckUtils]: 351: Hoare triple {93787#false} assume !(~i~1 > 20); {93787#false} is VALID [2018-11-23 12:16:26,289 INFO L273 TraceCheckUtils]: 352: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,289 INFO L273 TraceCheckUtils]: 353: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,289 INFO L273 TraceCheckUtils]: 354: Hoare triple {93787#false} assume !(~i~1 > 20); {93787#false} is VALID [2018-11-23 12:16:26,289 INFO L273 TraceCheckUtils]: 355: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,289 INFO L273 TraceCheckUtils]: 356: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,289 INFO L273 TraceCheckUtils]: 357: Hoare triple {93787#false} assume !(~i~1 > 20); {93787#false} is VALID [2018-11-23 12:16:26,289 INFO L273 TraceCheckUtils]: 358: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,289 INFO L273 TraceCheckUtils]: 359: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,290 INFO L273 TraceCheckUtils]: 360: Hoare triple {93787#false} assume !(~i~1 > 20); {93787#false} is VALID [2018-11-23 12:16:26,290 INFO L273 TraceCheckUtils]: 361: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,290 INFO L273 TraceCheckUtils]: 362: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,290 INFO L273 TraceCheckUtils]: 363: Hoare triple {93787#false} assume !(~i~1 > 20); {93787#false} is VALID [2018-11-23 12:16:26,290 INFO L273 TraceCheckUtils]: 364: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,290 INFO L273 TraceCheckUtils]: 365: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,290 INFO L273 TraceCheckUtils]: 366: Hoare triple {93787#false} assume !(~i~1 > 20); {93787#false} is VALID [2018-11-23 12:16:26,290 INFO L273 TraceCheckUtils]: 367: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,290 INFO L273 TraceCheckUtils]: 368: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,290 INFO L273 TraceCheckUtils]: 369: Hoare triple {93787#false} assume !(~i~1 > 20); {93787#false} is VALID [2018-11-23 12:16:26,291 INFO L273 TraceCheckUtils]: 370: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,291 INFO L273 TraceCheckUtils]: 371: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,291 INFO L273 TraceCheckUtils]: 372: Hoare triple {93787#false} assume !(~i~1 > 20); {93787#false} is VALID [2018-11-23 12:16:26,291 INFO L273 TraceCheckUtils]: 373: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,291 INFO L273 TraceCheckUtils]: 374: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,291 INFO L273 TraceCheckUtils]: 375: Hoare triple {93787#false} assume !(~i~1 > 20); {93787#false} is VALID [2018-11-23 12:16:26,291 INFO L273 TraceCheckUtils]: 376: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,291 INFO L273 TraceCheckUtils]: 377: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,291 INFO L273 TraceCheckUtils]: 378: Hoare triple {93787#false} assume !(~i~1 > 20); {93787#false} is VALID [2018-11-23 12:16:26,291 INFO L273 TraceCheckUtils]: 379: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,292 INFO L273 TraceCheckUtils]: 380: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,292 INFO L273 TraceCheckUtils]: 381: Hoare triple {93787#false} assume !(~i~1 > 20); {93787#false} is VALID [2018-11-23 12:16:26,292 INFO L273 TraceCheckUtils]: 382: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,292 INFO L273 TraceCheckUtils]: 383: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,292 INFO L273 TraceCheckUtils]: 384: Hoare triple {93787#false} assume !(~i~1 > 20); {93787#false} is VALID [2018-11-23 12:16:26,292 INFO L273 TraceCheckUtils]: 385: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,292 INFO L273 TraceCheckUtils]: 386: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,292 INFO L273 TraceCheckUtils]: 387: Hoare triple {93787#false} assume !(~i~1 > 20); {93787#false} is VALID [2018-11-23 12:16:26,292 INFO L273 TraceCheckUtils]: 388: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,292 INFO L273 TraceCheckUtils]: 389: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,293 INFO L273 TraceCheckUtils]: 390: Hoare triple {93787#false} assume !(~i~1 > 20); {93787#false} is VALID [2018-11-23 12:16:26,293 INFO L273 TraceCheckUtils]: 391: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,293 INFO L273 TraceCheckUtils]: 392: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,293 INFO L273 TraceCheckUtils]: 393: Hoare triple {93787#false} assume !(~i~1 > 20); {93787#false} is VALID [2018-11-23 12:16:26,293 INFO L273 TraceCheckUtils]: 394: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,293 INFO L273 TraceCheckUtils]: 395: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,293 INFO L273 TraceCheckUtils]: 396: Hoare triple {93787#false} assume !(~i~1 > 20); {93787#false} is VALID [2018-11-23 12:16:26,293 INFO L273 TraceCheckUtils]: 397: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,293 INFO L273 TraceCheckUtils]: 398: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,294 INFO L273 TraceCheckUtils]: 399: Hoare triple {93787#false} assume !(~i~1 > 20); {93787#false} is VALID [2018-11-23 12:16:26,294 INFO L273 TraceCheckUtils]: 400: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,294 INFO L273 TraceCheckUtils]: 401: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,294 INFO L273 TraceCheckUtils]: 402: Hoare triple {93787#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {93787#false} is VALID [2018-11-23 12:16:26,294 INFO L273 TraceCheckUtils]: 403: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,294 INFO L273 TraceCheckUtils]: 404: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,294 INFO L273 TraceCheckUtils]: 405: Hoare triple {93787#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {93787#false} is VALID [2018-11-23 12:16:26,294 INFO L273 TraceCheckUtils]: 406: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,294 INFO L273 TraceCheckUtils]: 407: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,294 INFO L273 TraceCheckUtils]: 408: Hoare triple {93787#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {93787#false} is VALID [2018-11-23 12:16:26,295 INFO L273 TraceCheckUtils]: 409: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,295 INFO L273 TraceCheckUtils]: 410: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,295 INFO L273 TraceCheckUtils]: 411: Hoare triple {93787#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {93787#false} is VALID [2018-11-23 12:16:26,295 INFO L273 TraceCheckUtils]: 412: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,295 INFO L273 TraceCheckUtils]: 413: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,295 INFO L273 TraceCheckUtils]: 414: Hoare triple {93787#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {93787#false} is VALID [2018-11-23 12:16:26,295 INFO L273 TraceCheckUtils]: 415: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,295 INFO L273 TraceCheckUtils]: 416: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,295 INFO L273 TraceCheckUtils]: 417: Hoare triple {93787#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {93787#false} is VALID [2018-11-23 12:16:26,295 INFO L273 TraceCheckUtils]: 418: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,296 INFO L273 TraceCheckUtils]: 419: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,296 INFO L273 TraceCheckUtils]: 420: Hoare triple {93787#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {93787#false} is VALID [2018-11-23 12:16:26,296 INFO L273 TraceCheckUtils]: 421: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,296 INFO L273 TraceCheckUtils]: 422: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,296 INFO L273 TraceCheckUtils]: 423: Hoare triple {93787#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {93787#false} is VALID [2018-11-23 12:16:26,296 INFO L273 TraceCheckUtils]: 424: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,296 INFO L273 TraceCheckUtils]: 425: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,296 INFO L273 TraceCheckUtils]: 426: Hoare triple {93787#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {93787#false} is VALID [2018-11-23 12:16:26,296 INFO L273 TraceCheckUtils]: 427: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,296 INFO L273 TraceCheckUtils]: 428: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,297 INFO L273 TraceCheckUtils]: 429: Hoare triple {93787#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {93787#false} is VALID [2018-11-23 12:16:26,297 INFO L273 TraceCheckUtils]: 430: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,297 INFO L273 TraceCheckUtils]: 431: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,297 INFO L273 TraceCheckUtils]: 432: Hoare triple {93787#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {93787#false} is VALID [2018-11-23 12:16:26,297 INFO L273 TraceCheckUtils]: 433: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,297 INFO L273 TraceCheckUtils]: 434: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,297 INFO L273 TraceCheckUtils]: 435: Hoare triple {93787#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {93787#false} is VALID [2018-11-23 12:16:26,297 INFO L273 TraceCheckUtils]: 436: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,297 INFO L273 TraceCheckUtils]: 437: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,297 INFO L273 TraceCheckUtils]: 438: Hoare triple {93787#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {93787#false} is VALID [2018-11-23 12:16:26,298 INFO L273 TraceCheckUtils]: 439: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,298 INFO L273 TraceCheckUtils]: 440: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,298 INFO L273 TraceCheckUtils]: 441: Hoare triple {93787#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {93787#false} is VALID [2018-11-23 12:16:26,298 INFO L273 TraceCheckUtils]: 442: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,298 INFO L273 TraceCheckUtils]: 443: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,298 INFO L273 TraceCheckUtils]: 444: Hoare triple {93787#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {93787#false} is VALID [2018-11-23 12:16:26,298 INFO L273 TraceCheckUtils]: 445: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,298 INFO L273 TraceCheckUtils]: 446: Hoare triple {93787#false} assume !!(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,298 INFO L273 TraceCheckUtils]: 447: Hoare triple {93787#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {93787#false} is VALID [2018-11-23 12:16:26,298 INFO L273 TraceCheckUtils]: 448: Hoare triple {93787#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {93787#false} is VALID [2018-11-23 12:16:26,299 INFO L273 TraceCheckUtils]: 449: Hoare triple {93787#false} assume !(~i~1 < 40); {93787#false} is VALID [2018-11-23 12:16:26,299 INFO L273 TraceCheckUtils]: 450: Hoare triple {93787#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {93787#false} is VALID [2018-11-23 12:16:26,299 INFO L273 TraceCheckUtils]: 451: Hoare triple {93787#false} assume true; {93787#false} is VALID [2018-11-23 12:16:26,299 INFO L268 TraceCheckUtils]: 452: Hoare quadruple {93787#false} {93787#false} #88#return; {93787#false} is VALID [2018-11-23 12:16:26,299 INFO L273 TraceCheckUtils]: 453: Hoare triple {93787#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {93787#false} is VALID [2018-11-23 12:16:26,299 INFO L273 TraceCheckUtils]: 454: Hoare triple {93787#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {93787#false} is VALID [2018-11-23 12:16:26,299 INFO L273 TraceCheckUtils]: 455: Hoare triple {93787#false} assume !false; {93787#false} is VALID [2018-11-23 12:16:26,371 INFO L134 CoverageAnalysis]: Checked inductivity of 19628 backedges. 9399 proven. 392 refuted. 0 times theorem prover too weak. 9837 trivial. 0 not checked. [2018-11-23 12:16:26,391 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:16:26,391 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [20] total 20 [2018-11-23 12:16:26,391 INFO L78 Accepts]: Start accepts. Automaton has 20 states. Word has length 456 [2018-11-23 12:16:26,391 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:16:26,392 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 20 states. [2018-11-23 12:16:26,487 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 92 edges. 92 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:16:26,487 INFO L459 AbstractCegarLoop]: Interpolant automaton has 20 states [2018-11-23 12:16:26,487 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2018-11-23 12:16:26,488 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=190, Invalid=190, Unknown=0, NotChecked=0, Total=380 [2018-11-23 12:16:26,488 INFO L87 Difference]: Start difference. First operand 225 states and 246 transitions. Second operand 20 states. [2018-11-23 12:16:26,875 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:26,876 INFO L93 Difference]: Finished difference Result 390 states and 436 transitions. [2018-11-23 12:16:26,876 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2018-11-23 12:16:26,876 INFO L78 Accepts]: Start accepts. Automaton has 20 states. Word has length 456 [2018-11-23 12:16:26,876 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:16:26,876 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 20 states. [2018-11-23 12:16:26,877 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 135 transitions. [2018-11-23 12:16:26,877 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 20 states. [2018-11-23 12:16:26,878 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 135 transitions. [2018-11-23 12:16:26,878 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 20 states and 135 transitions. [2018-11-23 12:16:27,001 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 135 edges. 135 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:16:27,006 INFO L225 Difference]: With dead ends: 390 [2018-11-23 12:16:27,006 INFO L226 Difference]: Without dead ends: 230 [2018-11-23 12:16:27,007 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 455 GetRequests, 437 SyntacticMatches, 0 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=190, Invalid=190, Unknown=0, NotChecked=0, Total=380 [2018-11-23 12:16:27,007 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 230 states. [2018-11-23 12:16:27,127 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 230 to 228. [2018-11-23 12:16:27,128 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:16:27,128 INFO L82 GeneralOperation]: Start isEquivalent. First operand 230 states. Second operand 228 states. [2018-11-23 12:16:27,128 INFO L74 IsIncluded]: Start isIncluded. First operand 230 states. Second operand 228 states. [2018-11-23 12:16:27,128 INFO L87 Difference]: Start difference. First operand 230 states. Second operand 228 states. [2018-11-23 12:16:27,132 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:27,132 INFO L93 Difference]: Finished difference Result 230 states and 253 transitions. [2018-11-23 12:16:27,132 INFO L276 IsEmpty]: Start isEmpty. Operand 230 states and 253 transitions. [2018-11-23 12:16:27,133 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:27,133 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:27,133 INFO L74 IsIncluded]: Start isIncluded. First operand 228 states. Second operand 230 states. [2018-11-23 12:16:27,133 INFO L87 Difference]: Start difference. First operand 228 states. Second operand 230 states. [2018-11-23 12:16:27,136 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:27,137 INFO L93 Difference]: Finished difference Result 230 states and 253 transitions. [2018-11-23 12:16:27,137 INFO L276 IsEmpty]: Start isEmpty. Operand 230 states and 253 transitions. [2018-11-23 12:16:27,137 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:27,137 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:27,137 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:16:27,137 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:16:27,137 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 228 states. [2018-11-23 12:16:27,141 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 228 states to 228 states and 250 transitions. [2018-11-23 12:16:27,141 INFO L78 Accepts]: Start accepts. Automaton has 228 states and 250 transitions. Word has length 456 [2018-11-23 12:16:27,141 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:16:27,141 INFO L480 AbstractCegarLoop]: Abstraction has 228 states and 250 transitions. [2018-11-23 12:16:27,141 INFO L481 AbstractCegarLoop]: Interpolant automaton has 20 states. [2018-11-23 12:16:27,141 INFO L276 IsEmpty]: Start isEmpty. Operand 228 states and 250 transitions. [2018-11-23 12:16:27,143 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 466 [2018-11-23 12:16:27,144 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:16:27,144 INFO L402 BasicCegarLoop]: trace histogram [114, 114, 63, 51, 26, 26, 17, 17, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:16:27,144 INFO L423 AbstractCegarLoop]: === Iteration 71 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:16:27,144 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:16:27,144 INFO L82 PathProgramCache]: Analyzing trace with hash -989552224, now seen corresponding path program 66 times [2018-11-23 12:16:27,144 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:16:27,144 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:16:27,145 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:27,145 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:16:27,145 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:27,156 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:16:27,157 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:16:27,157 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 72 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 72 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:16:27,165 INFO L103 rtionOrderModulation]: Keeping assertion order MIX_INSIDE_OUTSIDE [2018-11-23 12:16:35,311 INFO L249 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 37 check-sat command(s) [2018-11-23 12:16:35,312 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:16:35,384 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:35,387 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:16:35,932 INFO L256 TraceCheckUtils]: 0: Hoare triple {96498#true} call ULTIMATE.init(); {96498#true} is VALID [2018-11-23 12:16:35,933 INFO L273 TraceCheckUtils]: 1: Hoare triple {96498#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {96498#true} is VALID [2018-11-23 12:16:35,933 INFO L273 TraceCheckUtils]: 2: Hoare triple {96498#true} assume true; {96498#true} is VALID [2018-11-23 12:16:35,933 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {96498#true} {96498#true} #78#return; {96498#true} is VALID [2018-11-23 12:16:35,933 INFO L256 TraceCheckUtils]: 4: Hoare triple {96498#true} call #t~ret12 := main(); {96498#true} is VALID [2018-11-23 12:16:35,933 INFO L273 TraceCheckUtils]: 5: Hoare triple {96498#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {96498#true} is VALID [2018-11-23 12:16:35,934 INFO L256 TraceCheckUtils]: 6: Hoare triple {96498#true} call init_nondet(~#x~0.base, ~#x~0.offset); {96498#true} is VALID [2018-11-23 12:16:35,934 INFO L273 TraceCheckUtils]: 7: Hoare triple {96498#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {96498#true} is VALID [2018-11-23 12:16:35,934 INFO L273 TraceCheckUtils]: 8: Hoare triple {96498#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {96498#true} is VALID [2018-11-23 12:16:35,934 INFO L273 TraceCheckUtils]: 9: Hoare triple {96498#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {96498#true} is VALID [2018-11-23 12:16:35,934 INFO L273 TraceCheckUtils]: 10: Hoare triple {96498#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {96498#true} is VALID [2018-11-23 12:16:35,934 INFO L273 TraceCheckUtils]: 11: Hoare triple {96498#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {96498#true} is VALID [2018-11-23 12:16:35,935 INFO L273 TraceCheckUtils]: 12: Hoare triple {96498#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {96498#true} is VALID [2018-11-23 12:16:35,935 INFO L273 TraceCheckUtils]: 13: Hoare triple {96498#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {96498#true} is VALID [2018-11-23 12:16:35,935 INFO L273 TraceCheckUtils]: 14: Hoare triple {96498#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {96498#true} is VALID [2018-11-23 12:16:35,935 INFO L273 TraceCheckUtils]: 15: Hoare triple {96498#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {96498#true} is VALID [2018-11-23 12:16:35,935 INFO L273 TraceCheckUtils]: 16: Hoare triple {96498#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {96498#true} is VALID [2018-11-23 12:16:35,935 INFO L273 TraceCheckUtils]: 17: Hoare triple {96498#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {96498#true} is VALID [2018-11-23 12:16:35,935 INFO L273 TraceCheckUtils]: 18: Hoare triple {96498#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {96498#true} is VALID [2018-11-23 12:16:35,935 INFO L273 TraceCheckUtils]: 19: Hoare triple {96498#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {96498#true} is VALID [2018-11-23 12:16:35,936 INFO L273 TraceCheckUtils]: 20: Hoare triple {96498#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {96498#true} is VALID [2018-11-23 12:16:35,936 INFO L273 TraceCheckUtils]: 21: Hoare triple {96498#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {96498#true} is VALID [2018-11-23 12:16:35,936 INFO L273 TraceCheckUtils]: 22: Hoare triple {96498#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {96498#true} is VALID [2018-11-23 12:16:35,936 INFO L273 TraceCheckUtils]: 23: Hoare triple {96498#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {96498#true} is VALID [2018-11-23 12:16:35,936 INFO L273 TraceCheckUtils]: 24: Hoare triple {96498#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {96498#true} is VALID [2018-11-23 12:16:35,936 INFO L273 TraceCheckUtils]: 25: Hoare triple {96498#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {96498#true} is VALID [2018-11-23 12:16:35,936 INFO L273 TraceCheckUtils]: 26: Hoare triple {96498#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {96498#true} is VALID [2018-11-23 12:16:35,936 INFO L273 TraceCheckUtils]: 27: Hoare triple {96498#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {96498#true} is VALID [2018-11-23 12:16:35,936 INFO L273 TraceCheckUtils]: 28: Hoare triple {96498#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {96498#true} is VALID [2018-11-23 12:16:35,936 INFO L273 TraceCheckUtils]: 29: Hoare triple {96498#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {96498#true} is VALID [2018-11-23 12:16:35,937 INFO L273 TraceCheckUtils]: 30: Hoare triple {96498#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {96498#true} is VALID [2018-11-23 12:16:35,937 INFO L273 TraceCheckUtils]: 31: Hoare triple {96498#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {96498#true} is VALID [2018-11-23 12:16:35,937 INFO L273 TraceCheckUtils]: 32: Hoare triple {96498#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {96498#true} is VALID [2018-11-23 12:16:35,937 INFO L273 TraceCheckUtils]: 33: Hoare triple {96498#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {96498#true} is VALID [2018-11-23 12:16:35,937 INFO L273 TraceCheckUtils]: 34: Hoare triple {96498#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {96498#true} is VALID [2018-11-23 12:16:35,937 INFO L273 TraceCheckUtils]: 35: Hoare triple {96498#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {96498#true} is VALID [2018-11-23 12:16:35,937 INFO L273 TraceCheckUtils]: 36: Hoare triple {96498#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {96498#true} is VALID [2018-11-23 12:16:35,937 INFO L273 TraceCheckUtils]: 37: Hoare triple {96498#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {96498#true} is VALID [2018-11-23 12:16:35,937 INFO L273 TraceCheckUtils]: 38: Hoare triple {96498#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {96498#true} is VALID [2018-11-23 12:16:35,937 INFO L273 TraceCheckUtils]: 39: Hoare triple {96498#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {96498#true} is VALID [2018-11-23 12:16:35,938 INFO L273 TraceCheckUtils]: 40: Hoare triple {96498#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {96498#true} is VALID [2018-11-23 12:16:35,938 INFO L273 TraceCheckUtils]: 41: Hoare triple {96498#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {96498#true} is VALID [2018-11-23 12:16:35,938 INFO L273 TraceCheckUtils]: 42: Hoare triple {96498#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {96498#true} is VALID [2018-11-23 12:16:35,938 INFO L273 TraceCheckUtils]: 43: Hoare triple {96498#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {96498#true} is VALID [2018-11-23 12:16:35,938 INFO L273 TraceCheckUtils]: 44: Hoare triple {96498#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {96498#true} is VALID [2018-11-23 12:16:35,938 INFO L273 TraceCheckUtils]: 45: Hoare triple {96498#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {96498#true} is VALID [2018-11-23 12:16:35,938 INFO L273 TraceCheckUtils]: 46: Hoare triple {96498#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {96498#true} is VALID [2018-11-23 12:16:35,938 INFO L273 TraceCheckUtils]: 47: Hoare triple {96498#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {96498#true} is VALID [2018-11-23 12:16:35,938 INFO L273 TraceCheckUtils]: 48: Hoare triple {96498#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {96498#true} is VALID [2018-11-23 12:16:35,938 INFO L273 TraceCheckUtils]: 49: Hoare triple {96498#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {96498#true} is VALID [2018-11-23 12:16:35,939 INFO L273 TraceCheckUtils]: 50: Hoare triple {96498#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {96498#true} is VALID [2018-11-23 12:16:35,939 INFO L273 TraceCheckUtils]: 51: Hoare triple {96498#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {96498#true} is VALID [2018-11-23 12:16:35,939 INFO L273 TraceCheckUtils]: 52: Hoare triple {96498#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {96498#true} is VALID [2018-11-23 12:16:35,939 INFO L273 TraceCheckUtils]: 53: Hoare triple {96498#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {96498#true} is VALID [2018-11-23 12:16:35,939 INFO L273 TraceCheckUtils]: 54: Hoare triple {96498#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {96498#true} is VALID [2018-11-23 12:16:35,939 INFO L273 TraceCheckUtils]: 55: Hoare triple {96498#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {96498#true} is VALID [2018-11-23 12:16:35,939 INFO L273 TraceCheckUtils]: 56: Hoare triple {96498#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {96498#true} is VALID [2018-11-23 12:16:35,939 INFO L273 TraceCheckUtils]: 57: Hoare triple {96498#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {96498#true} is VALID [2018-11-23 12:16:35,939 INFO L273 TraceCheckUtils]: 58: Hoare triple {96498#true} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {96498#true} is VALID [2018-11-23 12:16:35,939 INFO L273 TraceCheckUtils]: 59: Hoare triple {96498#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {96498#true} is VALID [2018-11-23 12:16:35,940 INFO L273 TraceCheckUtils]: 60: Hoare triple {96498#true} assume !(~i~0 < 40); {96498#true} is VALID [2018-11-23 12:16:35,940 INFO L273 TraceCheckUtils]: 61: Hoare triple {96498#true} assume true; {96498#true} is VALID [2018-11-23 12:16:35,940 INFO L268 TraceCheckUtils]: 62: Hoare quadruple {96498#true} {96498#true} #82#return; {96498#true} is VALID [2018-11-23 12:16:35,940 INFO L273 TraceCheckUtils]: 63: Hoare triple {96498#true} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {96498#true} is VALID [2018-11-23 12:16:35,940 INFO L256 TraceCheckUtils]: 64: Hoare triple {96498#true} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {96498#true} is VALID [2018-11-23 12:16:35,940 INFO L273 TraceCheckUtils]: 65: Hoare triple {96498#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {96498#true} is VALID [2018-11-23 12:16:35,940 INFO L273 TraceCheckUtils]: 66: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,940 INFO L273 TraceCheckUtils]: 67: Hoare triple {96498#true} assume !(~i~1 > 20); {96498#true} is VALID [2018-11-23 12:16:35,940 INFO L273 TraceCheckUtils]: 68: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,941 INFO L273 TraceCheckUtils]: 69: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,941 INFO L273 TraceCheckUtils]: 70: Hoare triple {96498#true} assume !(~i~1 > 20); {96498#true} is VALID [2018-11-23 12:16:35,941 INFO L273 TraceCheckUtils]: 71: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,941 INFO L273 TraceCheckUtils]: 72: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,941 INFO L273 TraceCheckUtils]: 73: Hoare triple {96498#true} assume !(~i~1 > 20); {96498#true} is VALID [2018-11-23 12:16:35,941 INFO L273 TraceCheckUtils]: 74: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,941 INFO L273 TraceCheckUtils]: 75: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,941 INFO L273 TraceCheckUtils]: 76: Hoare triple {96498#true} assume !(~i~1 > 20); {96498#true} is VALID [2018-11-23 12:16:35,941 INFO L273 TraceCheckUtils]: 77: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,941 INFO L273 TraceCheckUtils]: 78: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,942 INFO L273 TraceCheckUtils]: 79: Hoare triple {96498#true} assume !(~i~1 > 20); {96498#true} is VALID [2018-11-23 12:16:35,942 INFO L273 TraceCheckUtils]: 80: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,942 INFO L273 TraceCheckUtils]: 81: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,942 INFO L273 TraceCheckUtils]: 82: Hoare triple {96498#true} assume !(~i~1 > 20); {96498#true} is VALID [2018-11-23 12:16:35,942 INFO L273 TraceCheckUtils]: 83: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,942 INFO L273 TraceCheckUtils]: 84: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,942 INFO L273 TraceCheckUtils]: 85: Hoare triple {96498#true} assume !(~i~1 > 20); {96498#true} is VALID [2018-11-23 12:16:35,942 INFO L273 TraceCheckUtils]: 86: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,942 INFO L273 TraceCheckUtils]: 87: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,942 INFO L273 TraceCheckUtils]: 88: Hoare triple {96498#true} assume !(~i~1 > 20); {96498#true} is VALID [2018-11-23 12:16:35,943 INFO L273 TraceCheckUtils]: 89: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,943 INFO L273 TraceCheckUtils]: 90: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,943 INFO L273 TraceCheckUtils]: 91: Hoare triple {96498#true} assume !(~i~1 > 20); {96498#true} is VALID [2018-11-23 12:16:35,943 INFO L273 TraceCheckUtils]: 92: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,943 INFO L273 TraceCheckUtils]: 93: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,943 INFO L273 TraceCheckUtils]: 94: Hoare triple {96498#true} assume !(~i~1 > 20); {96498#true} is VALID [2018-11-23 12:16:35,943 INFO L273 TraceCheckUtils]: 95: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,943 INFO L273 TraceCheckUtils]: 96: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,943 INFO L273 TraceCheckUtils]: 97: Hoare triple {96498#true} assume !(~i~1 > 20); {96498#true} is VALID [2018-11-23 12:16:35,943 INFO L273 TraceCheckUtils]: 98: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,944 INFO L273 TraceCheckUtils]: 99: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,944 INFO L273 TraceCheckUtils]: 100: Hoare triple {96498#true} assume !(~i~1 > 20); {96498#true} is VALID [2018-11-23 12:16:35,944 INFO L273 TraceCheckUtils]: 101: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,944 INFO L273 TraceCheckUtils]: 102: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,944 INFO L273 TraceCheckUtils]: 103: Hoare triple {96498#true} assume !(~i~1 > 20); {96498#true} is VALID [2018-11-23 12:16:35,944 INFO L273 TraceCheckUtils]: 104: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,944 INFO L273 TraceCheckUtils]: 105: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,944 INFO L273 TraceCheckUtils]: 106: Hoare triple {96498#true} assume !(~i~1 > 20); {96498#true} is VALID [2018-11-23 12:16:35,944 INFO L273 TraceCheckUtils]: 107: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,944 INFO L273 TraceCheckUtils]: 108: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,945 INFO L273 TraceCheckUtils]: 109: Hoare triple {96498#true} assume !(~i~1 > 20); {96498#true} is VALID [2018-11-23 12:16:35,945 INFO L273 TraceCheckUtils]: 110: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,945 INFO L273 TraceCheckUtils]: 111: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,945 INFO L273 TraceCheckUtils]: 112: Hoare triple {96498#true} assume !(~i~1 > 20); {96498#true} is VALID [2018-11-23 12:16:35,945 INFO L273 TraceCheckUtils]: 113: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,945 INFO L273 TraceCheckUtils]: 114: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,945 INFO L273 TraceCheckUtils]: 115: Hoare triple {96498#true} assume !(~i~1 > 20); {96498#true} is VALID [2018-11-23 12:16:35,945 INFO L273 TraceCheckUtils]: 116: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,945 INFO L273 TraceCheckUtils]: 117: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,945 INFO L273 TraceCheckUtils]: 118: Hoare triple {96498#true} assume !(~i~1 > 20); {96498#true} is VALID [2018-11-23 12:16:35,946 INFO L273 TraceCheckUtils]: 119: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,946 INFO L273 TraceCheckUtils]: 120: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,946 INFO L273 TraceCheckUtils]: 121: Hoare triple {96498#true} assume !(~i~1 > 20); {96498#true} is VALID [2018-11-23 12:16:35,946 INFO L273 TraceCheckUtils]: 122: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,946 INFO L273 TraceCheckUtils]: 123: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,946 INFO L273 TraceCheckUtils]: 124: Hoare triple {96498#true} assume !(~i~1 > 20); {96498#true} is VALID [2018-11-23 12:16:35,946 INFO L273 TraceCheckUtils]: 125: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,946 INFO L273 TraceCheckUtils]: 126: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,946 INFO L273 TraceCheckUtils]: 127: Hoare triple {96498#true} assume !(~i~1 > 20); {96498#true} is VALID [2018-11-23 12:16:35,946 INFO L273 TraceCheckUtils]: 128: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,947 INFO L273 TraceCheckUtils]: 129: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,947 INFO L273 TraceCheckUtils]: 130: Hoare triple {96498#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96498#true} is VALID [2018-11-23 12:16:35,947 INFO L273 TraceCheckUtils]: 131: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,947 INFO L273 TraceCheckUtils]: 132: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,947 INFO L273 TraceCheckUtils]: 133: Hoare triple {96498#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96498#true} is VALID [2018-11-23 12:16:35,947 INFO L273 TraceCheckUtils]: 134: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,947 INFO L273 TraceCheckUtils]: 135: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,947 INFO L273 TraceCheckUtils]: 136: Hoare triple {96498#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96498#true} is VALID [2018-11-23 12:16:35,947 INFO L273 TraceCheckUtils]: 137: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,948 INFO L273 TraceCheckUtils]: 138: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,948 INFO L273 TraceCheckUtils]: 139: Hoare triple {96498#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96498#true} is VALID [2018-11-23 12:16:35,948 INFO L273 TraceCheckUtils]: 140: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,948 INFO L273 TraceCheckUtils]: 141: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,948 INFO L273 TraceCheckUtils]: 142: Hoare triple {96498#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96498#true} is VALID [2018-11-23 12:16:35,948 INFO L273 TraceCheckUtils]: 143: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,948 INFO L273 TraceCheckUtils]: 144: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,948 INFO L273 TraceCheckUtils]: 145: Hoare triple {96498#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96498#true} is VALID [2018-11-23 12:16:35,948 INFO L273 TraceCheckUtils]: 146: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,948 INFO L273 TraceCheckUtils]: 147: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,949 INFO L273 TraceCheckUtils]: 148: Hoare triple {96498#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96498#true} is VALID [2018-11-23 12:16:35,949 INFO L273 TraceCheckUtils]: 149: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,949 INFO L273 TraceCheckUtils]: 150: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,949 INFO L273 TraceCheckUtils]: 151: Hoare triple {96498#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96498#true} is VALID [2018-11-23 12:16:35,949 INFO L273 TraceCheckUtils]: 152: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,949 INFO L273 TraceCheckUtils]: 153: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,949 INFO L273 TraceCheckUtils]: 154: Hoare triple {96498#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96498#true} is VALID [2018-11-23 12:16:35,949 INFO L273 TraceCheckUtils]: 155: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,949 INFO L273 TraceCheckUtils]: 156: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,949 INFO L273 TraceCheckUtils]: 157: Hoare triple {96498#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96498#true} is VALID [2018-11-23 12:16:35,950 INFO L273 TraceCheckUtils]: 158: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,950 INFO L273 TraceCheckUtils]: 159: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,950 INFO L273 TraceCheckUtils]: 160: Hoare triple {96498#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96498#true} is VALID [2018-11-23 12:16:35,950 INFO L273 TraceCheckUtils]: 161: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,950 INFO L273 TraceCheckUtils]: 162: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,950 INFO L273 TraceCheckUtils]: 163: Hoare triple {96498#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96498#true} is VALID [2018-11-23 12:16:35,950 INFO L273 TraceCheckUtils]: 164: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,950 INFO L273 TraceCheckUtils]: 165: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,950 INFO L273 TraceCheckUtils]: 166: Hoare triple {96498#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96498#true} is VALID [2018-11-23 12:16:35,950 INFO L273 TraceCheckUtils]: 167: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,951 INFO L273 TraceCheckUtils]: 168: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,951 INFO L273 TraceCheckUtils]: 169: Hoare triple {96498#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96498#true} is VALID [2018-11-23 12:16:35,951 INFO L273 TraceCheckUtils]: 170: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,951 INFO L273 TraceCheckUtils]: 171: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,951 INFO L273 TraceCheckUtils]: 172: Hoare triple {96498#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96498#true} is VALID [2018-11-23 12:16:35,951 INFO L273 TraceCheckUtils]: 173: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,951 INFO L273 TraceCheckUtils]: 174: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,951 INFO L273 TraceCheckUtils]: 175: Hoare triple {96498#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96498#true} is VALID [2018-11-23 12:16:35,951 INFO L273 TraceCheckUtils]: 176: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,951 INFO L273 TraceCheckUtils]: 177: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,952 INFO L273 TraceCheckUtils]: 178: Hoare triple {96498#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96498#true} is VALID [2018-11-23 12:16:35,952 INFO L273 TraceCheckUtils]: 179: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,952 INFO L273 TraceCheckUtils]: 180: Hoare triple {96498#true} assume !(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,952 INFO L273 TraceCheckUtils]: 181: Hoare triple {96498#true} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {96498#true} is VALID [2018-11-23 12:16:35,952 INFO L273 TraceCheckUtils]: 182: Hoare triple {96498#true} assume true; {96498#true} is VALID [2018-11-23 12:16:35,952 INFO L268 TraceCheckUtils]: 183: Hoare quadruple {96498#true} {96498#true} #84#return; {96498#true} is VALID [2018-11-23 12:16:35,952 INFO L273 TraceCheckUtils]: 184: Hoare triple {96498#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {96498#true} is VALID [2018-11-23 12:16:35,952 INFO L256 TraceCheckUtils]: 185: Hoare triple {96498#true} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {96498#true} is VALID [2018-11-23 12:16:35,952 INFO L273 TraceCheckUtils]: 186: Hoare triple {96498#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {96498#true} is VALID [2018-11-23 12:16:35,952 INFO L273 TraceCheckUtils]: 187: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,953 INFO L273 TraceCheckUtils]: 188: Hoare triple {96498#true} assume !(~i~1 > 20); {96498#true} is VALID [2018-11-23 12:16:35,953 INFO L273 TraceCheckUtils]: 189: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,953 INFO L273 TraceCheckUtils]: 190: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,953 INFO L273 TraceCheckUtils]: 191: Hoare triple {96498#true} assume !(~i~1 > 20); {96498#true} is VALID [2018-11-23 12:16:35,953 INFO L273 TraceCheckUtils]: 192: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,953 INFO L273 TraceCheckUtils]: 193: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,953 INFO L273 TraceCheckUtils]: 194: Hoare triple {96498#true} assume !(~i~1 > 20); {96498#true} is VALID [2018-11-23 12:16:35,953 INFO L273 TraceCheckUtils]: 195: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,953 INFO L273 TraceCheckUtils]: 196: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,953 INFO L273 TraceCheckUtils]: 197: Hoare triple {96498#true} assume !(~i~1 > 20); {96498#true} is VALID [2018-11-23 12:16:35,954 INFO L273 TraceCheckUtils]: 198: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,954 INFO L273 TraceCheckUtils]: 199: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,954 INFO L273 TraceCheckUtils]: 200: Hoare triple {96498#true} assume !(~i~1 > 20); {96498#true} is VALID [2018-11-23 12:16:35,954 INFO L273 TraceCheckUtils]: 201: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,954 INFO L273 TraceCheckUtils]: 202: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,954 INFO L273 TraceCheckUtils]: 203: Hoare triple {96498#true} assume !(~i~1 > 20); {96498#true} is VALID [2018-11-23 12:16:35,954 INFO L273 TraceCheckUtils]: 204: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,954 INFO L273 TraceCheckUtils]: 205: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,954 INFO L273 TraceCheckUtils]: 206: Hoare triple {96498#true} assume !(~i~1 > 20); {96498#true} is VALID [2018-11-23 12:16:35,954 INFO L273 TraceCheckUtils]: 207: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,955 INFO L273 TraceCheckUtils]: 208: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,955 INFO L273 TraceCheckUtils]: 209: Hoare triple {96498#true} assume !(~i~1 > 20); {96498#true} is VALID [2018-11-23 12:16:35,955 INFO L273 TraceCheckUtils]: 210: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,955 INFO L273 TraceCheckUtils]: 211: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,955 INFO L273 TraceCheckUtils]: 212: Hoare triple {96498#true} assume !(~i~1 > 20); {96498#true} is VALID [2018-11-23 12:16:35,955 INFO L273 TraceCheckUtils]: 213: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,955 INFO L273 TraceCheckUtils]: 214: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,955 INFO L273 TraceCheckUtils]: 215: Hoare triple {96498#true} assume !(~i~1 > 20); {96498#true} is VALID [2018-11-23 12:16:35,955 INFO L273 TraceCheckUtils]: 216: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,956 INFO L273 TraceCheckUtils]: 217: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,956 INFO L273 TraceCheckUtils]: 218: Hoare triple {96498#true} assume !(~i~1 > 20); {96498#true} is VALID [2018-11-23 12:16:35,956 INFO L273 TraceCheckUtils]: 219: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,956 INFO L273 TraceCheckUtils]: 220: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,956 INFO L273 TraceCheckUtils]: 221: Hoare triple {96498#true} assume !(~i~1 > 20); {96498#true} is VALID [2018-11-23 12:16:35,956 INFO L273 TraceCheckUtils]: 222: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,956 INFO L273 TraceCheckUtils]: 223: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,956 INFO L273 TraceCheckUtils]: 224: Hoare triple {96498#true} assume !(~i~1 > 20); {96498#true} is VALID [2018-11-23 12:16:35,956 INFO L273 TraceCheckUtils]: 225: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,956 INFO L273 TraceCheckUtils]: 226: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,957 INFO L273 TraceCheckUtils]: 227: Hoare triple {96498#true} assume !(~i~1 > 20); {96498#true} is VALID [2018-11-23 12:16:35,957 INFO L273 TraceCheckUtils]: 228: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,957 INFO L273 TraceCheckUtils]: 229: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,957 INFO L273 TraceCheckUtils]: 230: Hoare triple {96498#true} assume !(~i~1 > 20); {96498#true} is VALID [2018-11-23 12:16:35,957 INFO L273 TraceCheckUtils]: 231: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,957 INFO L273 TraceCheckUtils]: 232: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,957 INFO L273 TraceCheckUtils]: 233: Hoare triple {96498#true} assume !(~i~1 > 20); {96498#true} is VALID [2018-11-23 12:16:35,957 INFO L273 TraceCheckUtils]: 234: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,957 INFO L273 TraceCheckUtils]: 235: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,957 INFO L273 TraceCheckUtils]: 236: Hoare triple {96498#true} assume !(~i~1 > 20); {96498#true} is VALID [2018-11-23 12:16:35,958 INFO L273 TraceCheckUtils]: 237: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,958 INFO L273 TraceCheckUtils]: 238: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,958 INFO L273 TraceCheckUtils]: 239: Hoare triple {96498#true} assume !(~i~1 > 20); {96498#true} is VALID [2018-11-23 12:16:35,958 INFO L273 TraceCheckUtils]: 240: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,958 INFO L273 TraceCheckUtils]: 241: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,958 INFO L273 TraceCheckUtils]: 242: Hoare triple {96498#true} assume !(~i~1 > 20); {96498#true} is VALID [2018-11-23 12:16:35,958 INFO L273 TraceCheckUtils]: 243: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,958 INFO L273 TraceCheckUtils]: 244: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,958 INFO L273 TraceCheckUtils]: 245: Hoare triple {96498#true} assume !(~i~1 > 20); {96498#true} is VALID [2018-11-23 12:16:35,958 INFO L273 TraceCheckUtils]: 246: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,959 INFO L273 TraceCheckUtils]: 247: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,959 INFO L273 TraceCheckUtils]: 248: Hoare triple {96498#true} assume !(~i~1 > 20); {96498#true} is VALID [2018-11-23 12:16:35,959 INFO L273 TraceCheckUtils]: 249: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,959 INFO L273 TraceCheckUtils]: 250: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,959 INFO L273 TraceCheckUtils]: 251: Hoare triple {96498#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96498#true} is VALID [2018-11-23 12:16:35,959 INFO L273 TraceCheckUtils]: 252: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,959 INFO L273 TraceCheckUtils]: 253: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,959 INFO L273 TraceCheckUtils]: 254: Hoare triple {96498#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96498#true} is VALID [2018-11-23 12:16:35,959 INFO L273 TraceCheckUtils]: 255: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,959 INFO L273 TraceCheckUtils]: 256: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,960 INFO L273 TraceCheckUtils]: 257: Hoare triple {96498#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96498#true} is VALID [2018-11-23 12:16:35,960 INFO L273 TraceCheckUtils]: 258: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,960 INFO L273 TraceCheckUtils]: 259: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,960 INFO L273 TraceCheckUtils]: 260: Hoare triple {96498#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96498#true} is VALID [2018-11-23 12:16:35,960 INFO L273 TraceCheckUtils]: 261: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,960 INFO L273 TraceCheckUtils]: 262: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,960 INFO L273 TraceCheckUtils]: 263: Hoare triple {96498#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96498#true} is VALID [2018-11-23 12:16:35,960 INFO L273 TraceCheckUtils]: 264: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,960 INFO L273 TraceCheckUtils]: 265: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,960 INFO L273 TraceCheckUtils]: 266: Hoare triple {96498#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96498#true} is VALID [2018-11-23 12:16:35,961 INFO L273 TraceCheckUtils]: 267: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,961 INFO L273 TraceCheckUtils]: 268: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,961 INFO L273 TraceCheckUtils]: 269: Hoare triple {96498#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96498#true} is VALID [2018-11-23 12:16:35,961 INFO L273 TraceCheckUtils]: 270: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,961 INFO L273 TraceCheckUtils]: 271: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,961 INFO L273 TraceCheckUtils]: 272: Hoare triple {96498#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96498#true} is VALID [2018-11-23 12:16:35,961 INFO L273 TraceCheckUtils]: 273: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,961 INFO L273 TraceCheckUtils]: 274: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,961 INFO L273 TraceCheckUtils]: 275: Hoare triple {96498#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96498#true} is VALID [2018-11-23 12:16:35,961 INFO L273 TraceCheckUtils]: 276: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,962 INFO L273 TraceCheckUtils]: 277: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,962 INFO L273 TraceCheckUtils]: 278: Hoare triple {96498#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96498#true} is VALID [2018-11-23 12:16:35,962 INFO L273 TraceCheckUtils]: 279: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,962 INFO L273 TraceCheckUtils]: 280: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,962 INFO L273 TraceCheckUtils]: 281: Hoare triple {96498#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96498#true} is VALID [2018-11-23 12:16:35,962 INFO L273 TraceCheckUtils]: 282: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,962 INFO L273 TraceCheckUtils]: 283: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,962 INFO L273 TraceCheckUtils]: 284: Hoare triple {96498#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96498#true} is VALID [2018-11-23 12:16:35,962 INFO L273 TraceCheckUtils]: 285: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,962 INFO L273 TraceCheckUtils]: 286: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,963 INFO L273 TraceCheckUtils]: 287: Hoare triple {96498#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96498#true} is VALID [2018-11-23 12:16:35,963 INFO L273 TraceCheckUtils]: 288: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,963 INFO L273 TraceCheckUtils]: 289: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,963 INFO L273 TraceCheckUtils]: 290: Hoare triple {96498#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96498#true} is VALID [2018-11-23 12:16:35,963 INFO L273 TraceCheckUtils]: 291: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,963 INFO L273 TraceCheckUtils]: 292: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,963 INFO L273 TraceCheckUtils]: 293: Hoare triple {96498#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96498#true} is VALID [2018-11-23 12:16:35,963 INFO L273 TraceCheckUtils]: 294: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,963 INFO L273 TraceCheckUtils]: 295: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,963 INFO L273 TraceCheckUtils]: 296: Hoare triple {96498#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96498#true} is VALID [2018-11-23 12:16:35,964 INFO L273 TraceCheckUtils]: 297: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,964 INFO L273 TraceCheckUtils]: 298: Hoare triple {96498#true} assume !!(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,964 INFO L273 TraceCheckUtils]: 299: Hoare triple {96498#true} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96498#true} is VALID [2018-11-23 12:16:35,964 INFO L273 TraceCheckUtils]: 300: Hoare triple {96498#true} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96498#true} is VALID [2018-11-23 12:16:35,964 INFO L273 TraceCheckUtils]: 301: Hoare triple {96498#true} assume !(~i~1 < 40); {96498#true} is VALID [2018-11-23 12:16:35,964 INFO L273 TraceCheckUtils]: 302: Hoare triple {96498#true} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {96498#true} is VALID [2018-11-23 12:16:35,964 INFO L273 TraceCheckUtils]: 303: Hoare triple {96498#true} assume true; {96498#true} is VALID [2018-11-23 12:16:35,964 INFO L268 TraceCheckUtils]: 304: Hoare quadruple {96498#true} {96498#true} #86#return; {96498#true} is VALID [2018-11-23 12:16:35,965 INFO L273 TraceCheckUtils]: 305: Hoare triple {96498#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {97418#(<= main_~i~2 0)} is VALID [2018-11-23 12:16:35,965 INFO L273 TraceCheckUtils]: 306: Hoare triple {97418#(<= main_~i~2 0)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {97418#(<= main_~i~2 0)} is VALID [2018-11-23 12:16:35,968 INFO L273 TraceCheckUtils]: 307: Hoare triple {97418#(<= main_~i~2 0)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {97425#(<= main_~i~2 1)} is VALID [2018-11-23 12:16:35,968 INFO L273 TraceCheckUtils]: 308: Hoare triple {97425#(<= main_~i~2 1)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {97425#(<= main_~i~2 1)} is VALID [2018-11-23 12:16:35,970 INFO L273 TraceCheckUtils]: 309: Hoare triple {97425#(<= main_~i~2 1)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {97432#(<= main_~i~2 2)} is VALID [2018-11-23 12:16:35,970 INFO L273 TraceCheckUtils]: 310: Hoare triple {97432#(<= main_~i~2 2)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {97432#(<= main_~i~2 2)} is VALID [2018-11-23 12:16:35,970 INFO L273 TraceCheckUtils]: 311: Hoare triple {97432#(<= main_~i~2 2)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {97439#(<= main_~i~2 3)} is VALID [2018-11-23 12:16:35,971 INFO L273 TraceCheckUtils]: 312: Hoare triple {97439#(<= main_~i~2 3)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {97439#(<= main_~i~2 3)} is VALID [2018-11-23 12:16:35,971 INFO L273 TraceCheckUtils]: 313: Hoare triple {97439#(<= main_~i~2 3)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {97446#(<= main_~i~2 4)} is VALID [2018-11-23 12:16:35,971 INFO L273 TraceCheckUtils]: 314: Hoare triple {97446#(<= main_~i~2 4)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {97446#(<= main_~i~2 4)} is VALID [2018-11-23 12:16:35,972 INFO L273 TraceCheckUtils]: 315: Hoare triple {97446#(<= main_~i~2 4)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {97453#(<= main_~i~2 5)} is VALID [2018-11-23 12:16:35,972 INFO L273 TraceCheckUtils]: 316: Hoare triple {97453#(<= main_~i~2 5)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {97453#(<= main_~i~2 5)} is VALID [2018-11-23 12:16:35,973 INFO L273 TraceCheckUtils]: 317: Hoare triple {97453#(<= main_~i~2 5)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {97460#(<= main_~i~2 6)} is VALID [2018-11-23 12:16:35,973 INFO L273 TraceCheckUtils]: 318: Hoare triple {97460#(<= main_~i~2 6)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {97460#(<= main_~i~2 6)} is VALID [2018-11-23 12:16:35,974 INFO L273 TraceCheckUtils]: 319: Hoare triple {97460#(<= main_~i~2 6)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {97467#(<= main_~i~2 7)} is VALID [2018-11-23 12:16:35,974 INFO L273 TraceCheckUtils]: 320: Hoare triple {97467#(<= main_~i~2 7)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {97467#(<= main_~i~2 7)} is VALID [2018-11-23 12:16:35,975 INFO L273 TraceCheckUtils]: 321: Hoare triple {97467#(<= main_~i~2 7)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {97474#(<= main_~i~2 8)} is VALID [2018-11-23 12:16:35,975 INFO L273 TraceCheckUtils]: 322: Hoare triple {97474#(<= main_~i~2 8)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {97474#(<= main_~i~2 8)} is VALID [2018-11-23 12:16:35,976 INFO L273 TraceCheckUtils]: 323: Hoare triple {97474#(<= main_~i~2 8)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {97481#(<= main_~i~2 9)} is VALID [2018-11-23 12:16:35,977 INFO L273 TraceCheckUtils]: 324: Hoare triple {97481#(<= main_~i~2 9)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {97481#(<= main_~i~2 9)} is VALID [2018-11-23 12:16:35,977 INFO L273 TraceCheckUtils]: 325: Hoare triple {97481#(<= main_~i~2 9)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {97488#(<= main_~i~2 10)} is VALID [2018-11-23 12:16:35,978 INFO L273 TraceCheckUtils]: 326: Hoare triple {97488#(<= main_~i~2 10)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {97488#(<= main_~i~2 10)} is VALID [2018-11-23 12:16:35,979 INFO L273 TraceCheckUtils]: 327: Hoare triple {97488#(<= main_~i~2 10)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {97495#(<= main_~i~2 11)} is VALID [2018-11-23 12:16:35,979 INFO L273 TraceCheckUtils]: 328: Hoare triple {97495#(<= main_~i~2 11)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {97495#(<= main_~i~2 11)} is VALID [2018-11-23 12:16:35,980 INFO L273 TraceCheckUtils]: 329: Hoare triple {97495#(<= main_~i~2 11)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {97502#(<= main_~i~2 12)} is VALID [2018-11-23 12:16:35,980 INFO L273 TraceCheckUtils]: 330: Hoare triple {97502#(<= main_~i~2 12)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {97502#(<= main_~i~2 12)} is VALID [2018-11-23 12:16:35,981 INFO L273 TraceCheckUtils]: 331: Hoare triple {97502#(<= main_~i~2 12)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {97509#(<= main_~i~2 13)} is VALID [2018-11-23 12:16:35,982 INFO L273 TraceCheckUtils]: 332: Hoare triple {97509#(<= main_~i~2 13)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {97509#(<= main_~i~2 13)} is VALID [2018-11-23 12:16:35,982 INFO L273 TraceCheckUtils]: 333: Hoare triple {97509#(<= main_~i~2 13)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {97516#(<= main_~i~2 14)} is VALID [2018-11-23 12:16:35,983 INFO L273 TraceCheckUtils]: 334: Hoare triple {97516#(<= main_~i~2 14)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {97516#(<= main_~i~2 14)} is VALID [2018-11-23 12:16:35,984 INFO L273 TraceCheckUtils]: 335: Hoare triple {97516#(<= main_~i~2 14)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {97523#(<= main_~i~2 15)} is VALID [2018-11-23 12:16:35,984 INFO L273 TraceCheckUtils]: 336: Hoare triple {97523#(<= main_~i~2 15)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {97523#(<= main_~i~2 15)} is VALID [2018-11-23 12:16:35,985 INFO L273 TraceCheckUtils]: 337: Hoare triple {97523#(<= main_~i~2 15)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {97530#(<= main_~i~2 16)} is VALID [2018-11-23 12:16:35,985 INFO L273 TraceCheckUtils]: 338: Hoare triple {97530#(<= main_~i~2 16)} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {97530#(<= main_~i~2 16)} is VALID [2018-11-23 12:16:35,986 INFO L273 TraceCheckUtils]: 339: Hoare triple {97530#(<= main_~i~2 16)} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {97537#(<= main_~i~2 17)} is VALID [2018-11-23 12:16:35,987 INFO L273 TraceCheckUtils]: 340: Hoare triple {97537#(<= main_~i~2 17)} assume !(~i~2 < 39); {96499#false} is VALID [2018-11-23 12:16:35,987 INFO L273 TraceCheckUtils]: 341: Hoare triple {96499#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {96499#false} is VALID [2018-11-23 12:16:35,987 INFO L256 TraceCheckUtils]: 342: Hoare triple {96499#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {96499#false} is VALID [2018-11-23 12:16:35,987 INFO L273 TraceCheckUtils]: 343: Hoare triple {96499#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {96499#false} is VALID [2018-11-23 12:16:35,987 INFO L273 TraceCheckUtils]: 344: Hoare triple {96499#false} assume !!(~i~1 < 40); {96499#false} is VALID [2018-11-23 12:16:35,988 INFO L273 TraceCheckUtils]: 345: Hoare triple {96499#false} assume !(~i~1 > 20); {96499#false} is VALID [2018-11-23 12:16:35,988 INFO L273 TraceCheckUtils]: 346: Hoare triple {96499#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96499#false} is VALID [2018-11-23 12:16:35,988 INFO L273 TraceCheckUtils]: 347: Hoare triple {96499#false} assume !!(~i~1 < 40); {96499#false} is VALID [2018-11-23 12:16:35,988 INFO L273 TraceCheckUtils]: 348: Hoare triple {96499#false} assume !(~i~1 > 20); {96499#false} is VALID [2018-11-23 12:16:35,988 INFO L273 TraceCheckUtils]: 349: Hoare triple {96499#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96499#false} is VALID [2018-11-23 12:16:35,989 INFO L273 TraceCheckUtils]: 350: Hoare triple {96499#false} assume !!(~i~1 < 40); {96499#false} is VALID [2018-11-23 12:16:35,989 INFO L273 TraceCheckUtils]: 351: Hoare triple {96499#false} assume !(~i~1 > 20); {96499#false} is VALID [2018-11-23 12:16:35,989 INFO L273 TraceCheckUtils]: 352: Hoare triple {96499#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96499#false} is VALID [2018-11-23 12:16:35,989 INFO L273 TraceCheckUtils]: 353: Hoare triple {96499#false} assume !!(~i~1 < 40); {96499#false} is VALID [2018-11-23 12:16:35,989 INFO L273 TraceCheckUtils]: 354: Hoare triple {96499#false} assume !(~i~1 > 20); {96499#false} is VALID [2018-11-23 12:16:35,989 INFO L273 TraceCheckUtils]: 355: Hoare triple {96499#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96499#false} is VALID [2018-11-23 12:16:35,990 INFO L273 TraceCheckUtils]: 356: Hoare triple {96499#false} assume !!(~i~1 < 40); {96499#false} is VALID [2018-11-23 12:16:35,990 INFO L273 TraceCheckUtils]: 357: Hoare triple {96499#false} assume !(~i~1 > 20); {96499#false} is VALID [2018-11-23 12:16:35,990 INFO L273 TraceCheckUtils]: 358: Hoare triple {96499#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96499#false} is VALID [2018-11-23 12:16:35,990 INFO L273 TraceCheckUtils]: 359: Hoare triple {96499#false} assume !!(~i~1 < 40); {96499#false} is VALID [2018-11-23 12:16:35,990 INFO L273 TraceCheckUtils]: 360: Hoare triple {96499#false} assume !(~i~1 > 20); {96499#false} is VALID [2018-11-23 12:16:35,990 INFO L273 TraceCheckUtils]: 361: Hoare triple {96499#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96499#false} is VALID [2018-11-23 12:16:35,991 INFO L273 TraceCheckUtils]: 362: Hoare triple {96499#false} assume !!(~i~1 < 40); {96499#false} is VALID [2018-11-23 12:16:35,991 INFO L273 TraceCheckUtils]: 363: Hoare triple {96499#false} assume !(~i~1 > 20); {96499#false} is VALID [2018-11-23 12:16:35,991 INFO L273 TraceCheckUtils]: 364: Hoare triple {96499#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96499#false} is VALID [2018-11-23 12:16:35,991 INFO L273 TraceCheckUtils]: 365: Hoare triple {96499#false} assume !!(~i~1 < 40); {96499#false} is VALID [2018-11-23 12:16:35,991 INFO L273 TraceCheckUtils]: 366: Hoare triple {96499#false} assume !(~i~1 > 20); {96499#false} is VALID [2018-11-23 12:16:35,992 INFO L273 TraceCheckUtils]: 367: Hoare triple {96499#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96499#false} is VALID [2018-11-23 12:16:35,992 INFO L273 TraceCheckUtils]: 368: Hoare triple {96499#false} assume !!(~i~1 < 40); {96499#false} is VALID [2018-11-23 12:16:35,992 INFO L273 TraceCheckUtils]: 369: Hoare triple {96499#false} assume !(~i~1 > 20); {96499#false} is VALID [2018-11-23 12:16:35,992 INFO L273 TraceCheckUtils]: 370: Hoare triple {96499#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96499#false} is VALID [2018-11-23 12:16:35,992 INFO L273 TraceCheckUtils]: 371: Hoare triple {96499#false} assume !!(~i~1 < 40); {96499#false} is VALID [2018-11-23 12:16:35,992 INFO L273 TraceCheckUtils]: 372: Hoare triple {96499#false} assume !(~i~1 > 20); {96499#false} is VALID [2018-11-23 12:16:35,992 INFO L273 TraceCheckUtils]: 373: Hoare triple {96499#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96499#false} is VALID [2018-11-23 12:16:35,992 INFO L273 TraceCheckUtils]: 374: Hoare triple {96499#false} assume !!(~i~1 < 40); {96499#false} is VALID [2018-11-23 12:16:35,992 INFO L273 TraceCheckUtils]: 375: Hoare triple {96499#false} assume !(~i~1 > 20); {96499#false} is VALID [2018-11-23 12:16:35,993 INFO L273 TraceCheckUtils]: 376: Hoare triple {96499#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96499#false} is VALID [2018-11-23 12:16:35,993 INFO L273 TraceCheckUtils]: 377: Hoare triple {96499#false} assume !!(~i~1 < 40); {96499#false} is VALID [2018-11-23 12:16:35,993 INFO L273 TraceCheckUtils]: 378: Hoare triple {96499#false} assume !(~i~1 > 20); {96499#false} is VALID [2018-11-23 12:16:35,993 INFO L273 TraceCheckUtils]: 379: Hoare triple {96499#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96499#false} is VALID [2018-11-23 12:16:35,993 INFO L273 TraceCheckUtils]: 380: Hoare triple {96499#false} assume !!(~i~1 < 40); {96499#false} is VALID [2018-11-23 12:16:35,993 INFO L273 TraceCheckUtils]: 381: Hoare triple {96499#false} assume !(~i~1 > 20); {96499#false} is VALID [2018-11-23 12:16:35,993 INFO L273 TraceCheckUtils]: 382: Hoare triple {96499#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96499#false} is VALID [2018-11-23 12:16:35,993 INFO L273 TraceCheckUtils]: 383: Hoare triple {96499#false} assume !!(~i~1 < 40); {96499#false} is VALID [2018-11-23 12:16:35,993 INFO L273 TraceCheckUtils]: 384: Hoare triple {96499#false} assume !(~i~1 > 20); {96499#false} is VALID [2018-11-23 12:16:35,994 INFO L273 TraceCheckUtils]: 385: Hoare triple {96499#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96499#false} is VALID [2018-11-23 12:16:35,994 INFO L273 TraceCheckUtils]: 386: Hoare triple {96499#false} assume !!(~i~1 < 40); {96499#false} is VALID [2018-11-23 12:16:35,994 INFO L273 TraceCheckUtils]: 387: Hoare triple {96499#false} assume !(~i~1 > 20); {96499#false} is VALID [2018-11-23 12:16:35,994 INFO L273 TraceCheckUtils]: 388: Hoare triple {96499#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96499#false} is VALID [2018-11-23 12:16:35,994 INFO L273 TraceCheckUtils]: 389: Hoare triple {96499#false} assume !!(~i~1 < 40); {96499#false} is VALID [2018-11-23 12:16:35,994 INFO L273 TraceCheckUtils]: 390: Hoare triple {96499#false} assume !(~i~1 > 20); {96499#false} is VALID [2018-11-23 12:16:35,994 INFO L273 TraceCheckUtils]: 391: Hoare triple {96499#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96499#false} is VALID [2018-11-23 12:16:35,994 INFO L273 TraceCheckUtils]: 392: Hoare triple {96499#false} assume !!(~i~1 < 40); {96499#false} is VALID [2018-11-23 12:16:35,994 INFO L273 TraceCheckUtils]: 393: Hoare triple {96499#false} assume !(~i~1 > 20); {96499#false} is VALID [2018-11-23 12:16:35,994 INFO L273 TraceCheckUtils]: 394: Hoare triple {96499#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96499#false} is VALID [2018-11-23 12:16:35,995 INFO L273 TraceCheckUtils]: 395: Hoare triple {96499#false} assume !!(~i~1 < 40); {96499#false} is VALID [2018-11-23 12:16:35,995 INFO L273 TraceCheckUtils]: 396: Hoare triple {96499#false} assume !(~i~1 > 20); {96499#false} is VALID [2018-11-23 12:16:35,995 INFO L273 TraceCheckUtils]: 397: Hoare triple {96499#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96499#false} is VALID [2018-11-23 12:16:35,995 INFO L273 TraceCheckUtils]: 398: Hoare triple {96499#false} assume !!(~i~1 < 40); {96499#false} is VALID [2018-11-23 12:16:35,995 INFO L273 TraceCheckUtils]: 399: Hoare triple {96499#false} assume !(~i~1 > 20); {96499#false} is VALID [2018-11-23 12:16:35,995 INFO L273 TraceCheckUtils]: 400: Hoare triple {96499#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96499#false} is VALID [2018-11-23 12:16:35,995 INFO L273 TraceCheckUtils]: 401: Hoare triple {96499#false} assume !!(~i~1 < 40); {96499#false} is VALID [2018-11-23 12:16:35,995 INFO L273 TraceCheckUtils]: 402: Hoare triple {96499#false} assume !(~i~1 > 20); {96499#false} is VALID [2018-11-23 12:16:35,995 INFO L273 TraceCheckUtils]: 403: Hoare triple {96499#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96499#false} is VALID [2018-11-23 12:16:35,996 INFO L273 TraceCheckUtils]: 404: Hoare triple {96499#false} assume !!(~i~1 < 40); {96499#false} is VALID [2018-11-23 12:16:35,996 INFO L273 TraceCheckUtils]: 405: Hoare triple {96499#false} assume !(~i~1 > 20); {96499#false} is VALID [2018-11-23 12:16:35,996 INFO L273 TraceCheckUtils]: 406: Hoare triple {96499#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96499#false} is VALID [2018-11-23 12:16:35,996 INFO L273 TraceCheckUtils]: 407: Hoare triple {96499#false} assume !!(~i~1 < 40); {96499#false} is VALID [2018-11-23 12:16:35,996 INFO L273 TraceCheckUtils]: 408: Hoare triple {96499#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96499#false} is VALID [2018-11-23 12:16:35,996 INFO L273 TraceCheckUtils]: 409: Hoare triple {96499#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96499#false} is VALID [2018-11-23 12:16:35,996 INFO L273 TraceCheckUtils]: 410: Hoare triple {96499#false} assume !!(~i~1 < 40); {96499#false} is VALID [2018-11-23 12:16:35,996 INFO L273 TraceCheckUtils]: 411: Hoare triple {96499#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96499#false} is VALID [2018-11-23 12:16:35,996 INFO L273 TraceCheckUtils]: 412: Hoare triple {96499#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96499#false} is VALID [2018-11-23 12:16:35,996 INFO L273 TraceCheckUtils]: 413: Hoare triple {96499#false} assume !!(~i~1 < 40); {96499#false} is VALID [2018-11-23 12:16:35,997 INFO L273 TraceCheckUtils]: 414: Hoare triple {96499#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96499#false} is VALID [2018-11-23 12:16:35,997 INFO L273 TraceCheckUtils]: 415: Hoare triple {96499#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96499#false} is VALID [2018-11-23 12:16:35,997 INFO L273 TraceCheckUtils]: 416: Hoare triple {96499#false} assume !!(~i~1 < 40); {96499#false} is VALID [2018-11-23 12:16:35,997 INFO L273 TraceCheckUtils]: 417: Hoare triple {96499#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96499#false} is VALID [2018-11-23 12:16:35,997 INFO L273 TraceCheckUtils]: 418: Hoare triple {96499#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96499#false} is VALID [2018-11-23 12:16:35,997 INFO L273 TraceCheckUtils]: 419: Hoare triple {96499#false} assume !!(~i~1 < 40); {96499#false} is VALID [2018-11-23 12:16:35,997 INFO L273 TraceCheckUtils]: 420: Hoare triple {96499#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96499#false} is VALID [2018-11-23 12:16:35,997 INFO L273 TraceCheckUtils]: 421: Hoare triple {96499#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96499#false} is VALID [2018-11-23 12:16:35,997 INFO L273 TraceCheckUtils]: 422: Hoare triple {96499#false} assume !!(~i~1 < 40); {96499#false} is VALID [2018-11-23 12:16:35,997 INFO L273 TraceCheckUtils]: 423: Hoare triple {96499#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96499#false} is VALID [2018-11-23 12:16:35,998 INFO L273 TraceCheckUtils]: 424: Hoare triple {96499#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96499#false} is VALID [2018-11-23 12:16:35,998 INFO L273 TraceCheckUtils]: 425: Hoare triple {96499#false} assume !!(~i~1 < 40); {96499#false} is VALID [2018-11-23 12:16:35,998 INFO L273 TraceCheckUtils]: 426: Hoare triple {96499#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96499#false} is VALID [2018-11-23 12:16:35,998 INFO L273 TraceCheckUtils]: 427: Hoare triple {96499#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96499#false} is VALID [2018-11-23 12:16:35,998 INFO L273 TraceCheckUtils]: 428: Hoare triple {96499#false} assume !!(~i~1 < 40); {96499#false} is VALID [2018-11-23 12:16:35,998 INFO L273 TraceCheckUtils]: 429: Hoare triple {96499#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96499#false} is VALID [2018-11-23 12:16:35,998 INFO L273 TraceCheckUtils]: 430: Hoare triple {96499#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96499#false} is VALID [2018-11-23 12:16:35,998 INFO L273 TraceCheckUtils]: 431: Hoare triple {96499#false} assume !!(~i~1 < 40); {96499#false} is VALID [2018-11-23 12:16:35,998 INFO L273 TraceCheckUtils]: 432: Hoare triple {96499#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96499#false} is VALID [2018-11-23 12:16:35,998 INFO L273 TraceCheckUtils]: 433: Hoare triple {96499#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96499#false} is VALID [2018-11-23 12:16:35,999 INFO L273 TraceCheckUtils]: 434: Hoare triple {96499#false} assume !!(~i~1 < 40); {96499#false} is VALID [2018-11-23 12:16:35,999 INFO L273 TraceCheckUtils]: 435: Hoare triple {96499#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96499#false} is VALID [2018-11-23 12:16:35,999 INFO L273 TraceCheckUtils]: 436: Hoare triple {96499#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96499#false} is VALID [2018-11-23 12:16:35,999 INFO L273 TraceCheckUtils]: 437: Hoare triple {96499#false} assume !!(~i~1 < 40); {96499#false} is VALID [2018-11-23 12:16:35,999 INFO L273 TraceCheckUtils]: 438: Hoare triple {96499#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96499#false} is VALID [2018-11-23 12:16:35,999 INFO L273 TraceCheckUtils]: 439: Hoare triple {96499#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96499#false} is VALID [2018-11-23 12:16:35,999 INFO L273 TraceCheckUtils]: 440: Hoare triple {96499#false} assume !!(~i~1 < 40); {96499#false} is VALID [2018-11-23 12:16:35,999 INFO L273 TraceCheckUtils]: 441: Hoare triple {96499#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96499#false} is VALID [2018-11-23 12:16:35,999 INFO L273 TraceCheckUtils]: 442: Hoare triple {96499#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96499#false} is VALID [2018-11-23 12:16:36,000 INFO L273 TraceCheckUtils]: 443: Hoare triple {96499#false} assume !!(~i~1 < 40); {96499#false} is VALID [2018-11-23 12:16:36,000 INFO L273 TraceCheckUtils]: 444: Hoare triple {96499#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96499#false} is VALID [2018-11-23 12:16:36,000 INFO L273 TraceCheckUtils]: 445: Hoare triple {96499#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96499#false} is VALID [2018-11-23 12:16:36,000 INFO L273 TraceCheckUtils]: 446: Hoare triple {96499#false} assume !!(~i~1 < 40); {96499#false} is VALID [2018-11-23 12:16:36,000 INFO L273 TraceCheckUtils]: 447: Hoare triple {96499#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96499#false} is VALID [2018-11-23 12:16:36,000 INFO L273 TraceCheckUtils]: 448: Hoare triple {96499#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96499#false} is VALID [2018-11-23 12:16:36,000 INFO L273 TraceCheckUtils]: 449: Hoare triple {96499#false} assume !!(~i~1 < 40); {96499#false} is VALID [2018-11-23 12:16:36,000 INFO L273 TraceCheckUtils]: 450: Hoare triple {96499#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96499#false} is VALID [2018-11-23 12:16:36,000 INFO L273 TraceCheckUtils]: 451: Hoare triple {96499#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96499#false} is VALID [2018-11-23 12:16:36,000 INFO L273 TraceCheckUtils]: 452: Hoare triple {96499#false} assume !!(~i~1 < 40); {96499#false} is VALID [2018-11-23 12:16:36,001 INFO L273 TraceCheckUtils]: 453: Hoare triple {96499#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96499#false} is VALID [2018-11-23 12:16:36,001 INFO L273 TraceCheckUtils]: 454: Hoare triple {96499#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96499#false} is VALID [2018-11-23 12:16:36,001 INFO L273 TraceCheckUtils]: 455: Hoare triple {96499#false} assume !!(~i~1 < 40); {96499#false} is VALID [2018-11-23 12:16:36,001 INFO L273 TraceCheckUtils]: 456: Hoare triple {96499#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {96499#false} is VALID [2018-11-23 12:16:36,001 INFO L273 TraceCheckUtils]: 457: Hoare triple {96499#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {96499#false} is VALID [2018-11-23 12:16:36,001 INFO L273 TraceCheckUtils]: 458: Hoare triple {96499#false} assume !(~i~1 < 40); {96499#false} is VALID [2018-11-23 12:16:36,001 INFO L273 TraceCheckUtils]: 459: Hoare triple {96499#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {96499#false} is VALID [2018-11-23 12:16:36,001 INFO L273 TraceCheckUtils]: 460: Hoare triple {96499#false} assume true; {96499#false} is VALID [2018-11-23 12:16:36,001 INFO L268 TraceCheckUtils]: 461: Hoare quadruple {96499#false} {96499#false} #88#return; {96499#false} is VALID [2018-11-23 12:16:36,001 INFO L273 TraceCheckUtils]: 462: Hoare triple {96499#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {96499#false} is VALID [2018-11-23 12:16:36,002 INFO L273 TraceCheckUtils]: 463: Hoare triple {96499#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {96499#false} is VALID [2018-11-23 12:16:36,002 INFO L273 TraceCheckUtils]: 464: Hoare triple {96499#false} assume !false; {96499#false} is VALID [2018-11-23 12:16:36,075 INFO L134 CoverageAnalysis]: Checked inductivity of 20645 backedges. 8826 proven. 289 refuted. 0 times theorem prover too weak. 11530 trivial. 0 not checked. [2018-11-23 12:16:36,097 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:16:36,097 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [20] total 20 [2018-11-23 12:16:36,097 INFO L78 Accepts]: Start accepts. Automaton has 20 states. Word has length 465 [2018-11-23 12:16:36,098 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:16:36,098 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 20 states. [2018-11-23 12:16:36,183 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 77 edges. 77 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:16:36,183 INFO L459 AbstractCegarLoop]: Interpolant automaton has 20 states [2018-11-23 12:16:36,184 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2018-11-23 12:16:36,184 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=190, Invalid=190, Unknown=0, NotChecked=0, Total=380 [2018-11-23 12:16:36,184 INFO L87 Difference]: Start difference. First operand 228 states and 250 transitions. Second operand 20 states. [2018-11-23 12:16:36,479 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:36,479 INFO L93 Difference]: Finished difference Result 356 states and 397 transitions. [2018-11-23 12:16:36,479 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2018-11-23 12:16:36,479 INFO L78 Accepts]: Start accepts. Automaton has 20 states. Word has length 465 [2018-11-23 12:16:36,479 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:16:36,480 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 20 states. [2018-11-23 12:16:36,480 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 90 transitions. [2018-11-23 12:16:36,480 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 20 states. [2018-11-23 12:16:36,481 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 90 transitions. [2018-11-23 12:16:36,481 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 20 states and 90 transitions. [2018-11-23 12:16:36,562 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-23 12:16:36,567 INFO L225 Difference]: With dead ends: 356 [2018-11-23 12:16:36,567 INFO L226 Difference]: Without dead ends: 231 [2018-11-23 12:16:36,568 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 464 GetRequests, 446 SyntacticMatches, 0 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=190, Invalid=190, Unknown=0, NotChecked=0, Total=380 [2018-11-23 12:16:36,568 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 231 states. [2018-11-23 12:16:36,701 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 231 to 230. [2018-11-23 12:16:36,702 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:16:36,702 INFO L82 GeneralOperation]: Start isEquivalent. First operand 231 states. Second operand 230 states. [2018-11-23 12:16:36,702 INFO L74 IsIncluded]: Start isIncluded. First operand 231 states. Second operand 230 states. [2018-11-23 12:16:36,702 INFO L87 Difference]: Start difference. First operand 231 states. Second operand 230 states. [2018-11-23 12:16:36,707 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:36,707 INFO L93 Difference]: Finished difference Result 231 states and 253 transitions. [2018-11-23 12:16:36,707 INFO L276 IsEmpty]: Start isEmpty. Operand 231 states and 253 transitions. [2018-11-23 12:16:36,708 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:36,708 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:36,708 INFO L74 IsIncluded]: Start isIncluded. First operand 230 states. Second operand 231 states. [2018-11-23 12:16:36,708 INFO L87 Difference]: Start difference. First operand 230 states. Second operand 231 states. [2018-11-23 12:16:36,711 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:36,711 INFO L93 Difference]: Finished difference Result 231 states and 253 transitions. [2018-11-23 12:16:36,712 INFO L276 IsEmpty]: Start isEmpty. Operand 231 states and 253 transitions. [2018-11-23 12:16:36,712 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:36,712 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:36,712 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:16:36,712 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:16:36,712 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 230 states. [2018-11-23 12:16:36,716 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 230 states to 230 states and 252 transitions. [2018-11-23 12:16:36,716 INFO L78 Accepts]: Start accepts. Automaton has 230 states and 252 transitions. Word has length 465 [2018-11-23 12:16:36,716 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:16:36,716 INFO L480 AbstractCegarLoop]: Abstraction has 230 states and 252 transitions. [2018-11-23 12:16:36,716 INFO L481 AbstractCegarLoop]: Interpolant automaton has 20 states. [2018-11-23 12:16:36,716 INFO L276 IsEmpty]: Start isEmpty. Operand 230 states and 252 transitions. [2018-11-23 12:16:36,718 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 468 [2018-11-23 12:16:36,719 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:16:36,719 INFO L402 BasicCegarLoop]: trace histogram [114, 114, 63, 51, 26, 26, 18, 18, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:16:36,719 INFO L423 AbstractCegarLoop]: === Iteration 72 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:16:36,719 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:16:36,719 INFO L82 PathProgramCache]: Analyzing trace with hash -1474890562, now seen corresponding path program 67 times [2018-11-23 12:16:36,719 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:16:36,719 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:16:36,720 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:36,720 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:16:36,720 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:36,733 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:16:36,734 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:16:36,734 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 73 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 73 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:16:36,750 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:16:36,899 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:36,964 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:36,967 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:16:38,000 INFO L256 TraceCheckUtils]: 0: Hoare triple {99191#true} call ULTIMATE.init(); {99191#true} is VALID [2018-11-23 12:16:38,001 INFO L273 TraceCheckUtils]: 1: Hoare triple {99191#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {99191#true} is VALID [2018-11-23 12:16:38,001 INFO L273 TraceCheckUtils]: 2: Hoare triple {99191#true} assume true; {99191#true} is VALID [2018-11-23 12:16:38,001 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {99191#true} {99191#true} #78#return; {99191#true} is VALID [2018-11-23 12:16:38,001 INFO L256 TraceCheckUtils]: 4: Hoare triple {99191#true} call #t~ret12 := main(); {99191#true} is VALID [2018-11-23 12:16:38,001 INFO L273 TraceCheckUtils]: 5: Hoare triple {99191#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {99191#true} is VALID [2018-11-23 12:16:38,002 INFO L256 TraceCheckUtils]: 6: Hoare triple {99191#true} call init_nondet(~#x~0.base, ~#x~0.offset); {99191#true} is VALID [2018-11-23 12:16:38,002 INFO L273 TraceCheckUtils]: 7: Hoare triple {99191#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {99217#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:16:38,003 INFO L273 TraceCheckUtils]: 8: Hoare triple {99217#(<= init_nondet_~i~0 0)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {99217#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:16:38,003 INFO L273 TraceCheckUtils]: 9: Hoare triple {99217#(<= init_nondet_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {99224#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:16:38,004 INFO L273 TraceCheckUtils]: 10: Hoare triple {99224#(<= init_nondet_~i~0 1)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {99224#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:16:38,004 INFO L273 TraceCheckUtils]: 11: Hoare triple {99224#(<= init_nondet_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {99231#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:16:38,004 INFO L273 TraceCheckUtils]: 12: Hoare triple {99231#(<= init_nondet_~i~0 2)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {99231#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:16:38,005 INFO L273 TraceCheckUtils]: 13: Hoare triple {99231#(<= init_nondet_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {99238#(<= init_nondet_~i~0 3)} is VALID [2018-11-23 12:16:38,005 INFO L273 TraceCheckUtils]: 14: Hoare triple {99238#(<= init_nondet_~i~0 3)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {99238#(<= init_nondet_~i~0 3)} is VALID [2018-11-23 12:16:38,006 INFO L273 TraceCheckUtils]: 15: Hoare triple {99238#(<= init_nondet_~i~0 3)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {99245#(<= init_nondet_~i~0 4)} is VALID [2018-11-23 12:16:38,006 INFO L273 TraceCheckUtils]: 16: Hoare triple {99245#(<= init_nondet_~i~0 4)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {99245#(<= init_nondet_~i~0 4)} is VALID [2018-11-23 12:16:38,007 INFO L273 TraceCheckUtils]: 17: Hoare triple {99245#(<= init_nondet_~i~0 4)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {99252#(<= init_nondet_~i~0 5)} is VALID [2018-11-23 12:16:38,008 INFO L273 TraceCheckUtils]: 18: Hoare triple {99252#(<= init_nondet_~i~0 5)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {99252#(<= init_nondet_~i~0 5)} is VALID [2018-11-23 12:16:38,009 INFO L273 TraceCheckUtils]: 19: Hoare triple {99252#(<= init_nondet_~i~0 5)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {99259#(<= init_nondet_~i~0 6)} is VALID [2018-11-23 12:16:38,009 INFO L273 TraceCheckUtils]: 20: Hoare triple {99259#(<= init_nondet_~i~0 6)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {99259#(<= init_nondet_~i~0 6)} is VALID [2018-11-23 12:16:38,010 INFO L273 TraceCheckUtils]: 21: Hoare triple {99259#(<= init_nondet_~i~0 6)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {99266#(<= init_nondet_~i~0 7)} is VALID [2018-11-23 12:16:38,010 INFO L273 TraceCheckUtils]: 22: Hoare triple {99266#(<= init_nondet_~i~0 7)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {99266#(<= init_nondet_~i~0 7)} is VALID [2018-11-23 12:16:38,011 INFO L273 TraceCheckUtils]: 23: Hoare triple {99266#(<= init_nondet_~i~0 7)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {99273#(<= init_nondet_~i~0 8)} is VALID [2018-11-23 12:16:38,012 INFO L273 TraceCheckUtils]: 24: Hoare triple {99273#(<= init_nondet_~i~0 8)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {99273#(<= init_nondet_~i~0 8)} is VALID [2018-11-23 12:16:38,012 INFO L273 TraceCheckUtils]: 25: Hoare triple {99273#(<= init_nondet_~i~0 8)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {99280#(<= init_nondet_~i~0 9)} is VALID [2018-11-23 12:16:38,013 INFO L273 TraceCheckUtils]: 26: Hoare triple {99280#(<= init_nondet_~i~0 9)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {99280#(<= init_nondet_~i~0 9)} is VALID [2018-11-23 12:16:38,013 INFO L273 TraceCheckUtils]: 27: Hoare triple {99280#(<= init_nondet_~i~0 9)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {99287#(<= init_nondet_~i~0 10)} is VALID [2018-11-23 12:16:38,014 INFO L273 TraceCheckUtils]: 28: Hoare triple {99287#(<= init_nondet_~i~0 10)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {99287#(<= init_nondet_~i~0 10)} is VALID [2018-11-23 12:16:38,015 INFO L273 TraceCheckUtils]: 29: Hoare triple {99287#(<= init_nondet_~i~0 10)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {99294#(<= init_nondet_~i~0 11)} is VALID [2018-11-23 12:16:38,015 INFO L273 TraceCheckUtils]: 30: Hoare triple {99294#(<= init_nondet_~i~0 11)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {99294#(<= init_nondet_~i~0 11)} is VALID [2018-11-23 12:16:38,016 INFO L273 TraceCheckUtils]: 31: Hoare triple {99294#(<= init_nondet_~i~0 11)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {99301#(<= init_nondet_~i~0 12)} is VALID [2018-11-23 12:16:38,016 INFO L273 TraceCheckUtils]: 32: Hoare triple {99301#(<= init_nondet_~i~0 12)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {99301#(<= init_nondet_~i~0 12)} is VALID [2018-11-23 12:16:38,017 INFO L273 TraceCheckUtils]: 33: Hoare triple {99301#(<= init_nondet_~i~0 12)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {99308#(<= init_nondet_~i~0 13)} is VALID [2018-11-23 12:16:38,018 INFO L273 TraceCheckUtils]: 34: Hoare triple {99308#(<= init_nondet_~i~0 13)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {99308#(<= init_nondet_~i~0 13)} is VALID [2018-11-23 12:16:38,018 INFO L273 TraceCheckUtils]: 35: Hoare triple {99308#(<= init_nondet_~i~0 13)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {99315#(<= init_nondet_~i~0 14)} is VALID [2018-11-23 12:16:38,019 INFO L273 TraceCheckUtils]: 36: Hoare triple {99315#(<= init_nondet_~i~0 14)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {99315#(<= init_nondet_~i~0 14)} is VALID [2018-11-23 12:16:38,019 INFO L273 TraceCheckUtils]: 37: Hoare triple {99315#(<= init_nondet_~i~0 14)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {99322#(<= init_nondet_~i~0 15)} is VALID [2018-11-23 12:16:38,020 INFO L273 TraceCheckUtils]: 38: Hoare triple {99322#(<= init_nondet_~i~0 15)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {99322#(<= init_nondet_~i~0 15)} is VALID [2018-11-23 12:16:38,021 INFO L273 TraceCheckUtils]: 39: Hoare triple {99322#(<= init_nondet_~i~0 15)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {99329#(<= init_nondet_~i~0 16)} is VALID [2018-11-23 12:16:38,021 INFO L273 TraceCheckUtils]: 40: Hoare triple {99329#(<= init_nondet_~i~0 16)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {99329#(<= init_nondet_~i~0 16)} is VALID [2018-11-23 12:16:38,022 INFO L273 TraceCheckUtils]: 41: Hoare triple {99329#(<= init_nondet_~i~0 16)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {99336#(<= init_nondet_~i~0 17)} is VALID [2018-11-23 12:16:38,022 INFO L273 TraceCheckUtils]: 42: Hoare triple {99336#(<= init_nondet_~i~0 17)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {99336#(<= init_nondet_~i~0 17)} is VALID [2018-11-23 12:16:38,023 INFO L273 TraceCheckUtils]: 43: Hoare triple {99336#(<= init_nondet_~i~0 17)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {99343#(<= init_nondet_~i~0 18)} is VALID [2018-11-23 12:16:38,023 INFO L273 TraceCheckUtils]: 44: Hoare triple {99343#(<= init_nondet_~i~0 18)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {99343#(<= init_nondet_~i~0 18)} is VALID [2018-11-23 12:16:38,024 INFO L273 TraceCheckUtils]: 45: Hoare triple {99343#(<= init_nondet_~i~0 18)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {99350#(<= init_nondet_~i~0 19)} is VALID [2018-11-23 12:16:38,025 INFO L273 TraceCheckUtils]: 46: Hoare triple {99350#(<= init_nondet_~i~0 19)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {99350#(<= init_nondet_~i~0 19)} is VALID [2018-11-23 12:16:38,025 INFO L273 TraceCheckUtils]: 47: Hoare triple {99350#(<= init_nondet_~i~0 19)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {99357#(<= init_nondet_~i~0 20)} is VALID [2018-11-23 12:16:38,026 INFO L273 TraceCheckUtils]: 48: Hoare triple {99357#(<= init_nondet_~i~0 20)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {99357#(<= init_nondet_~i~0 20)} is VALID [2018-11-23 12:16:38,026 INFO L273 TraceCheckUtils]: 49: Hoare triple {99357#(<= init_nondet_~i~0 20)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {99364#(<= init_nondet_~i~0 21)} is VALID [2018-11-23 12:16:38,027 INFO L273 TraceCheckUtils]: 50: Hoare triple {99364#(<= init_nondet_~i~0 21)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {99364#(<= init_nondet_~i~0 21)} is VALID [2018-11-23 12:16:38,028 INFO L273 TraceCheckUtils]: 51: Hoare triple {99364#(<= init_nondet_~i~0 21)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {99371#(<= init_nondet_~i~0 22)} is VALID [2018-11-23 12:16:38,028 INFO L273 TraceCheckUtils]: 52: Hoare triple {99371#(<= init_nondet_~i~0 22)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {99371#(<= init_nondet_~i~0 22)} is VALID [2018-11-23 12:16:38,029 INFO L273 TraceCheckUtils]: 53: Hoare triple {99371#(<= init_nondet_~i~0 22)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {99378#(<= init_nondet_~i~0 23)} is VALID [2018-11-23 12:16:38,029 INFO L273 TraceCheckUtils]: 54: Hoare triple {99378#(<= init_nondet_~i~0 23)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {99378#(<= init_nondet_~i~0 23)} is VALID [2018-11-23 12:16:38,030 INFO L273 TraceCheckUtils]: 55: Hoare triple {99378#(<= init_nondet_~i~0 23)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {99385#(<= init_nondet_~i~0 24)} is VALID [2018-11-23 12:16:38,030 INFO L273 TraceCheckUtils]: 56: Hoare triple {99385#(<= init_nondet_~i~0 24)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {99385#(<= init_nondet_~i~0 24)} is VALID [2018-11-23 12:16:38,031 INFO L273 TraceCheckUtils]: 57: Hoare triple {99385#(<= init_nondet_~i~0 24)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {99392#(<= init_nondet_~i~0 25)} is VALID [2018-11-23 12:16:38,032 INFO L273 TraceCheckUtils]: 58: Hoare triple {99392#(<= init_nondet_~i~0 25)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {99392#(<= init_nondet_~i~0 25)} is VALID [2018-11-23 12:16:38,032 INFO L273 TraceCheckUtils]: 59: Hoare triple {99392#(<= init_nondet_~i~0 25)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {99399#(<= init_nondet_~i~0 26)} is VALID [2018-11-23 12:16:38,033 INFO L273 TraceCheckUtils]: 60: Hoare triple {99399#(<= init_nondet_~i~0 26)} assume !(~i~0 < 40); {99192#false} is VALID [2018-11-23 12:16:38,033 INFO L273 TraceCheckUtils]: 61: Hoare triple {99192#false} assume true; {99192#false} is VALID [2018-11-23 12:16:38,033 INFO L268 TraceCheckUtils]: 62: Hoare quadruple {99192#false} {99191#true} #82#return; {99192#false} is VALID [2018-11-23 12:16:38,034 INFO L273 TraceCheckUtils]: 63: Hoare triple {99192#false} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {99192#false} is VALID [2018-11-23 12:16:38,034 INFO L256 TraceCheckUtils]: 64: Hoare triple {99192#false} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {99192#false} is VALID [2018-11-23 12:16:38,034 INFO L273 TraceCheckUtils]: 65: Hoare triple {99192#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {99192#false} is VALID [2018-11-23 12:16:38,034 INFO L273 TraceCheckUtils]: 66: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,034 INFO L273 TraceCheckUtils]: 67: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,034 INFO L273 TraceCheckUtils]: 68: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,035 INFO L273 TraceCheckUtils]: 69: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,035 INFO L273 TraceCheckUtils]: 70: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,035 INFO L273 TraceCheckUtils]: 71: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,035 INFO L273 TraceCheckUtils]: 72: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,035 INFO L273 TraceCheckUtils]: 73: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,035 INFO L273 TraceCheckUtils]: 74: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,036 INFO L273 TraceCheckUtils]: 75: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,036 INFO L273 TraceCheckUtils]: 76: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,036 INFO L273 TraceCheckUtils]: 77: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,036 INFO L273 TraceCheckUtils]: 78: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,036 INFO L273 TraceCheckUtils]: 79: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,036 INFO L273 TraceCheckUtils]: 80: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,037 INFO L273 TraceCheckUtils]: 81: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,037 INFO L273 TraceCheckUtils]: 82: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,037 INFO L273 TraceCheckUtils]: 83: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,037 INFO L273 TraceCheckUtils]: 84: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,037 INFO L273 TraceCheckUtils]: 85: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,037 INFO L273 TraceCheckUtils]: 86: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,037 INFO L273 TraceCheckUtils]: 87: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,037 INFO L273 TraceCheckUtils]: 88: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,038 INFO L273 TraceCheckUtils]: 89: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,038 INFO L273 TraceCheckUtils]: 90: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,038 INFO L273 TraceCheckUtils]: 91: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,038 INFO L273 TraceCheckUtils]: 92: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,038 INFO L273 TraceCheckUtils]: 93: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,038 INFO L273 TraceCheckUtils]: 94: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,038 INFO L273 TraceCheckUtils]: 95: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,038 INFO L273 TraceCheckUtils]: 96: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,038 INFO L273 TraceCheckUtils]: 97: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,038 INFO L273 TraceCheckUtils]: 98: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,039 INFO L273 TraceCheckUtils]: 99: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,039 INFO L273 TraceCheckUtils]: 100: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,039 INFO L273 TraceCheckUtils]: 101: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,039 INFO L273 TraceCheckUtils]: 102: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,039 INFO L273 TraceCheckUtils]: 103: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,039 INFO L273 TraceCheckUtils]: 104: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,039 INFO L273 TraceCheckUtils]: 105: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,039 INFO L273 TraceCheckUtils]: 106: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,039 INFO L273 TraceCheckUtils]: 107: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,039 INFO L273 TraceCheckUtils]: 108: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,040 INFO L273 TraceCheckUtils]: 109: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,040 INFO L273 TraceCheckUtils]: 110: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,040 INFO L273 TraceCheckUtils]: 111: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,040 INFO L273 TraceCheckUtils]: 112: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,040 INFO L273 TraceCheckUtils]: 113: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,040 INFO L273 TraceCheckUtils]: 114: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,040 INFO L273 TraceCheckUtils]: 115: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,040 INFO L273 TraceCheckUtils]: 116: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,040 INFO L273 TraceCheckUtils]: 117: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,040 INFO L273 TraceCheckUtils]: 118: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,041 INFO L273 TraceCheckUtils]: 119: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,041 INFO L273 TraceCheckUtils]: 120: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,041 INFO L273 TraceCheckUtils]: 121: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,041 INFO L273 TraceCheckUtils]: 122: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,041 INFO L273 TraceCheckUtils]: 123: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,041 INFO L273 TraceCheckUtils]: 124: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,041 INFO L273 TraceCheckUtils]: 125: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,041 INFO L273 TraceCheckUtils]: 126: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,041 INFO L273 TraceCheckUtils]: 127: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,041 INFO L273 TraceCheckUtils]: 128: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,042 INFO L273 TraceCheckUtils]: 129: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,042 INFO L273 TraceCheckUtils]: 130: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,042 INFO L273 TraceCheckUtils]: 131: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,042 INFO L273 TraceCheckUtils]: 132: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,042 INFO L273 TraceCheckUtils]: 133: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,042 INFO L273 TraceCheckUtils]: 134: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,042 INFO L273 TraceCheckUtils]: 135: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,042 INFO L273 TraceCheckUtils]: 136: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,042 INFO L273 TraceCheckUtils]: 137: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,042 INFO L273 TraceCheckUtils]: 138: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,043 INFO L273 TraceCheckUtils]: 139: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,043 INFO L273 TraceCheckUtils]: 140: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,043 INFO L273 TraceCheckUtils]: 141: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,043 INFO L273 TraceCheckUtils]: 142: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,043 INFO L273 TraceCheckUtils]: 143: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,043 INFO L273 TraceCheckUtils]: 144: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,043 INFO L273 TraceCheckUtils]: 145: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,043 INFO L273 TraceCheckUtils]: 146: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,043 INFO L273 TraceCheckUtils]: 147: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,043 INFO L273 TraceCheckUtils]: 148: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,044 INFO L273 TraceCheckUtils]: 149: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,044 INFO L273 TraceCheckUtils]: 150: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,044 INFO L273 TraceCheckUtils]: 151: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,044 INFO L273 TraceCheckUtils]: 152: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,044 INFO L273 TraceCheckUtils]: 153: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,044 INFO L273 TraceCheckUtils]: 154: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,044 INFO L273 TraceCheckUtils]: 155: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,044 INFO L273 TraceCheckUtils]: 156: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,044 INFO L273 TraceCheckUtils]: 157: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,044 INFO L273 TraceCheckUtils]: 158: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,045 INFO L273 TraceCheckUtils]: 159: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,045 INFO L273 TraceCheckUtils]: 160: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,045 INFO L273 TraceCheckUtils]: 161: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,045 INFO L273 TraceCheckUtils]: 162: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,045 INFO L273 TraceCheckUtils]: 163: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,045 INFO L273 TraceCheckUtils]: 164: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,045 INFO L273 TraceCheckUtils]: 165: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,045 INFO L273 TraceCheckUtils]: 166: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,045 INFO L273 TraceCheckUtils]: 167: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,045 INFO L273 TraceCheckUtils]: 168: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,046 INFO L273 TraceCheckUtils]: 169: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,046 INFO L273 TraceCheckUtils]: 170: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,046 INFO L273 TraceCheckUtils]: 171: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,046 INFO L273 TraceCheckUtils]: 172: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,046 INFO L273 TraceCheckUtils]: 173: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,046 INFO L273 TraceCheckUtils]: 174: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,046 INFO L273 TraceCheckUtils]: 175: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,046 INFO L273 TraceCheckUtils]: 176: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,046 INFO L273 TraceCheckUtils]: 177: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,046 INFO L273 TraceCheckUtils]: 178: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,047 INFO L273 TraceCheckUtils]: 179: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,047 INFO L273 TraceCheckUtils]: 180: Hoare triple {99192#false} assume !(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,047 INFO L273 TraceCheckUtils]: 181: Hoare triple {99192#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {99192#false} is VALID [2018-11-23 12:16:38,047 INFO L273 TraceCheckUtils]: 182: Hoare triple {99192#false} assume true; {99192#false} is VALID [2018-11-23 12:16:38,047 INFO L268 TraceCheckUtils]: 183: Hoare quadruple {99192#false} {99192#false} #84#return; {99192#false} is VALID [2018-11-23 12:16:38,047 INFO L273 TraceCheckUtils]: 184: Hoare triple {99192#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {99192#false} is VALID [2018-11-23 12:16:38,047 INFO L256 TraceCheckUtils]: 185: Hoare triple {99192#false} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {99192#false} is VALID [2018-11-23 12:16:38,047 INFO L273 TraceCheckUtils]: 186: Hoare triple {99192#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {99192#false} is VALID [2018-11-23 12:16:38,047 INFO L273 TraceCheckUtils]: 187: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,047 INFO L273 TraceCheckUtils]: 188: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,048 INFO L273 TraceCheckUtils]: 189: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,048 INFO L273 TraceCheckUtils]: 190: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,048 INFO L273 TraceCheckUtils]: 191: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,048 INFO L273 TraceCheckUtils]: 192: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,048 INFO L273 TraceCheckUtils]: 193: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,048 INFO L273 TraceCheckUtils]: 194: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,048 INFO L273 TraceCheckUtils]: 195: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,048 INFO L273 TraceCheckUtils]: 196: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,048 INFO L273 TraceCheckUtils]: 197: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,048 INFO L273 TraceCheckUtils]: 198: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,049 INFO L273 TraceCheckUtils]: 199: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,049 INFO L273 TraceCheckUtils]: 200: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,049 INFO L273 TraceCheckUtils]: 201: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,049 INFO L273 TraceCheckUtils]: 202: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,049 INFO L273 TraceCheckUtils]: 203: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,049 INFO L273 TraceCheckUtils]: 204: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,049 INFO L273 TraceCheckUtils]: 205: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,049 INFO L273 TraceCheckUtils]: 206: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,049 INFO L273 TraceCheckUtils]: 207: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,049 INFO L273 TraceCheckUtils]: 208: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,050 INFO L273 TraceCheckUtils]: 209: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,050 INFO L273 TraceCheckUtils]: 210: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,050 INFO L273 TraceCheckUtils]: 211: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,050 INFO L273 TraceCheckUtils]: 212: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,050 INFO L273 TraceCheckUtils]: 213: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,050 INFO L273 TraceCheckUtils]: 214: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,050 INFO L273 TraceCheckUtils]: 215: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,050 INFO L273 TraceCheckUtils]: 216: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,050 INFO L273 TraceCheckUtils]: 217: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,050 INFO L273 TraceCheckUtils]: 218: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,051 INFO L273 TraceCheckUtils]: 219: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,051 INFO L273 TraceCheckUtils]: 220: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,051 INFO L273 TraceCheckUtils]: 221: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,051 INFO L273 TraceCheckUtils]: 222: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,051 INFO L273 TraceCheckUtils]: 223: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,051 INFO L273 TraceCheckUtils]: 224: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,051 INFO L273 TraceCheckUtils]: 225: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,051 INFO L273 TraceCheckUtils]: 226: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,051 INFO L273 TraceCheckUtils]: 227: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,051 INFO L273 TraceCheckUtils]: 228: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,052 INFO L273 TraceCheckUtils]: 229: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,052 INFO L273 TraceCheckUtils]: 230: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,052 INFO L273 TraceCheckUtils]: 231: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,052 INFO L273 TraceCheckUtils]: 232: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,052 INFO L273 TraceCheckUtils]: 233: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,052 INFO L273 TraceCheckUtils]: 234: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,052 INFO L273 TraceCheckUtils]: 235: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,052 INFO L273 TraceCheckUtils]: 236: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,052 INFO L273 TraceCheckUtils]: 237: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,052 INFO L273 TraceCheckUtils]: 238: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,053 INFO L273 TraceCheckUtils]: 239: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,053 INFO L273 TraceCheckUtils]: 240: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,053 INFO L273 TraceCheckUtils]: 241: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,053 INFO L273 TraceCheckUtils]: 242: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,053 INFO L273 TraceCheckUtils]: 243: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,053 INFO L273 TraceCheckUtils]: 244: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,053 INFO L273 TraceCheckUtils]: 245: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,053 INFO L273 TraceCheckUtils]: 246: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,053 INFO L273 TraceCheckUtils]: 247: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,053 INFO L273 TraceCheckUtils]: 248: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,054 INFO L273 TraceCheckUtils]: 249: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,054 INFO L273 TraceCheckUtils]: 250: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,054 INFO L273 TraceCheckUtils]: 251: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,054 INFO L273 TraceCheckUtils]: 252: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,054 INFO L273 TraceCheckUtils]: 253: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,054 INFO L273 TraceCheckUtils]: 254: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,054 INFO L273 TraceCheckUtils]: 255: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,054 INFO L273 TraceCheckUtils]: 256: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,054 INFO L273 TraceCheckUtils]: 257: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,054 INFO L273 TraceCheckUtils]: 258: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,055 INFO L273 TraceCheckUtils]: 259: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,055 INFO L273 TraceCheckUtils]: 260: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,055 INFO L273 TraceCheckUtils]: 261: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,055 INFO L273 TraceCheckUtils]: 262: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,055 INFO L273 TraceCheckUtils]: 263: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,055 INFO L273 TraceCheckUtils]: 264: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,055 INFO L273 TraceCheckUtils]: 265: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,055 INFO L273 TraceCheckUtils]: 266: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,055 INFO L273 TraceCheckUtils]: 267: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,055 INFO L273 TraceCheckUtils]: 268: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,056 INFO L273 TraceCheckUtils]: 269: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,056 INFO L273 TraceCheckUtils]: 270: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,056 INFO L273 TraceCheckUtils]: 271: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,056 INFO L273 TraceCheckUtils]: 272: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,056 INFO L273 TraceCheckUtils]: 273: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,056 INFO L273 TraceCheckUtils]: 274: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,056 INFO L273 TraceCheckUtils]: 275: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,056 INFO L273 TraceCheckUtils]: 276: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,056 INFO L273 TraceCheckUtils]: 277: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,056 INFO L273 TraceCheckUtils]: 278: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,057 INFO L273 TraceCheckUtils]: 279: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,057 INFO L273 TraceCheckUtils]: 280: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,057 INFO L273 TraceCheckUtils]: 281: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,057 INFO L273 TraceCheckUtils]: 282: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,057 INFO L273 TraceCheckUtils]: 283: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,057 INFO L273 TraceCheckUtils]: 284: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,057 INFO L273 TraceCheckUtils]: 285: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,057 INFO L273 TraceCheckUtils]: 286: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,057 INFO L273 TraceCheckUtils]: 287: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,057 INFO L273 TraceCheckUtils]: 288: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,058 INFO L273 TraceCheckUtils]: 289: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,058 INFO L273 TraceCheckUtils]: 290: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,058 INFO L273 TraceCheckUtils]: 291: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,058 INFO L273 TraceCheckUtils]: 292: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,058 INFO L273 TraceCheckUtils]: 293: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,058 INFO L273 TraceCheckUtils]: 294: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,058 INFO L273 TraceCheckUtils]: 295: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,058 INFO L273 TraceCheckUtils]: 296: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,058 INFO L273 TraceCheckUtils]: 297: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,058 INFO L273 TraceCheckUtils]: 298: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,059 INFO L273 TraceCheckUtils]: 299: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,059 INFO L273 TraceCheckUtils]: 300: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,059 INFO L273 TraceCheckUtils]: 301: Hoare triple {99192#false} assume !(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,059 INFO L273 TraceCheckUtils]: 302: Hoare triple {99192#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {99192#false} is VALID [2018-11-23 12:16:38,059 INFO L273 TraceCheckUtils]: 303: Hoare triple {99192#false} assume true; {99192#false} is VALID [2018-11-23 12:16:38,059 INFO L268 TraceCheckUtils]: 304: Hoare quadruple {99192#false} {99192#false} #86#return; {99192#false} is VALID [2018-11-23 12:16:38,059 INFO L273 TraceCheckUtils]: 305: Hoare triple {99192#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {99192#false} is VALID [2018-11-23 12:16:38,059 INFO L273 TraceCheckUtils]: 306: Hoare triple {99192#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {99192#false} is VALID [2018-11-23 12:16:38,059 INFO L273 TraceCheckUtils]: 307: Hoare triple {99192#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {99192#false} is VALID [2018-11-23 12:16:38,059 INFO L273 TraceCheckUtils]: 308: Hoare triple {99192#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {99192#false} is VALID [2018-11-23 12:16:38,060 INFO L273 TraceCheckUtils]: 309: Hoare triple {99192#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {99192#false} is VALID [2018-11-23 12:16:38,060 INFO L273 TraceCheckUtils]: 310: Hoare triple {99192#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {99192#false} is VALID [2018-11-23 12:16:38,060 INFO L273 TraceCheckUtils]: 311: Hoare triple {99192#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {99192#false} is VALID [2018-11-23 12:16:38,060 INFO L273 TraceCheckUtils]: 312: Hoare triple {99192#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {99192#false} is VALID [2018-11-23 12:16:38,060 INFO L273 TraceCheckUtils]: 313: Hoare triple {99192#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {99192#false} is VALID [2018-11-23 12:16:38,060 INFO L273 TraceCheckUtils]: 314: Hoare triple {99192#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {99192#false} is VALID [2018-11-23 12:16:38,060 INFO L273 TraceCheckUtils]: 315: Hoare triple {99192#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {99192#false} is VALID [2018-11-23 12:16:38,060 INFO L273 TraceCheckUtils]: 316: Hoare triple {99192#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {99192#false} is VALID [2018-11-23 12:16:38,060 INFO L273 TraceCheckUtils]: 317: Hoare triple {99192#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {99192#false} is VALID [2018-11-23 12:16:38,060 INFO L273 TraceCheckUtils]: 318: Hoare triple {99192#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {99192#false} is VALID [2018-11-23 12:16:38,061 INFO L273 TraceCheckUtils]: 319: Hoare triple {99192#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {99192#false} is VALID [2018-11-23 12:16:38,061 INFO L273 TraceCheckUtils]: 320: Hoare triple {99192#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {99192#false} is VALID [2018-11-23 12:16:38,061 INFO L273 TraceCheckUtils]: 321: Hoare triple {99192#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {99192#false} is VALID [2018-11-23 12:16:38,061 INFO L273 TraceCheckUtils]: 322: Hoare triple {99192#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {99192#false} is VALID [2018-11-23 12:16:38,061 INFO L273 TraceCheckUtils]: 323: Hoare triple {99192#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {99192#false} is VALID [2018-11-23 12:16:38,061 INFO L273 TraceCheckUtils]: 324: Hoare triple {99192#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {99192#false} is VALID [2018-11-23 12:16:38,061 INFO L273 TraceCheckUtils]: 325: Hoare triple {99192#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {99192#false} is VALID [2018-11-23 12:16:38,061 INFO L273 TraceCheckUtils]: 326: Hoare triple {99192#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {99192#false} is VALID [2018-11-23 12:16:38,061 INFO L273 TraceCheckUtils]: 327: Hoare triple {99192#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {99192#false} is VALID [2018-11-23 12:16:38,061 INFO L273 TraceCheckUtils]: 328: Hoare triple {99192#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {99192#false} is VALID [2018-11-23 12:16:38,062 INFO L273 TraceCheckUtils]: 329: Hoare triple {99192#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {99192#false} is VALID [2018-11-23 12:16:38,062 INFO L273 TraceCheckUtils]: 330: Hoare triple {99192#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {99192#false} is VALID [2018-11-23 12:16:38,062 INFO L273 TraceCheckUtils]: 331: Hoare triple {99192#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {99192#false} is VALID [2018-11-23 12:16:38,062 INFO L273 TraceCheckUtils]: 332: Hoare triple {99192#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {99192#false} is VALID [2018-11-23 12:16:38,062 INFO L273 TraceCheckUtils]: 333: Hoare triple {99192#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {99192#false} is VALID [2018-11-23 12:16:38,062 INFO L273 TraceCheckUtils]: 334: Hoare triple {99192#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {99192#false} is VALID [2018-11-23 12:16:38,062 INFO L273 TraceCheckUtils]: 335: Hoare triple {99192#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {99192#false} is VALID [2018-11-23 12:16:38,062 INFO L273 TraceCheckUtils]: 336: Hoare triple {99192#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {99192#false} is VALID [2018-11-23 12:16:38,062 INFO L273 TraceCheckUtils]: 337: Hoare triple {99192#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {99192#false} is VALID [2018-11-23 12:16:38,063 INFO L273 TraceCheckUtils]: 338: Hoare triple {99192#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {99192#false} is VALID [2018-11-23 12:16:38,063 INFO L273 TraceCheckUtils]: 339: Hoare triple {99192#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {99192#false} is VALID [2018-11-23 12:16:38,063 INFO L273 TraceCheckUtils]: 340: Hoare triple {99192#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {99192#false} is VALID [2018-11-23 12:16:38,063 INFO L273 TraceCheckUtils]: 341: Hoare triple {99192#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {99192#false} is VALID [2018-11-23 12:16:38,063 INFO L273 TraceCheckUtils]: 342: Hoare triple {99192#false} assume !(~i~2 < 39); {99192#false} is VALID [2018-11-23 12:16:38,063 INFO L273 TraceCheckUtils]: 343: Hoare triple {99192#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {99192#false} is VALID [2018-11-23 12:16:38,063 INFO L256 TraceCheckUtils]: 344: Hoare triple {99192#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {99192#false} is VALID [2018-11-23 12:16:38,063 INFO L273 TraceCheckUtils]: 345: Hoare triple {99192#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {99192#false} is VALID [2018-11-23 12:16:38,063 INFO L273 TraceCheckUtils]: 346: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,063 INFO L273 TraceCheckUtils]: 347: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,064 INFO L273 TraceCheckUtils]: 348: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,064 INFO L273 TraceCheckUtils]: 349: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,064 INFO L273 TraceCheckUtils]: 350: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,064 INFO L273 TraceCheckUtils]: 351: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,064 INFO L273 TraceCheckUtils]: 352: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,064 INFO L273 TraceCheckUtils]: 353: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,064 INFO L273 TraceCheckUtils]: 354: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,064 INFO L273 TraceCheckUtils]: 355: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,064 INFO L273 TraceCheckUtils]: 356: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,064 INFO L273 TraceCheckUtils]: 357: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,065 INFO L273 TraceCheckUtils]: 358: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,065 INFO L273 TraceCheckUtils]: 359: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,065 INFO L273 TraceCheckUtils]: 360: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,065 INFO L273 TraceCheckUtils]: 361: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,065 INFO L273 TraceCheckUtils]: 362: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,065 INFO L273 TraceCheckUtils]: 363: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,065 INFO L273 TraceCheckUtils]: 364: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,065 INFO L273 TraceCheckUtils]: 365: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,065 INFO L273 TraceCheckUtils]: 366: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,065 INFO L273 TraceCheckUtils]: 367: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,066 INFO L273 TraceCheckUtils]: 368: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,066 INFO L273 TraceCheckUtils]: 369: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,066 INFO L273 TraceCheckUtils]: 370: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,066 INFO L273 TraceCheckUtils]: 371: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,066 INFO L273 TraceCheckUtils]: 372: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,066 INFO L273 TraceCheckUtils]: 373: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,066 INFO L273 TraceCheckUtils]: 374: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,066 INFO L273 TraceCheckUtils]: 375: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,066 INFO L273 TraceCheckUtils]: 376: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,066 INFO L273 TraceCheckUtils]: 377: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,067 INFO L273 TraceCheckUtils]: 378: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,067 INFO L273 TraceCheckUtils]: 379: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,067 INFO L273 TraceCheckUtils]: 380: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,067 INFO L273 TraceCheckUtils]: 381: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,067 INFO L273 TraceCheckUtils]: 382: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,067 INFO L273 TraceCheckUtils]: 383: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,067 INFO L273 TraceCheckUtils]: 384: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,067 INFO L273 TraceCheckUtils]: 385: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,067 INFO L273 TraceCheckUtils]: 386: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,068 INFO L273 TraceCheckUtils]: 387: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,068 INFO L273 TraceCheckUtils]: 388: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,068 INFO L273 TraceCheckUtils]: 389: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,068 INFO L273 TraceCheckUtils]: 390: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,068 INFO L273 TraceCheckUtils]: 391: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,068 INFO L273 TraceCheckUtils]: 392: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,068 INFO L273 TraceCheckUtils]: 393: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,068 INFO L273 TraceCheckUtils]: 394: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,068 INFO L273 TraceCheckUtils]: 395: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,068 INFO L273 TraceCheckUtils]: 396: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,069 INFO L273 TraceCheckUtils]: 397: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,069 INFO L273 TraceCheckUtils]: 398: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,069 INFO L273 TraceCheckUtils]: 399: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,069 INFO L273 TraceCheckUtils]: 400: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,069 INFO L273 TraceCheckUtils]: 401: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,069 INFO L273 TraceCheckUtils]: 402: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,069 INFO L273 TraceCheckUtils]: 403: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,069 INFO L273 TraceCheckUtils]: 404: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,069 INFO L273 TraceCheckUtils]: 405: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,069 INFO L273 TraceCheckUtils]: 406: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,070 INFO L273 TraceCheckUtils]: 407: Hoare triple {99192#false} assume !(~i~1 > 20); {99192#false} is VALID [2018-11-23 12:16:38,070 INFO L273 TraceCheckUtils]: 408: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,070 INFO L273 TraceCheckUtils]: 409: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,070 INFO L273 TraceCheckUtils]: 410: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,070 INFO L273 TraceCheckUtils]: 411: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,070 INFO L273 TraceCheckUtils]: 412: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,070 INFO L273 TraceCheckUtils]: 413: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,070 INFO L273 TraceCheckUtils]: 414: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,070 INFO L273 TraceCheckUtils]: 415: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,071 INFO L273 TraceCheckUtils]: 416: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,071 INFO L273 TraceCheckUtils]: 417: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,071 INFO L273 TraceCheckUtils]: 418: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,071 INFO L273 TraceCheckUtils]: 419: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,071 INFO L273 TraceCheckUtils]: 420: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,071 INFO L273 TraceCheckUtils]: 421: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,071 INFO L273 TraceCheckUtils]: 422: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,071 INFO L273 TraceCheckUtils]: 423: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,071 INFO L273 TraceCheckUtils]: 424: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,071 INFO L273 TraceCheckUtils]: 425: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,072 INFO L273 TraceCheckUtils]: 426: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,072 INFO L273 TraceCheckUtils]: 427: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,072 INFO L273 TraceCheckUtils]: 428: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,072 INFO L273 TraceCheckUtils]: 429: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,072 INFO L273 TraceCheckUtils]: 430: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,072 INFO L273 TraceCheckUtils]: 431: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,072 INFO L273 TraceCheckUtils]: 432: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,072 INFO L273 TraceCheckUtils]: 433: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,072 INFO L273 TraceCheckUtils]: 434: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,072 INFO L273 TraceCheckUtils]: 435: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,073 INFO L273 TraceCheckUtils]: 436: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,073 INFO L273 TraceCheckUtils]: 437: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,073 INFO L273 TraceCheckUtils]: 438: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,073 INFO L273 TraceCheckUtils]: 439: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,073 INFO L273 TraceCheckUtils]: 440: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,073 INFO L273 TraceCheckUtils]: 441: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,073 INFO L273 TraceCheckUtils]: 442: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,073 INFO L273 TraceCheckUtils]: 443: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,073 INFO L273 TraceCheckUtils]: 444: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,073 INFO L273 TraceCheckUtils]: 445: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,074 INFO L273 TraceCheckUtils]: 446: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,074 INFO L273 TraceCheckUtils]: 447: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,074 INFO L273 TraceCheckUtils]: 448: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,074 INFO L273 TraceCheckUtils]: 449: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,074 INFO L273 TraceCheckUtils]: 450: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,074 INFO L273 TraceCheckUtils]: 451: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,074 INFO L273 TraceCheckUtils]: 452: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,074 INFO L273 TraceCheckUtils]: 453: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,074 INFO L273 TraceCheckUtils]: 454: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,074 INFO L273 TraceCheckUtils]: 455: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,075 INFO L273 TraceCheckUtils]: 456: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,075 INFO L273 TraceCheckUtils]: 457: Hoare triple {99192#false} assume !!(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,075 INFO L273 TraceCheckUtils]: 458: Hoare triple {99192#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {99192#false} is VALID [2018-11-23 12:16:38,075 INFO L273 TraceCheckUtils]: 459: Hoare triple {99192#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {99192#false} is VALID [2018-11-23 12:16:38,075 INFO L273 TraceCheckUtils]: 460: Hoare triple {99192#false} assume !(~i~1 < 40); {99192#false} is VALID [2018-11-23 12:16:38,075 INFO L273 TraceCheckUtils]: 461: Hoare triple {99192#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {99192#false} is VALID [2018-11-23 12:16:38,075 INFO L273 TraceCheckUtils]: 462: Hoare triple {99192#false} assume true; {99192#false} is VALID [2018-11-23 12:16:38,075 INFO L268 TraceCheckUtils]: 463: Hoare quadruple {99192#false} {99192#false} #88#return; {99192#false} is VALID [2018-11-23 12:16:38,075 INFO L273 TraceCheckUtils]: 464: Hoare triple {99192#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {99192#false} is VALID [2018-11-23 12:16:38,075 INFO L273 TraceCheckUtils]: 465: Hoare triple {99192#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {99192#false} is VALID [2018-11-23 12:16:38,076 INFO L273 TraceCheckUtils]: 466: Hoare triple {99192#false} assume !false; {99192#false} is VALID [2018-11-23 12:16:38,152 INFO L134 CoverageAnalysis]: Checked inductivity of 20680 backedges. 0 proven. 676 refuted. 0 times theorem prover too weak. 20004 trivial. 0 not checked. [2018-11-23 12:16:38,171 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:16:38,171 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [29] total 29 [2018-11-23 12:16:38,171 INFO L78 Accepts]: Start accepts. Automaton has 29 states. Word has length 467 [2018-11-23 12:16:38,172 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:16:38,172 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 29 states. [2018-11-23 12:16:38,264 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 87 edges. 87 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:16:38,265 INFO L459 AbstractCegarLoop]: Interpolant automaton has 29 states [2018-11-23 12:16:38,265 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 29 interpolants. [2018-11-23 12:16:38,265 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=406, Invalid=406, Unknown=0, NotChecked=0, Total=812 [2018-11-23 12:16:38,265 INFO L87 Difference]: Start difference. First operand 230 states and 252 transitions. Second operand 29 states. [2018-11-23 12:16:38,768 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:38,768 INFO L93 Difference]: Finished difference Result 402 states and 446 transitions. [2018-11-23 12:16:38,768 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 29 states. [2018-11-23 12:16:38,768 INFO L78 Accepts]: Start accepts. Automaton has 29 states. Word has length 467 [2018-11-23 12:16:38,768 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:16:38,768 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 29 states. [2018-11-23 12:16:38,769 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 120 transitions. [2018-11-23 12:16:38,769 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 29 states. [2018-11-23 12:16:38,770 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 120 transitions. [2018-11-23 12:16:38,770 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 29 states and 120 transitions. [2018-11-23 12:16:38,913 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 120 edges. 120 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:16:38,917 INFO L225 Difference]: With dead ends: 402 [2018-11-23 12:16:38,917 INFO L226 Difference]: Without dead ends: 233 [2018-11-23 12:16:38,918 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 466 GetRequests, 439 SyntacticMatches, 0 SemanticMatches, 27 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=406, Invalid=406, Unknown=0, NotChecked=0, Total=812 [2018-11-23 12:16:38,918 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 233 states. [2018-11-23 12:16:39,049 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 233 to 232. [2018-11-23 12:16:39,050 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:16:39,050 INFO L82 GeneralOperation]: Start isEquivalent. First operand 233 states. Second operand 232 states. [2018-11-23 12:16:39,050 INFO L74 IsIncluded]: Start isIncluded. First operand 233 states. Second operand 232 states. [2018-11-23 12:16:39,050 INFO L87 Difference]: Start difference. First operand 233 states. Second operand 232 states. [2018-11-23 12:16:39,054 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:39,054 INFO L93 Difference]: Finished difference Result 233 states and 255 transitions. [2018-11-23 12:16:39,054 INFO L276 IsEmpty]: Start isEmpty. Operand 233 states and 255 transitions. [2018-11-23 12:16:39,055 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:39,055 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:39,055 INFO L74 IsIncluded]: Start isIncluded. First operand 232 states. Second operand 233 states. [2018-11-23 12:16:39,055 INFO L87 Difference]: Start difference. First operand 232 states. Second operand 233 states. [2018-11-23 12:16:39,059 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:39,059 INFO L93 Difference]: Finished difference Result 233 states and 255 transitions. [2018-11-23 12:16:39,059 INFO L276 IsEmpty]: Start isEmpty. Operand 233 states and 255 transitions. [2018-11-23 12:16:39,059 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:39,059 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:39,059 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:16:39,059 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:16:39,059 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 232 states. [2018-11-23 12:16:39,063 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 232 states to 232 states and 254 transitions. [2018-11-23 12:16:39,063 INFO L78 Accepts]: Start accepts. Automaton has 232 states and 254 transitions. Word has length 467 [2018-11-23 12:16:39,063 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:16:39,063 INFO L480 AbstractCegarLoop]: Abstraction has 232 states and 254 transitions. [2018-11-23 12:16:39,063 INFO L481 AbstractCegarLoop]: Interpolant automaton has 29 states. [2018-11-23 12:16:39,063 INFO L276 IsEmpty]: Start isEmpty. Operand 232 states and 254 transitions. [2018-11-23 12:16:39,066 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 470 [2018-11-23 12:16:39,066 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:16:39,066 INFO L402 BasicCegarLoop]: trace histogram [114, 114, 63, 51, 27, 27, 18, 18, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:16:39,066 INFO L423 AbstractCegarLoop]: === Iteration 73 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:16:39,066 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:16:39,067 INFO L82 PathProgramCache]: Analyzing trace with hash -330610756, now seen corresponding path program 68 times [2018-11-23 12:16:39,067 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:16:39,067 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:16:39,068 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:39,068 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:16:39,068 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:39,080 ERROR L235 seRefinementStrategy]: Caught known exception: Unsupported non-linear arithmetic [2018-11-23 12:16:39,080 INFO L258 seRefinementStrategy]: Advancing trace checker [2018-11-23 12:16:39,080 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 74 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 74 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2018-11-23 12:16:39,092 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-23 12:16:39,258 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-23 12:16:39,258 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:16:39,327 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:39,331 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:16:40,084 INFO L256 TraceCheckUtils]: 0: Hoare triple {101974#true} call ULTIMATE.init(); {101974#true} is VALID [2018-11-23 12:16:40,084 INFO L273 TraceCheckUtils]: 1: Hoare triple {101974#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {101974#true} is VALID [2018-11-23 12:16:40,085 INFO L273 TraceCheckUtils]: 2: Hoare triple {101974#true} assume true; {101974#true} is VALID [2018-11-23 12:16:40,085 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {101974#true} {101974#true} #78#return; {101974#true} is VALID [2018-11-23 12:16:40,085 INFO L256 TraceCheckUtils]: 4: Hoare triple {101974#true} call #t~ret12 := main(); {101974#true} is VALID [2018-11-23 12:16:40,085 INFO L273 TraceCheckUtils]: 5: Hoare triple {101974#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(160); {101974#true} is VALID [2018-11-23 12:16:40,085 INFO L256 TraceCheckUtils]: 6: Hoare triple {101974#true} call init_nondet(~#x~0.base, ~#x~0.offset); {101974#true} is VALID [2018-11-23 12:16:40,086 INFO L273 TraceCheckUtils]: 7: Hoare triple {101974#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;~i~0 := 0; {102000#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:16:40,086 INFO L273 TraceCheckUtils]: 8: Hoare triple {102000#(<= init_nondet_~i~0 0)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {102000#(<= init_nondet_~i~0 0)} is VALID [2018-11-23 12:16:40,087 INFO L273 TraceCheckUtils]: 9: Hoare triple {102000#(<= init_nondet_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {102007#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:16:40,087 INFO L273 TraceCheckUtils]: 10: Hoare triple {102007#(<= init_nondet_~i~0 1)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {102007#(<= init_nondet_~i~0 1)} is VALID [2018-11-23 12:16:40,087 INFO L273 TraceCheckUtils]: 11: Hoare triple {102007#(<= init_nondet_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {102014#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:16:40,088 INFO L273 TraceCheckUtils]: 12: Hoare triple {102014#(<= init_nondet_~i~0 2)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {102014#(<= init_nondet_~i~0 2)} is VALID [2018-11-23 12:16:40,088 INFO L273 TraceCheckUtils]: 13: Hoare triple {102014#(<= init_nondet_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {102021#(<= init_nondet_~i~0 3)} is VALID [2018-11-23 12:16:40,089 INFO L273 TraceCheckUtils]: 14: Hoare triple {102021#(<= init_nondet_~i~0 3)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {102021#(<= init_nondet_~i~0 3)} is VALID [2018-11-23 12:16:40,089 INFO L273 TraceCheckUtils]: 15: Hoare triple {102021#(<= init_nondet_~i~0 3)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {102028#(<= init_nondet_~i~0 4)} is VALID [2018-11-23 12:16:40,090 INFO L273 TraceCheckUtils]: 16: Hoare triple {102028#(<= init_nondet_~i~0 4)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {102028#(<= init_nondet_~i~0 4)} is VALID [2018-11-23 12:16:40,091 INFO L273 TraceCheckUtils]: 17: Hoare triple {102028#(<= init_nondet_~i~0 4)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {102035#(<= init_nondet_~i~0 5)} is VALID [2018-11-23 12:16:40,091 INFO L273 TraceCheckUtils]: 18: Hoare triple {102035#(<= init_nondet_~i~0 5)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {102035#(<= init_nondet_~i~0 5)} is VALID [2018-11-23 12:16:40,092 INFO L273 TraceCheckUtils]: 19: Hoare triple {102035#(<= init_nondet_~i~0 5)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {102042#(<= init_nondet_~i~0 6)} is VALID [2018-11-23 12:16:40,092 INFO L273 TraceCheckUtils]: 20: Hoare triple {102042#(<= init_nondet_~i~0 6)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {102042#(<= init_nondet_~i~0 6)} is VALID [2018-11-23 12:16:40,093 INFO L273 TraceCheckUtils]: 21: Hoare triple {102042#(<= init_nondet_~i~0 6)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {102049#(<= init_nondet_~i~0 7)} is VALID [2018-11-23 12:16:40,093 INFO L273 TraceCheckUtils]: 22: Hoare triple {102049#(<= init_nondet_~i~0 7)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {102049#(<= init_nondet_~i~0 7)} is VALID [2018-11-23 12:16:40,094 INFO L273 TraceCheckUtils]: 23: Hoare triple {102049#(<= init_nondet_~i~0 7)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {102056#(<= init_nondet_~i~0 8)} is VALID [2018-11-23 12:16:40,095 INFO L273 TraceCheckUtils]: 24: Hoare triple {102056#(<= init_nondet_~i~0 8)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {102056#(<= init_nondet_~i~0 8)} is VALID [2018-11-23 12:16:40,095 INFO L273 TraceCheckUtils]: 25: Hoare triple {102056#(<= init_nondet_~i~0 8)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {102063#(<= init_nondet_~i~0 9)} is VALID [2018-11-23 12:16:40,096 INFO L273 TraceCheckUtils]: 26: Hoare triple {102063#(<= init_nondet_~i~0 9)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {102063#(<= init_nondet_~i~0 9)} is VALID [2018-11-23 12:16:40,096 INFO L273 TraceCheckUtils]: 27: Hoare triple {102063#(<= init_nondet_~i~0 9)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {102070#(<= init_nondet_~i~0 10)} is VALID [2018-11-23 12:16:40,097 INFO L273 TraceCheckUtils]: 28: Hoare triple {102070#(<= init_nondet_~i~0 10)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {102070#(<= init_nondet_~i~0 10)} is VALID [2018-11-23 12:16:40,098 INFO L273 TraceCheckUtils]: 29: Hoare triple {102070#(<= init_nondet_~i~0 10)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {102077#(<= init_nondet_~i~0 11)} is VALID [2018-11-23 12:16:40,098 INFO L273 TraceCheckUtils]: 30: Hoare triple {102077#(<= init_nondet_~i~0 11)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {102077#(<= init_nondet_~i~0 11)} is VALID [2018-11-23 12:16:40,099 INFO L273 TraceCheckUtils]: 31: Hoare triple {102077#(<= init_nondet_~i~0 11)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {102084#(<= init_nondet_~i~0 12)} is VALID [2018-11-23 12:16:40,099 INFO L273 TraceCheckUtils]: 32: Hoare triple {102084#(<= init_nondet_~i~0 12)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {102084#(<= init_nondet_~i~0 12)} is VALID [2018-11-23 12:16:40,100 INFO L273 TraceCheckUtils]: 33: Hoare triple {102084#(<= init_nondet_~i~0 12)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {102091#(<= init_nondet_~i~0 13)} is VALID [2018-11-23 12:16:40,100 INFO L273 TraceCheckUtils]: 34: Hoare triple {102091#(<= init_nondet_~i~0 13)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {102091#(<= init_nondet_~i~0 13)} is VALID [2018-11-23 12:16:40,101 INFO L273 TraceCheckUtils]: 35: Hoare triple {102091#(<= init_nondet_~i~0 13)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {102098#(<= init_nondet_~i~0 14)} is VALID [2018-11-23 12:16:40,101 INFO L273 TraceCheckUtils]: 36: Hoare triple {102098#(<= init_nondet_~i~0 14)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {102098#(<= init_nondet_~i~0 14)} is VALID [2018-11-23 12:16:40,102 INFO L273 TraceCheckUtils]: 37: Hoare triple {102098#(<= init_nondet_~i~0 14)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {102105#(<= init_nondet_~i~0 15)} is VALID [2018-11-23 12:16:40,103 INFO L273 TraceCheckUtils]: 38: Hoare triple {102105#(<= init_nondet_~i~0 15)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {102105#(<= init_nondet_~i~0 15)} is VALID [2018-11-23 12:16:40,103 INFO L273 TraceCheckUtils]: 39: Hoare triple {102105#(<= init_nondet_~i~0 15)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {102112#(<= init_nondet_~i~0 16)} is VALID [2018-11-23 12:16:40,104 INFO L273 TraceCheckUtils]: 40: Hoare triple {102112#(<= init_nondet_~i~0 16)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {102112#(<= init_nondet_~i~0 16)} is VALID [2018-11-23 12:16:40,104 INFO L273 TraceCheckUtils]: 41: Hoare triple {102112#(<= init_nondet_~i~0 16)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {102119#(<= init_nondet_~i~0 17)} is VALID [2018-11-23 12:16:40,105 INFO L273 TraceCheckUtils]: 42: Hoare triple {102119#(<= init_nondet_~i~0 17)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {102119#(<= init_nondet_~i~0 17)} is VALID [2018-11-23 12:16:40,106 INFO L273 TraceCheckUtils]: 43: Hoare triple {102119#(<= init_nondet_~i~0 17)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {102126#(<= init_nondet_~i~0 18)} is VALID [2018-11-23 12:16:40,106 INFO L273 TraceCheckUtils]: 44: Hoare triple {102126#(<= init_nondet_~i~0 18)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {102126#(<= init_nondet_~i~0 18)} is VALID [2018-11-23 12:16:40,107 INFO L273 TraceCheckUtils]: 45: Hoare triple {102126#(<= init_nondet_~i~0 18)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {102133#(<= init_nondet_~i~0 19)} is VALID [2018-11-23 12:16:40,107 INFO L273 TraceCheckUtils]: 46: Hoare triple {102133#(<= init_nondet_~i~0 19)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {102133#(<= init_nondet_~i~0 19)} is VALID [2018-11-23 12:16:40,108 INFO L273 TraceCheckUtils]: 47: Hoare triple {102133#(<= init_nondet_~i~0 19)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {102140#(<= init_nondet_~i~0 20)} is VALID [2018-11-23 12:16:40,108 INFO L273 TraceCheckUtils]: 48: Hoare triple {102140#(<= init_nondet_~i~0 20)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {102140#(<= init_nondet_~i~0 20)} is VALID [2018-11-23 12:16:40,109 INFO L273 TraceCheckUtils]: 49: Hoare triple {102140#(<= init_nondet_~i~0 20)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {102147#(<= init_nondet_~i~0 21)} is VALID [2018-11-23 12:16:40,110 INFO L273 TraceCheckUtils]: 50: Hoare triple {102147#(<= init_nondet_~i~0 21)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {102147#(<= init_nondet_~i~0 21)} is VALID [2018-11-23 12:16:40,110 INFO L273 TraceCheckUtils]: 51: Hoare triple {102147#(<= init_nondet_~i~0 21)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {102154#(<= init_nondet_~i~0 22)} is VALID [2018-11-23 12:16:40,111 INFO L273 TraceCheckUtils]: 52: Hoare triple {102154#(<= init_nondet_~i~0 22)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {102154#(<= init_nondet_~i~0 22)} is VALID [2018-11-23 12:16:40,111 INFO L273 TraceCheckUtils]: 53: Hoare triple {102154#(<= init_nondet_~i~0 22)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {102161#(<= init_nondet_~i~0 23)} is VALID [2018-11-23 12:16:40,112 INFO L273 TraceCheckUtils]: 54: Hoare triple {102161#(<= init_nondet_~i~0 23)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {102161#(<= init_nondet_~i~0 23)} is VALID [2018-11-23 12:16:40,113 INFO L273 TraceCheckUtils]: 55: Hoare triple {102161#(<= init_nondet_~i~0 23)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {102168#(<= init_nondet_~i~0 24)} is VALID [2018-11-23 12:16:40,113 INFO L273 TraceCheckUtils]: 56: Hoare triple {102168#(<= init_nondet_~i~0 24)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {102168#(<= init_nondet_~i~0 24)} is VALID [2018-11-23 12:16:40,114 INFO L273 TraceCheckUtils]: 57: Hoare triple {102168#(<= init_nondet_~i~0 24)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {102175#(<= init_nondet_~i~0 25)} is VALID [2018-11-23 12:16:40,114 INFO L273 TraceCheckUtils]: 58: Hoare triple {102175#(<= init_nondet_~i~0 25)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {102175#(<= init_nondet_~i~0 25)} is VALID [2018-11-23 12:16:40,115 INFO L273 TraceCheckUtils]: 59: Hoare triple {102175#(<= init_nondet_~i~0 25)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {102182#(<= init_nondet_~i~0 26)} is VALID [2018-11-23 12:16:40,116 INFO L273 TraceCheckUtils]: 60: Hoare triple {102182#(<= init_nondet_~i~0 26)} assume !!(~i~0 < 40);assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;call write~int(#t~nondet1, ~x.base, ~x.offset + 4 * ~i~0, 4);havoc #t~nondet1; {102182#(<= init_nondet_~i~0 26)} is VALID [2018-11-23 12:16:40,116 INFO L273 TraceCheckUtils]: 61: Hoare triple {102182#(<= init_nondet_~i~0 26)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {102189#(<= init_nondet_~i~0 27)} is VALID [2018-11-23 12:16:40,117 INFO L273 TraceCheckUtils]: 62: Hoare triple {102189#(<= init_nondet_~i~0 27)} assume !(~i~0 < 40); {101975#false} is VALID [2018-11-23 12:16:40,117 INFO L273 TraceCheckUtils]: 63: Hoare triple {101975#false} assume true; {101975#false} is VALID [2018-11-23 12:16:40,117 INFO L268 TraceCheckUtils]: 64: Hoare quadruple {101975#false} {101974#true} #82#return; {101975#false} is VALID [2018-11-23 12:16:40,117 INFO L273 TraceCheckUtils]: 65: Hoare triple {101975#false} havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {101975#false} is VALID [2018-11-23 12:16:40,118 INFO L256 TraceCheckUtils]: 66: Hoare triple {101975#false} call #t~ret4 := rangesum(~#x~0.base, ~#x~0.offset); {101975#false} is VALID [2018-11-23 12:16:40,118 INFO L273 TraceCheckUtils]: 67: Hoare triple {101975#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {101975#false} is VALID [2018-11-23 12:16:40,118 INFO L273 TraceCheckUtils]: 68: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,118 INFO L273 TraceCheckUtils]: 69: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,118 INFO L273 TraceCheckUtils]: 70: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,118 INFO L273 TraceCheckUtils]: 71: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,119 INFO L273 TraceCheckUtils]: 72: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,119 INFO L273 TraceCheckUtils]: 73: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,119 INFO L273 TraceCheckUtils]: 74: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,119 INFO L273 TraceCheckUtils]: 75: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,119 INFO L273 TraceCheckUtils]: 76: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,119 INFO L273 TraceCheckUtils]: 77: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,120 INFO L273 TraceCheckUtils]: 78: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,120 INFO L273 TraceCheckUtils]: 79: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,120 INFO L273 TraceCheckUtils]: 80: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,120 INFO L273 TraceCheckUtils]: 81: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,120 INFO L273 TraceCheckUtils]: 82: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,120 INFO L273 TraceCheckUtils]: 83: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,121 INFO L273 TraceCheckUtils]: 84: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,121 INFO L273 TraceCheckUtils]: 85: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,121 INFO L273 TraceCheckUtils]: 86: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,121 INFO L273 TraceCheckUtils]: 87: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,121 INFO L273 TraceCheckUtils]: 88: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,121 INFO L273 TraceCheckUtils]: 89: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,122 INFO L273 TraceCheckUtils]: 90: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,122 INFO L273 TraceCheckUtils]: 91: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,122 INFO L273 TraceCheckUtils]: 92: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,122 INFO L273 TraceCheckUtils]: 93: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,122 INFO L273 TraceCheckUtils]: 94: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,122 INFO L273 TraceCheckUtils]: 95: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,122 INFO L273 TraceCheckUtils]: 96: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,122 INFO L273 TraceCheckUtils]: 97: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,123 INFO L273 TraceCheckUtils]: 98: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,123 INFO L273 TraceCheckUtils]: 99: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,123 INFO L273 TraceCheckUtils]: 100: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,123 INFO L273 TraceCheckUtils]: 101: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,123 INFO L273 TraceCheckUtils]: 102: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,123 INFO L273 TraceCheckUtils]: 103: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,123 INFO L273 TraceCheckUtils]: 104: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,123 INFO L273 TraceCheckUtils]: 105: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,123 INFO L273 TraceCheckUtils]: 106: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,123 INFO L273 TraceCheckUtils]: 107: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,124 INFO L273 TraceCheckUtils]: 108: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,124 INFO L273 TraceCheckUtils]: 109: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,124 INFO L273 TraceCheckUtils]: 110: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,124 INFO L273 TraceCheckUtils]: 111: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,124 INFO L273 TraceCheckUtils]: 112: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,124 INFO L273 TraceCheckUtils]: 113: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,124 INFO L273 TraceCheckUtils]: 114: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,124 INFO L273 TraceCheckUtils]: 115: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,124 INFO L273 TraceCheckUtils]: 116: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,124 INFO L273 TraceCheckUtils]: 117: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,125 INFO L273 TraceCheckUtils]: 118: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,125 INFO L273 TraceCheckUtils]: 119: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,125 INFO L273 TraceCheckUtils]: 120: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,125 INFO L273 TraceCheckUtils]: 121: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,125 INFO L273 TraceCheckUtils]: 122: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,125 INFO L273 TraceCheckUtils]: 123: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,125 INFO L273 TraceCheckUtils]: 124: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,125 INFO L273 TraceCheckUtils]: 125: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,125 INFO L273 TraceCheckUtils]: 126: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,125 INFO L273 TraceCheckUtils]: 127: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,126 INFO L273 TraceCheckUtils]: 128: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,126 INFO L273 TraceCheckUtils]: 129: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,126 INFO L273 TraceCheckUtils]: 130: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,126 INFO L273 TraceCheckUtils]: 131: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,126 INFO L273 TraceCheckUtils]: 132: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,126 INFO L273 TraceCheckUtils]: 133: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,126 INFO L273 TraceCheckUtils]: 134: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,126 INFO L273 TraceCheckUtils]: 135: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,126 INFO L273 TraceCheckUtils]: 136: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,126 INFO L273 TraceCheckUtils]: 137: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,127 INFO L273 TraceCheckUtils]: 138: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,127 INFO L273 TraceCheckUtils]: 139: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,127 INFO L273 TraceCheckUtils]: 140: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,127 INFO L273 TraceCheckUtils]: 141: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,127 INFO L273 TraceCheckUtils]: 142: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,127 INFO L273 TraceCheckUtils]: 143: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,127 INFO L273 TraceCheckUtils]: 144: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,127 INFO L273 TraceCheckUtils]: 145: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,127 INFO L273 TraceCheckUtils]: 146: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,127 INFO L273 TraceCheckUtils]: 147: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,128 INFO L273 TraceCheckUtils]: 148: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,128 INFO L273 TraceCheckUtils]: 149: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,128 INFO L273 TraceCheckUtils]: 150: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,128 INFO L273 TraceCheckUtils]: 151: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,128 INFO L273 TraceCheckUtils]: 152: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,128 INFO L273 TraceCheckUtils]: 153: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,128 INFO L273 TraceCheckUtils]: 154: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,128 INFO L273 TraceCheckUtils]: 155: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,128 INFO L273 TraceCheckUtils]: 156: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,128 INFO L273 TraceCheckUtils]: 157: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,129 INFO L273 TraceCheckUtils]: 158: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,129 INFO L273 TraceCheckUtils]: 159: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,129 INFO L273 TraceCheckUtils]: 160: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,129 INFO L273 TraceCheckUtils]: 161: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,129 INFO L273 TraceCheckUtils]: 162: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,129 INFO L273 TraceCheckUtils]: 163: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,129 INFO L273 TraceCheckUtils]: 164: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,129 INFO L273 TraceCheckUtils]: 165: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,129 INFO L273 TraceCheckUtils]: 166: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,129 INFO L273 TraceCheckUtils]: 167: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,130 INFO L273 TraceCheckUtils]: 168: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,130 INFO L273 TraceCheckUtils]: 169: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,130 INFO L273 TraceCheckUtils]: 170: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,130 INFO L273 TraceCheckUtils]: 171: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,130 INFO L273 TraceCheckUtils]: 172: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,130 INFO L273 TraceCheckUtils]: 173: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,130 INFO L273 TraceCheckUtils]: 174: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,130 INFO L273 TraceCheckUtils]: 175: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,130 INFO L273 TraceCheckUtils]: 176: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,130 INFO L273 TraceCheckUtils]: 177: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,131 INFO L273 TraceCheckUtils]: 178: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,131 INFO L273 TraceCheckUtils]: 179: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,131 INFO L273 TraceCheckUtils]: 180: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,131 INFO L273 TraceCheckUtils]: 181: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,131 INFO L273 TraceCheckUtils]: 182: Hoare triple {101975#false} assume !(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,131 INFO L273 TraceCheckUtils]: 183: Hoare triple {101975#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {101975#false} is VALID [2018-11-23 12:16:40,131 INFO L273 TraceCheckUtils]: 184: Hoare triple {101975#false} assume true; {101975#false} is VALID [2018-11-23 12:16:40,131 INFO L268 TraceCheckUtils]: 185: Hoare quadruple {101975#false} {101975#false} #84#return; {101975#false} is VALID [2018-11-23 12:16:40,131 INFO L273 TraceCheckUtils]: 186: Hoare triple {101975#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, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {101975#false} is VALID [2018-11-23 12:16:40,131 INFO L256 TraceCheckUtils]: 187: Hoare triple {101975#false} call #t~ret7 := rangesum(~#x~0.base, ~#x~0.offset); {101975#false} is VALID [2018-11-23 12:16:40,132 INFO L273 TraceCheckUtils]: 188: Hoare triple {101975#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {101975#false} is VALID [2018-11-23 12:16:40,132 INFO L273 TraceCheckUtils]: 189: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,132 INFO L273 TraceCheckUtils]: 190: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,132 INFO L273 TraceCheckUtils]: 191: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,132 INFO L273 TraceCheckUtils]: 192: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,132 INFO L273 TraceCheckUtils]: 193: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,132 INFO L273 TraceCheckUtils]: 194: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,132 INFO L273 TraceCheckUtils]: 195: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,132 INFO L273 TraceCheckUtils]: 196: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,132 INFO L273 TraceCheckUtils]: 197: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,133 INFO L273 TraceCheckUtils]: 198: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,133 INFO L273 TraceCheckUtils]: 199: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,133 INFO L273 TraceCheckUtils]: 200: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,133 INFO L273 TraceCheckUtils]: 201: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,133 INFO L273 TraceCheckUtils]: 202: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,133 INFO L273 TraceCheckUtils]: 203: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,133 INFO L273 TraceCheckUtils]: 204: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,133 INFO L273 TraceCheckUtils]: 205: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,133 INFO L273 TraceCheckUtils]: 206: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,133 INFO L273 TraceCheckUtils]: 207: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,134 INFO L273 TraceCheckUtils]: 208: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,134 INFO L273 TraceCheckUtils]: 209: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,134 INFO L273 TraceCheckUtils]: 210: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,134 INFO L273 TraceCheckUtils]: 211: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,134 INFO L273 TraceCheckUtils]: 212: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,134 INFO L273 TraceCheckUtils]: 213: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,134 INFO L273 TraceCheckUtils]: 214: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,134 INFO L273 TraceCheckUtils]: 215: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,134 INFO L273 TraceCheckUtils]: 216: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,134 INFO L273 TraceCheckUtils]: 217: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,135 INFO L273 TraceCheckUtils]: 218: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,135 INFO L273 TraceCheckUtils]: 219: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,135 INFO L273 TraceCheckUtils]: 220: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,135 INFO L273 TraceCheckUtils]: 221: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,135 INFO L273 TraceCheckUtils]: 222: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,135 INFO L273 TraceCheckUtils]: 223: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,135 INFO L273 TraceCheckUtils]: 224: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,135 INFO L273 TraceCheckUtils]: 225: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,135 INFO L273 TraceCheckUtils]: 226: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,135 INFO L273 TraceCheckUtils]: 227: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,136 INFO L273 TraceCheckUtils]: 228: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,136 INFO L273 TraceCheckUtils]: 229: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,136 INFO L273 TraceCheckUtils]: 230: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,136 INFO L273 TraceCheckUtils]: 231: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,136 INFO L273 TraceCheckUtils]: 232: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,136 INFO L273 TraceCheckUtils]: 233: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,136 INFO L273 TraceCheckUtils]: 234: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,136 INFO L273 TraceCheckUtils]: 235: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,136 INFO L273 TraceCheckUtils]: 236: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,136 INFO L273 TraceCheckUtils]: 237: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,137 INFO L273 TraceCheckUtils]: 238: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,137 INFO L273 TraceCheckUtils]: 239: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,137 INFO L273 TraceCheckUtils]: 240: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,137 INFO L273 TraceCheckUtils]: 241: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,137 INFO L273 TraceCheckUtils]: 242: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,137 INFO L273 TraceCheckUtils]: 243: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,137 INFO L273 TraceCheckUtils]: 244: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,137 INFO L273 TraceCheckUtils]: 245: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,137 INFO L273 TraceCheckUtils]: 246: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,137 INFO L273 TraceCheckUtils]: 247: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,138 INFO L273 TraceCheckUtils]: 248: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,138 INFO L273 TraceCheckUtils]: 249: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,138 INFO L273 TraceCheckUtils]: 250: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,138 INFO L273 TraceCheckUtils]: 251: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,138 INFO L273 TraceCheckUtils]: 252: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,138 INFO L273 TraceCheckUtils]: 253: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,138 INFO L273 TraceCheckUtils]: 254: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,138 INFO L273 TraceCheckUtils]: 255: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,138 INFO L273 TraceCheckUtils]: 256: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,138 INFO L273 TraceCheckUtils]: 257: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,139 INFO L273 TraceCheckUtils]: 258: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,139 INFO L273 TraceCheckUtils]: 259: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,139 INFO L273 TraceCheckUtils]: 260: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,139 INFO L273 TraceCheckUtils]: 261: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,139 INFO L273 TraceCheckUtils]: 262: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,139 INFO L273 TraceCheckUtils]: 263: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,139 INFO L273 TraceCheckUtils]: 264: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,139 INFO L273 TraceCheckUtils]: 265: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,139 INFO L273 TraceCheckUtils]: 266: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,139 INFO L273 TraceCheckUtils]: 267: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,140 INFO L273 TraceCheckUtils]: 268: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,140 INFO L273 TraceCheckUtils]: 269: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,140 INFO L273 TraceCheckUtils]: 270: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,140 INFO L273 TraceCheckUtils]: 271: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,140 INFO L273 TraceCheckUtils]: 272: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,140 INFO L273 TraceCheckUtils]: 273: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,140 INFO L273 TraceCheckUtils]: 274: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,140 INFO L273 TraceCheckUtils]: 275: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,140 INFO L273 TraceCheckUtils]: 276: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,140 INFO L273 TraceCheckUtils]: 277: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,141 INFO L273 TraceCheckUtils]: 278: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,141 INFO L273 TraceCheckUtils]: 279: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,141 INFO L273 TraceCheckUtils]: 280: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,141 INFO L273 TraceCheckUtils]: 281: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,141 INFO L273 TraceCheckUtils]: 282: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,141 INFO L273 TraceCheckUtils]: 283: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,141 INFO L273 TraceCheckUtils]: 284: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,141 INFO L273 TraceCheckUtils]: 285: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,141 INFO L273 TraceCheckUtils]: 286: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,141 INFO L273 TraceCheckUtils]: 287: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,142 INFO L273 TraceCheckUtils]: 288: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,142 INFO L273 TraceCheckUtils]: 289: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,142 INFO L273 TraceCheckUtils]: 290: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,142 INFO L273 TraceCheckUtils]: 291: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,142 INFO L273 TraceCheckUtils]: 292: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,142 INFO L273 TraceCheckUtils]: 293: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,142 INFO L273 TraceCheckUtils]: 294: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,142 INFO L273 TraceCheckUtils]: 295: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,142 INFO L273 TraceCheckUtils]: 296: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,142 INFO L273 TraceCheckUtils]: 297: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,143 INFO L273 TraceCheckUtils]: 298: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,143 INFO L273 TraceCheckUtils]: 299: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,143 INFO L273 TraceCheckUtils]: 300: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,143 INFO L273 TraceCheckUtils]: 301: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,143 INFO L273 TraceCheckUtils]: 302: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,143 INFO L273 TraceCheckUtils]: 303: Hoare triple {101975#false} assume !(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,143 INFO L273 TraceCheckUtils]: 304: Hoare triple {101975#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {101975#false} is VALID [2018-11-23 12:16:40,143 INFO L273 TraceCheckUtils]: 305: Hoare triple {101975#false} assume true; {101975#false} is VALID [2018-11-23 12:16:40,143 INFO L268 TraceCheckUtils]: 306: Hoare quadruple {101975#false} {101975#false} #86#return; {101975#false} is VALID [2018-11-23 12:16:40,143 INFO L273 TraceCheckUtils]: 307: Hoare triple {101975#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, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {101975#false} is VALID [2018-11-23 12:16:40,144 INFO L273 TraceCheckUtils]: 308: Hoare triple {101975#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {101975#false} is VALID [2018-11-23 12:16:40,144 INFO L273 TraceCheckUtils]: 309: Hoare triple {101975#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {101975#false} is VALID [2018-11-23 12:16:40,144 INFO L273 TraceCheckUtils]: 310: Hoare triple {101975#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {101975#false} is VALID [2018-11-23 12:16:40,144 INFO L273 TraceCheckUtils]: 311: Hoare triple {101975#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {101975#false} is VALID [2018-11-23 12:16:40,144 INFO L273 TraceCheckUtils]: 312: Hoare triple {101975#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {101975#false} is VALID [2018-11-23 12:16:40,144 INFO L273 TraceCheckUtils]: 313: Hoare triple {101975#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {101975#false} is VALID [2018-11-23 12:16:40,144 INFO L273 TraceCheckUtils]: 314: Hoare triple {101975#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {101975#false} is VALID [2018-11-23 12:16:40,144 INFO L273 TraceCheckUtils]: 315: Hoare triple {101975#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {101975#false} is VALID [2018-11-23 12:16:40,144 INFO L273 TraceCheckUtils]: 316: Hoare triple {101975#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {101975#false} is VALID [2018-11-23 12:16:40,144 INFO L273 TraceCheckUtils]: 317: Hoare triple {101975#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {101975#false} is VALID [2018-11-23 12:16:40,145 INFO L273 TraceCheckUtils]: 318: Hoare triple {101975#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {101975#false} is VALID [2018-11-23 12:16:40,145 INFO L273 TraceCheckUtils]: 319: Hoare triple {101975#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {101975#false} is VALID [2018-11-23 12:16:40,145 INFO L273 TraceCheckUtils]: 320: Hoare triple {101975#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {101975#false} is VALID [2018-11-23 12:16:40,145 INFO L273 TraceCheckUtils]: 321: Hoare triple {101975#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {101975#false} is VALID [2018-11-23 12:16:40,145 INFO L273 TraceCheckUtils]: 322: Hoare triple {101975#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {101975#false} is VALID [2018-11-23 12:16:40,145 INFO L273 TraceCheckUtils]: 323: Hoare triple {101975#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {101975#false} is VALID [2018-11-23 12:16:40,145 INFO L273 TraceCheckUtils]: 324: Hoare triple {101975#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {101975#false} is VALID [2018-11-23 12:16:40,145 INFO L273 TraceCheckUtils]: 325: Hoare triple {101975#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {101975#false} is VALID [2018-11-23 12:16:40,145 INFO L273 TraceCheckUtils]: 326: Hoare triple {101975#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {101975#false} is VALID [2018-11-23 12:16:40,145 INFO L273 TraceCheckUtils]: 327: Hoare triple {101975#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {101975#false} is VALID [2018-11-23 12:16:40,146 INFO L273 TraceCheckUtils]: 328: Hoare triple {101975#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {101975#false} is VALID [2018-11-23 12:16:40,146 INFO L273 TraceCheckUtils]: 329: Hoare triple {101975#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {101975#false} is VALID [2018-11-23 12:16:40,146 INFO L273 TraceCheckUtils]: 330: Hoare triple {101975#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {101975#false} is VALID [2018-11-23 12:16:40,146 INFO L273 TraceCheckUtils]: 331: Hoare triple {101975#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {101975#false} is VALID [2018-11-23 12:16:40,146 INFO L273 TraceCheckUtils]: 332: Hoare triple {101975#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {101975#false} is VALID [2018-11-23 12:16:40,146 INFO L273 TraceCheckUtils]: 333: Hoare triple {101975#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {101975#false} is VALID [2018-11-23 12:16:40,146 INFO L273 TraceCheckUtils]: 334: Hoare triple {101975#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {101975#false} is VALID [2018-11-23 12:16:40,146 INFO L273 TraceCheckUtils]: 335: Hoare triple {101975#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {101975#false} is VALID [2018-11-23 12:16:40,146 INFO L273 TraceCheckUtils]: 336: Hoare triple {101975#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {101975#false} is VALID [2018-11-23 12:16:40,146 INFO L273 TraceCheckUtils]: 337: Hoare triple {101975#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {101975#false} is VALID [2018-11-23 12:16:40,147 INFO L273 TraceCheckUtils]: 338: Hoare triple {101975#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {101975#false} is VALID [2018-11-23 12:16:40,147 INFO L273 TraceCheckUtils]: 339: Hoare triple {101975#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {101975#false} is VALID [2018-11-23 12:16:40,147 INFO L273 TraceCheckUtils]: 340: Hoare triple {101975#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {101975#false} is VALID [2018-11-23 12:16:40,147 INFO L273 TraceCheckUtils]: 341: Hoare triple {101975#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {101975#false} is VALID [2018-11-23 12:16:40,147 INFO L273 TraceCheckUtils]: 342: Hoare triple {101975#false} assume !!(~i~2 < 39);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem10; {101975#false} is VALID [2018-11-23 12:16:40,147 INFO L273 TraceCheckUtils]: 343: Hoare triple {101975#false} #t~post9 := ~i~2;~i~2 := 1 + #t~post9;havoc #t~post9; {101975#false} is VALID [2018-11-23 12:16:40,147 INFO L273 TraceCheckUtils]: 344: Hoare triple {101975#false} assume !(~i~2 < 39); {101975#false} is VALID [2018-11-23 12:16:40,147 INFO L273 TraceCheckUtils]: 345: Hoare triple {101975#false} call write~int(~temp~0, ~#x~0.base, 156 + ~#x~0.offset, 4); {101975#false} is VALID [2018-11-23 12:16:40,147 INFO L256 TraceCheckUtils]: 346: Hoare triple {101975#false} call #t~ret11 := rangesum(~#x~0.base, ~#x~0.offset); {101975#false} is VALID [2018-11-23 12:16:40,147 INFO L273 TraceCheckUtils]: 347: Hoare triple {101975#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~1;havoc ~ret~0;~ret~0 := 0;~cnt~0 := 0;~i~1 := 0; {101975#false} is VALID [2018-11-23 12:16:40,148 INFO L273 TraceCheckUtils]: 348: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,148 INFO L273 TraceCheckUtils]: 349: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,148 INFO L273 TraceCheckUtils]: 350: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,148 INFO L273 TraceCheckUtils]: 351: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,148 INFO L273 TraceCheckUtils]: 352: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,148 INFO L273 TraceCheckUtils]: 353: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,148 INFO L273 TraceCheckUtils]: 354: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,148 INFO L273 TraceCheckUtils]: 355: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,148 INFO L273 TraceCheckUtils]: 356: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,148 INFO L273 TraceCheckUtils]: 357: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,149 INFO L273 TraceCheckUtils]: 358: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,149 INFO L273 TraceCheckUtils]: 359: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,149 INFO L273 TraceCheckUtils]: 360: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,149 INFO L273 TraceCheckUtils]: 361: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,149 INFO L273 TraceCheckUtils]: 362: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,149 INFO L273 TraceCheckUtils]: 363: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,149 INFO L273 TraceCheckUtils]: 364: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,149 INFO L273 TraceCheckUtils]: 365: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,149 INFO L273 TraceCheckUtils]: 366: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,149 INFO L273 TraceCheckUtils]: 367: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,150 INFO L273 TraceCheckUtils]: 368: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,150 INFO L273 TraceCheckUtils]: 369: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,150 INFO L273 TraceCheckUtils]: 370: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,150 INFO L273 TraceCheckUtils]: 371: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,150 INFO L273 TraceCheckUtils]: 372: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,150 INFO L273 TraceCheckUtils]: 373: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,150 INFO L273 TraceCheckUtils]: 374: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,150 INFO L273 TraceCheckUtils]: 375: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,150 INFO L273 TraceCheckUtils]: 376: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,150 INFO L273 TraceCheckUtils]: 377: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,151 INFO L273 TraceCheckUtils]: 378: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,151 INFO L273 TraceCheckUtils]: 379: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,151 INFO L273 TraceCheckUtils]: 380: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,151 INFO L273 TraceCheckUtils]: 381: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,151 INFO L273 TraceCheckUtils]: 382: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,151 INFO L273 TraceCheckUtils]: 383: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,151 INFO L273 TraceCheckUtils]: 384: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,151 INFO L273 TraceCheckUtils]: 385: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,151 INFO L273 TraceCheckUtils]: 386: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,151 INFO L273 TraceCheckUtils]: 387: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,152 INFO L273 TraceCheckUtils]: 388: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,152 INFO L273 TraceCheckUtils]: 389: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,152 INFO L273 TraceCheckUtils]: 390: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,152 INFO L273 TraceCheckUtils]: 391: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,152 INFO L273 TraceCheckUtils]: 392: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,152 INFO L273 TraceCheckUtils]: 393: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,152 INFO L273 TraceCheckUtils]: 394: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,152 INFO L273 TraceCheckUtils]: 395: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,152 INFO L273 TraceCheckUtils]: 396: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,152 INFO L273 TraceCheckUtils]: 397: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,153 INFO L273 TraceCheckUtils]: 398: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,153 INFO L273 TraceCheckUtils]: 399: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,153 INFO L273 TraceCheckUtils]: 400: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,153 INFO L273 TraceCheckUtils]: 401: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,153 INFO L273 TraceCheckUtils]: 402: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,153 INFO L273 TraceCheckUtils]: 403: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,153 INFO L273 TraceCheckUtils]: 404: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,153 INFO L273 TraceCheckUtils]: 405: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,153 INFO L273 TraceCheckUtils]: 406: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,153 INFO L273 TraceCheckUtils]: 407: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,154 INFO L273 TraceCheckUtils]: 408: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,154 INFO L273 TraceCheckUtils]: 409: Hoare triple {101975#false} assume !(~i~1 > 20); {101975#false} is VALID [2018-11-23 12:16:40,154 INFO L273 TraceCheckUtils]: 410: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,154 INFO L273 TraceCheckUtils]: 411: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,154 INFO L273 TraceCheckUtils]: 412: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,154 INFO L273 TraceCheckUtils]: 413: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,154 INFO L273 TraceCheckUtils]: 414: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,154 INFO L273 TraceCheckUtils]: 415: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,154 INFO L273 TraceCheckUtils]: 416: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,154 INFO L273 TraceCheckUtils]: 417: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,155 INFO L273 TraceCheckUtils]: 418: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,155 INFO L273 TraceCheckUtils]: 419: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,155 INFO L273 TraceCheckUtils]: 420: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,155 INFO L273 TraceCheckUtils]: 421: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,155 INFO L273 TraceCheckUtils]: 422: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,155 INFO L273 TraceCheckUtils]: 423: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,155 INFO L273 TraceCheckUtils]: 424: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,155 INFO L273 TraceCheckUtils]: 425: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,155 INFO L273 TraceCheckUtils]: 426: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,155 INFO L273 TraceCheckUtils]: 427: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,156 INFO L273 TraceCheckUtils]: 428: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,156 INFO L273 TraceCheckUtils]: 429: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,156 INFO L273 TraceCheckUtils]: 430: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,156 INFO L273 TraceCheckUtils]: 431: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,156 INFO L273 TraceCheckUtils]: 432: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,156 INFO L273 TraceCheckUtils]: 433: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,156 INFO L273 TraceCheckUtils]: 434: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,156 INFO L273 TraceCheckUtils]: 435: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,156 INFO L273 TraceCheckUtils]: 436: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,156 INFO L273 TraceCheckUtils]: 437: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,157 INFO L273 TraceCheckUtils]: 438: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,157 INFO L273 TraceCheckUtils]: 439: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,157 INFO L273 TraceCheckUtils]: 440: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,157 INFO L273 TraceCheckUtils]: 441: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,157 INFO L273 TraceCheckUtils]: 442: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,157 INFO L273 TraceCheckUtils]: 443: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,157 INFO L273 TraceCheckUtils]: 444: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,157 INFO L273 TraceCheckUtils]: 445: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,157 INFO L273 TraceCheckUtils]: 446: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,157 INFO L273 TraceCheckUtils]: 447: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,158 INFO L273 TraceCheckUtils]: 448: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,158 INFO L273 TraceCheckUtils]: 449: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,158 INFO L273 TraceCheckUtils]: 450: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,158 INFO L273 TraceCheckUtils]: 451: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,158 INFO L273 TraceCheckUtils]: 452: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,158 INFO L273 TraceCheckUtils]: 453: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,158 INFO L273 TraceCheckUtils]: 454: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,158 INFO L273 TraceCheckUtils]: 455: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,158 INFO L273 TraceCheckUtils]: 456: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,158 INFO L273 TraceCheckUtils]: 457: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,159 INFO L273 TraceCheckUtils]: 458: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,159 INFO L273 TraceCheckUtils]: 459: Hoare triple {101975#false} assume !!(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,159 INFO L273 TraceCheckUtils]: 460: Hoare triple {101975#false} assume ~i~1 > 20;call #t~mem3 := read~int(~x.base, ~x.offset + 4 * ~i~1, 4);~ret~0 := ~ret~0 + #t~mem3;havoc #t~mem3;~cnt~0 := 1 + ~cnt~0; {101975#false} is VALID [2018-11-23 12:16:40,159 INFO L273 TraceCheckUtils]: 461: Hoare triple {101975#false} #t~post2 := ~i~1;~i~1 := 1 + #t~post2;havoc #t~post2; {101975#false} is VALID [2018-11-23 12:16:40,159 INFO L273 TraceCheckUtils]: 462: Hoare triple {101975#false} assume !(~i~1 < 40); {101975#false} is VALID [2018-11-23 12:16:40,159 INFO L273 TraceCheckUtils]: 463: Hoare triple {101975#false} assume 0 != ~cnt~0;#res := (if (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 else (if ~ret~0 < 0 && 0 != ~ret~0 % ~cnt~0 then (if ~cnt~0 < 0 then ~ret~0 / ~cnt~0 - 1 else 1 + ~ret~0 / ~cnt~0) else ~ret~0 / ~cnt~0) % 4294967296 - 4294967296); {101975#false} is VALID [2018-11-23 12:16:40,159 INFO L273 TraceCheckUtils]: 464: Hoare triple {101975#false} assume true; {101975#false} is VALID [2018-11-23 12:16:40,159 INFO L268 TraceCheckUtils]: 465: Hoare quadruple {101975#false} {101975#false} #88#return; {101975#false} is VALID [2018-11-23 12:16:40,159 INFO L273 TraceCheckUtils]: 466: Hoare triple {101975#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {101975#false} is VALID [2018-11-23 12:16:40,159 INFO L273 TraceCheckUtils]: 467: Hoare triple {101975#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {101975#false} is VALID [2018-11-23 12:16:40,160 INFO L273 TraceCheckUtils]: 468: Hoare triple {101975#false} assume !false; {101975#false} is VALID [2018-11-23 12:16:40,260 INFO L134 CoverageAnalysis]: Checked inductivity of 20733 backedges. 0 proven. 729 refuted. 0 times theorem prover too weak. 20004 trivial. 0 not checked. [2018-11-23 12:16:40,280 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:16:40,280 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [30] total 30 [2018-11-23 12:16:40,280 INFO L78 Accepts]: Start accepts. Automaton has 30 states. Word has length 469 [2018-11-23 12:16:40,281 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:16:40,281 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 30 states. [2018-11-23 12:16:40,384 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 89 edges. 89 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:16:40,384 INFO L459 AbstractCegarLoop]: Interpolant automaton has 30 states [2018-11-23 12:16:40,384 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 30 interpolants. [2018-11-23 12:16:40,385 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=435, Invalid=435, Unknown=0, NotChecked=0, Total=870 [2018-11-23 12:16:40,385 INFO L87 Difference]: Start difference. First operand 232 states and 254 transitions. Second operand 30 states.